Loading drivers/net/benet/be_cmds.h +10 −2 Original line number Diff line number Diff line Loading @@ -619,7 +619,10 @@ struct be_rxf_stats { u32 rx_drops_invalid_ring; /* dword 145*/ u32 forwarded_packets; /* dword 146*/ u32 rx_drops_mtu; /* dword 147*/ u32 rsvd0[15]; u32 rsvd0[7]; u32 port0_jabber_events; u32 port1_jabber_events; u32 rsvd1[6]; }; struct be_erx_stats { Loading @@ -630,11 +633,16 @@ struct be_erx_stats { u32 debug_pmem_pbuf_dealloc; /* dword 47*/ }; struct be_pmem_stats { u32 eth_red_drops; u32 rsvd[4]; }; struct be_hw_stats { struct be_rxf_stats rxf; u32 rsvd[48]; struct be_erx_stats erx; u32 rsvd1[6]; struct be_pmem_stats pmem; }; struct be_cmd_req_get_stats { Loading drivers/net/benet/be_ethtool.c +11 −2 Original line number Diff line number Diff line Loading @@ -26,7 +26,8 @@ struct be_ethtool_stat { int offset; }; enum {NETSTAT, PORTSTAT, MISCSTAT, DRVSTAT_TX, DRVSTAT_RX, ERXSTAT}; enum {NETSTAT, PORTSTAT, MISCSTAT, DRVSTAT_TX, DRVSTAT_RX, ERXSTAT, PMEMSTAT}; #define FIELDINFO(_struct, field) FIELD_SIZEOF(_struct, field), \ offsetof(_struct, field) #define NETSTAT_INFO(field) #field, NETSTAT,\ Loading @@ -43,6 +44,8 @@ enum {NETSTAT, PORTSTAT, MISCSTAT, DRVSTAT_TX, DRVSTAT_RX, ERXSTAT}; field) #define ERXSTAT_INFO(field) #field, ERXSTAT,\ FIELDINFO(struct be_erx_stats, field) #define PMEMSTAT_INFO(field) #field, PMEMSTAT,\ FIELDINFO(struct be_pmem_stats, field) static const struct be_ethtool_stat et_stats[] = { {NETSTAT_INFO(rx_packets)}, Loading Loading @@ -99,7 +102,10 @@ static const struct be_ethtool_stat et_stats[] = { {MISCSTAT_INFO(rx_drops_too_many_frags)}, {MISCSTAT_INFO(rx_drops_invalid_ring)}, {MISCSTAT_INFO(forwarded_packets)}, {MISCSTAT_INFO(rx_drops_mtu)} {MISCSTAT_INFO(rx_drops_mtu)}, {MISCSTAT_INFO(port0_jabber_events)}, {MISCSTAT_INFO(port1_jabber_events)}, {PMEMSTAT_INFO(eth_red_drops)} }; #define ETHTOOL_STATS_NUM ARRAY_SIZE(et_stats) Loading Loading @@ -276,6 +282,9 @@ be_get_ethtool_stats(struct net_device *netdev, case MISCSTAT: p = &hw_stats->rxf; break; case PMEMSTAT: p = &hw_stats->pmem; break; } p = (u8 *)p + et_stats[i].offset; Loading Loading
drivers/net/benet/be_cmds.h +10 −2 Original line number Diff line number Diff line Loading @@ -619,7 +619,10 @@ struct be_rxf_stats { u32 rx_drops_invalid_ring; /* dword 145*/ u32 forwarded_packets; /* dword 146*/ u32 rx_drops_mtu; /* dword 147*/ u32 rsvd0[15]; u32 rsvd0[7]; u32 port0_jabber_events; u32 port1_jabber_events; u32 rsvd1[6]; }; struct be_erx_stats { Loading @@ -630,11 +633,16 @@ struct be_erx_stats { u32 debug_pmem_pbuf_dealloc; /* dword 47*/ }; struct be_pmem_stats { u32 eth_red_drops; u32 rsvd[4]; }; struct be_hw_stats { struct be_rxf_stats rxf; u32 rsvd[48]; struct be_erx_stats erx; u32 rsvd1[6]; struct be_pmem_stats pmem; }; struct be_cmd_req_get_stats { Loading
drivers/net/benet/be_ethtool.c +11 −2 Original line number Diff line number Diff line Loading @@ -26,7 +26,8 @@ struct be_ethtool_stat { int offset; }; enum {NETSTAT, PORTSTAT, MISCSTAT, DRVSTAT_TX, DRVSTAT_RX, ERXSTAT}; enum {NETSTAT, PORTSTAT, MISCSTAT, DRVSTAT_TX, DRVSTAT_RX, ERXSTAT, PMEMSTAT}; #define FIELDINFO(_struct, field) FIELD_SIZEOF(_struct, field), \ offsetof(_struct, field) #define NETSTAT_INFO(field) #field, NETSTAT,\ Loading @@ -43,6 +44,8 @@ enum {NETSTAT, PORTSTAT, MISCSTAT, DRVSTAT_TX, DRVSTAT_RX, ERXSTAT}; field) #define ERXSTAT_INFO(field) #field, ERXSTAT,\ FIELDINFO(struct be_erx_stats, field) #define PMEMSTAT_INFO(field) #field, PMEMSTAT,\ FIELDINFO(struct be_pmem_stats, field) static const struct be_ethtool_stat et_stats[] = { {NETSTAT_INFO(rx_packets)}, Loading Loading @@ -99,7 +102,10 @@ static const struct be_ethtool_stat et_stats[] = { {MISCSTAT_INFO(rx_drops_too_many_frags)}, {MISCSTAT_INFO(rx_drops_invalid_ring)}, {MISCSTAT_INFO(forwarded_packets)}, {MISCSTAT_INFO(rx_drops_mtu)} {MISCSTAT_INFO(rx_drops_mtu)}, {MISCSTAT_INFO(port0_jabber_events)}, {MISCSTAT_INFO(port1_jabber_events)}, {PMEMSTAT_INFO(eth_red_drops)} }; #define ETHTOOL_STATS_NUM ARRAY_SIZE(et_stats) Loading Loading @@ -276,6 +282,9 @@ be_get_ethtool_stats(struct net_device *netdev, case MISCSTAT: p = &hw_stats->rxf; break; case PMEMSTAT: p = &hw_stats->pmem; break; } p = (u8 *)p + et_stats[i].offset; Loading