summaryrefslogtreecommitdiffstats
path: root/target/linux/ramips/files/drivers/net/ethernet/ramips/ramips_eth.h
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/ramips/files/drivers/net/ethernet/ramips/ramips_eth.h')
-rw-r--r--target/linux/ramips/files/drivers/net/ethernet/ramips/ramips_eth.h25
1 files changed, 25 insertions, 0 deletions
diff --git a/target/linux/ramips/files/drivers/net/ethernet/ramips/ramips_eth.h b/target/linux/ramips/files/drivers/net/ethernet/ramips/ramips_eth.h
index ea3e923403..c8df434a46 100644
--- a/target/linux/ramips/files/drivers/net/ethernet/ramips/ramips_eth.h
+++ b/target/linux/ramips/files/drivers/net/ethernet/ramips/ramips_eth.h
@@ -213,8 +213,30 @@ struct ramips_tx_dma {
unsigned int txd4;
} __packed __aligned(4);
+struct raeth_int_stats {
+ unsigned long rx_delayed;
+ unsigned long tx_delayed;
+ unsigned long rx_done0;
+ unsigned long tx_done0;
+ unsigned long tx_done1;
+ unsigned long tx_done2;
+ unsigned long tx_done3;
+ unsigned long rx_coherent;
+ unsigned long tx_coherent;
+
+ unsigned long pse_fq_empty;
+ unsigned long pse_p0_fc;
+ unsigned long pse_p1_fc;
+ unsigned long pse_p2_fc;
+ unsigned long pse_buf_drop;
+
+ unsigned long total;
+};
+
struct raeth_debug {
struct dentry *debugfs_dir;
+
+ struct raeth_int_stats int_stats;
};
struct raeth_priv
@@ -258,11 +280,14 @@ int raeth_debugfs_root_init(void);
void raeth_debugfs_root_exit(void);
int raeth_debugfs_init(struct raeth_priv *re);
void raeth_debugfs_exit(struct raeth_priv *re);
+void raeth_debugfs_update_int_stats(struct raeth_priv *re, u32 status);
#else
static inline int raeth_debugfs_root_init(void) { return 0; }
static inline void raeth_debugfs_root_exit(void) {}
static inline int raeth_debugfs_init(struct raeth_priv *re) { return 0; }
static inline void raeth_debugfs_exit(struct raeth_priv *re) {}
+static inline void raeth_debugfs_update_int_stats(struct raeth_priv *re,
+ u32 status) {}
#endif /* CONFIG_NET_RAMIPS_DEBUG_FS */
#endif /* RAMIPS_ETH_H */