diff options
author | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2010-01-08 20:22:55 +0000 |
---|---|---|
committer | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2010-01-08 20:22:55 +0000 |
commit | c64ff4c0d637d70a63a0e9ef97f76a2484487b9d (patch) | |
tree | 9b1794b4a74524c39910d8f4b24bf98e81c0d194 /target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx.h | |
parent | b81c8b90025be0d134ce1710b30e00d017a3e1d6 (diff) |
ar71xx: add NAPI statistics to the ag71xx driver
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19079 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.h | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx.h b/target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx.h index ef135efd1f..139fc9455a 100644 --- a/target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx.h +++ b/target/linux/ar71xx/files/drivers/net/ag71xx/ag71xx.h @@ -119,10 +119,26 @@ struct ag71xx_int_stats { unsigned long total; }; +struct ag71xx_napi_stats { + unsigned long napi_calls; + unsigned long rx_count; + unsigned long rx_packets; + unsigned long rx_packets_max; + unsigned long tx_count; + unsigned long tx_packets; + unsigned long tx_packets_max; + + unsigned long rx[AG71XX_NAPI_WEIGHT + 1]; + unsigned long tx[AG71XX_NAPI_WEIGHT + 1]; +}; + struct ag71xx_debug { struct dentry *debugfs_dir; struct dentry *debugfs_int_stats; + struct dentry *debugfs_napi_stats; + struct ag71xx_int_stats int_stats; + struct ag71xx_napi_stats napi_stats; }; struct ag71xx { @@ -476,13 +492,16 @@ 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); +void ag71xx_debugfs_update_napi_stats(struct ag71xx *ag, int rx, int tx); #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_debugfs_update_int_stats(struct ag71xx *ag, - u32 status) {} + u32 status) {} +static inline void ag71xx_debugfs_update_napi_stats(struct ag71xx *ag, + int rx, int tx) {} #endif /* CONFIG_AG71XX_DEBUG_FS */ #endif /* _AG71XX_H */ |