summaryrefslogtreecommitdiffstats
path: root/target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx.h
diff options
context:
space:
mode:
authorjuhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73>2010-01-06 15:24:01 +0000
committerjuhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73>2010-01-06 15:24:01 +0000
commit0c1d7bcfa59e45f331cf24079418d5ded805de61 (patch)
tree45dcca91b51bc81e5069560b97e9e1aaab66f171 /target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx.h
parent92f9b431762adc0429fc61d1b79453ed0eb611b1 (diff)
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 b2f710ede..90475b6cb 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 */