aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx.h
diff options
context:
space:
mode:
authorGabor Juhos <juhosg@openwrt.org>2010-01-06 15:24:01 +0000
committerGabor Juhos <juhosg@openwrt.org>2010-01-06 15:24:01 +0000
commit53568d6359d653db4e16adb194c7e73351bd6148 (patch)
tree45dcca91b51bc81e5069560b97e9e1aaab66f171 /target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx.h
parentf351cb2d148848229714717ef54c25f9ade05440 (diff)
downloadmaster-187ad058-53568d6359d653db4e16adb194c7e73351bd6148.tar.gz
master-187ad058-53568d6359d653db4e16adb194c7e73351bd6148.tar.bz2
master-187ad058-53568d6359d653db4e16adb194c7e73351bd6148.zip
ar71xx: add detailed interrupt statistics for the ag71xx driver
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19054 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx.h')
-rw-r--r--target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx.h b/target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx.h
index b2f710edec..90475b6cb6 100644
--- a/target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx.h
+++ b/target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx.h
@@ -109,8 +109,20 @@ struct ag71xx_mdio {
struct ag71xx_mdio_platform_data *pdata;
};
+struct ag71xx_int_stats {
+ unsigned long rx_pr;
+ unsigned long rx_be;
+ unsigned long rx_of;
+ unsigned long tx_ps;
+ unsigned long tx_be;
+ unsigned long tx_ur;
+ unsigned long total;
+};
+
struct ag71xx_debug {
struct dentry *debugfs_dir;
+ struct dentry *debugfs_int_stats;
+ struct ag71xx_int_stats int_stats;
};
struct ag71xx {
@@ -463,11 +475,14 @@ int ag71xx_debugfs_root_init(void);
void ag71xx_debugfs_root_exit(void);
int ag71xx_debugfs_init(struct ag71xx *ag);
void ag71xx_debugfs_exit(struct ag71xx *ag);
+void ag71xx_debugfs_update_int_stats(struct ag71xx *ag, u32 status);
#else
static inline int ag71xx_debugfs_root_init(void) { return 0; }
static inline void ag71xx_debugfs_root_exit(void) {}
static inline int ag71xx_debugfs_init(struct ag71xx *ag) { return 0; }
static inline void ag71xx_debugfs_exit(struct ag71xx *ag) {}
+static inline void ag71xx_debug_update_int_stats(struct ag71xx *ag,
+ u32 status) {}
#endif /* CONFIG_AG71XX_DEBUG_FS */
#endif /* _AG71XX_H */