summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakub Kicinski <kuba@kernel.org>2025-10-15 05:35:51 +0300
committerJakub Kicinski <kuba@kernel.org>2025-10-15 05:35:51 +0300
commit6033d2a2468e07ec90bb153ea7c6c3bc2170c1e0 (patch)
tree55ddfa4a3002d7842511f306be14d0f492798a36
parentc3527eeb65cfe6fb93f9e06bc0429616a3a23592 (diff)
parentfc4fed9054ef5b5269d4395dd9db36fe98fce9e3 (diff)
downloadlinux-6033d2a2468e07ec90bb153ea7c6c3bc2170c1e0.tar.xz
Merge branch 'net-airoha-add-some-new-ethtool-bits'
Lorenzo Bianconi says: ==================== net: airoha: Add some new ethtool bits - add missing stats to ethtool ethtool_eth_mac_stats struct - set get_link ethtool callback to ethtool_op_get_link routine ==================== Link: https://patch.msgid.link/20251013-airoha-ethtool-improvements-v1-0-fdd1c6fc9be1@kernel.org Signed-off-by: Jakub Kicinski <kuba@kernel.org>
-rw-r--r--drivers/net/ethernet/airoha/airoha_eth.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/net/ethernet/airoha/airoha_eth.c b/drivers/net/ethernet/airoha/airoha_eth.c
index 833dd911980b..6effdda64380 100644
--- a/drivers/net/ethernet/airoha/airoha_eth.c
+++ b/drivers/net/ethernet/airoha/airoha_eth.c
@@ -2022,8 +2022,12 @@ static void airoha_ethtool_get_mac_stats(struct net_device *dev,
airoha_update_hw_stats(port);
do {
start = u64_stats_fetch_begin(&port->stats.syncp);
+ stats->FramesTransmittedOK = port->stats.tx_ok_pkts;
+ stats->OctetsTransmittedOK = port->stats.tx_ok_bytes;
stats->MulticastFramesXmittedOK = port->stats.tx_multicast;
stats->BroadcastFramesXmittedOK = port->stats.tx_broadcast;
+ stats->FramesReceivedOK = port->stats.rx_ok_pkts;
+ stats->OctetsReceivedOK = port->stats.rx_ok_bytes;
stats->BroadcastFramesReceivedOK = port->stats.rx_broadcast;
} while (u64_stats_fetch_retry(&port->stats.syncp, start));
}
@@ -2766,6 +2770,7 @@ static const struct ethtool_ops airoha_ethtool_ops = {
.get_drvinfo = airoha_ethtool_get_drvinfo,
.get_eth_mac_stats = airoha_ethtool_get_mac_stats,
.get_rmon_stats = airoha_ethtool_get_rmon_stats,
+ .get_link = ethtool_op_get_link,
};
static int airoha_metadata_dst_alloc(struct airoha_gdm_port *port)