projects
/
linux.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
9224ade
)
net: ngbe: add ethtool stats support
author
Jiawen Wu
<jiawenwu@trustnetic.com>
Wed, 11 Oct 2023 09:19:06 +0000
(17:19 +0800)
committer
Jakub Kicinski
<kuba@kernel.org>
Fri, 13 Oct 2023 23:56:07 +0000
(16:56 -0700)
Support to show ethtool statistics.
Signed-off-by: Jiawen Wu <jiawenwu@trustnetic.com>
Link:
https://lore.kernel.org/r/20231011091906.70486-4-jiawenwu@trustnetic.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/wangxun/ngbe/ngbe_ethtool.c
patch
|
blob
|
history
drivers/net/ethernet/wangxun/ngbe/ngbe_hw.c
patch
|
blob
|
history
drivers/net/ethernet/wangxun/ngbe/ngbe_main.c
patch
|
blob
|
history
diff --git
a/drivers/net/ethernet/wangxun/ngbe/ngbe_ethtool.c
b/drivers/net/ethernet/wangxun/ngbe/ngbe_ethtool.c
index ec0e869e9aacfe4708d082f05e9ac7f693c8bed6..afbdf6919071a05afc53e2a0e17dddbfb18788f7 100644
(file)
--- a/
drivers/net/ethernet/wangxun/ngbe/ngbe_ethtool.c
+++ b/
drivers/net/ethernet/wangxun/ngbe/ngbe_ethtool.c
@@
-49,6
+49,11
@@
static const struct ethtool_ops ngbe_ethtool_ops = {
.nway_reset = phy_ethtool_nway_reset,
.get_wol = ngbe_get_wol,
.set_wol = ngbe_set_wol,
+ .get_sset_count = wx_get_sset_count,
+ .get_strings = wx_get_strings,
+ .get_ethtool_stats = wx_get_ethtool_stats,
+ .get_eth_mac_stats = wx_get_mac_stats,
+ .get_pause_stats = wx_get_pause_stats,
};
void ngbe_set_ethtool_ops(struct net_device *netdev)
diff --git
a/drivers/net/ethernet/wangxun/ngbe/ngbe_hw.c
b/drivers/net/ethernet/wangxun/ngbe/ngbe_hw.c
index 6562a2de95277c73758e9a8a6651ad2c0c5c9803..6459bc1d7c2249e6f623170b772b6c6229557716 100644
(file)
--- a/
drivers/net/ethernet/wangxun/ngbe/ngbe_hw.c
+++ b/
drivers/net/ethernet/wangxun/ngbe/ngbe_hw.c
@@
-85,6
+85,8
@@
int ngbe_reset_hw(struct wx *wx)
}
ngbe_reset_misc(wx);
+ wx_clear_hw_cntrs(wx);
+
/* Store the permanent mac address */
wx_get_mac_addr(wx, wx->mac.perm_addr);
diff --git
a/drivers/net/ethernet/wangxun/ngbe/ngbe_main.c
b/drivers/net/ethernet/wangxun/ngbe/ngbe_main.c
index 2b431db6085a61238b7486b941c2503fe6ee3938..652e6576e36a4978865e196c700e5a1157012a36 100644
(file)
--- a/
drivers/net/ethernet/wangxun/ngbe/ngbe_main.c
+++ b/
drivers/net/ethernet/wangxun/ngbe/ngbe_main.c
@@
-332,6
+332,8
@@
static void ngbe_disable_device(struct wx *wx)
wr32(wx, WX_PX_TR_CFG(reg_idx), WX_PX_TR_CFG_SWFLSH);
}
+
+ wx_update_stats(wx);
}
static void ngbe_down(struct wx *wx)