Commit a784c92e authored by Claudiu Manoil's avatar Claudiu Manoil Committed by David S. Miller

enetc: Clean up of ehtool stats len

Refactor the stats len computation code to make it easier
to add new stats counters.
Signed-off-by: default avatarClaudiu Manoil <claudiu.manoil@nxp.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 9ff3dd7b
...@@ -195,15 +195,21 @@ static const char tx_ring_stats[][ETH_GSTRING_LEN] = { ...@@ -195,15 +195,21 @@ static const char tx_ring_stats[][ETH_GSTRING_LEN] = {
static int enetc_get_sset_count(struct net_device *ndev, int sset) static int enetc_get_sset_count(struct net_device *ndev, int sset)
{ {
struct enetc_ndev_priv *priv = netdev_priv(ndev); struct enetc_ndev_priv *priv = netdev_priv(ndev);
int len;
if (sset != ETH_SS_STATS)
return -EOPNOTSUPP;
if (sset == ETH_SS_STATS) len = ARRAY_SIZE(enetc_si_counters) +
return ARRAY_SIZE(enetc_si_counters) + ARRAY_SIZE(tx_ring_stats) * priv->num_tx_rings +
ARRAY_SIZE(tx_ring_stats) * priv->num_tx_rings + ARRAY_SIZE(rx_ring_stats) * priv->num_rx_rings;
ARRAY_SIZE(rx_ring_stats) * priv->num_rx_rings +
(enetc_si_is_pf(priv->si) ?
ARRAY_SIZE(enetc_port_counters) : 0);
return -EOPNOTSUPP; if (!enetc_si_is_pf(priv->si))
return len;
len += ARRAY_SIZE(enetc_port_counters);
return len;
} }
static void enetc_get_strings(struct net_device *ndev, u32 stringset, u8 *data) static void enetc_get_strings(struct net_device *ndev, u32 stringset, u8 *data)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment