aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/layerscape/patches-5.4/701-net-0235-enetc-Clean-up-of-ehtool-stats-len.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/layerscape/patches-5.4/701-net-0235-enetc-Clean-up-of-ehtool-stats-len.patch')
-rw-r--r--target/linux/layerscape/patches-5.4/701-net-0235-enetc-Clean-up-of-ehtool-stats-len.patch44
1 files changed, 44 insertions, 0 deletions
diff --git a/target/linux/layerscape/patches-5.4/701-net-0235-enetc-Clean-up-of-ehtool-stats-len.patch b/target/linux/layerscape/patches-5.4/701-net-0235-enetc-Clean-up-of-ehtool-stats-len.patch
new file mode 100644
index 0000000000..b085ea3a17
--- /dev/null
+++ b/target/linux/layerscape/patches-5.4/701-net-0235-enetc-Clean-up-of-ehtool-stats-len.patch
@@ -0,0 +1,44 @@
+From a5e4a018cf5c7ed9709141c41ba7b262aa79870d Mon Sep 17 00:00:00 2001
+From: Claudiu Manoil <claudiu.manoil@nxp.com>
+Date: Tue, 22 Oct 2019 20:23:38 +0300
+Subject: [PATCH] enetc: Clean up of ehtool stats len
+
+Just refactoring stats len code to make it easier to
+add new stats counters.
+
+Signed-off-by: Claudiu Manoil <claudiu.manoil@nxp.com>
+---
+ drivers/net/ethernet/freescale/enetc/enetc_ethtool.c | 20 +++++++++++++-------
+ 1 file changed, 13 insertions(+), 7 deletions(-)
+
+--- a/drivers/net/ethernet/freescale/enetc/enetc_ethtool.c
++++ b/drivers/net/ethernet/freescale/enetc/enetc_ethtool.c
+@@ -195,15 +195,21 @@ static const char tx_ring_stats[][ETH_GS
+ static int enetc_get_sset_count(struct net_device *ndev, int sset)
+ {
+ struct enetc_ndev_priv *priv = netdev_priv(ndev);
++ int len;
+
+- if (sset == ETH_SS_STATS)
+- return ARRAY_SIZE(enetc_si_counters) +
+- ARRAY_SIZE(tx_ring_stats) * priv->num_tx_rings +
+- ARRAY_SIZE(rx_ring_stats) * priv->num_rx_rings +
+- (enetc_si_is_pf(priv->si) ?
+- ARRAY_SIZE(enetc_port_counters) : 0);
++ if (sset != ETH_SS_STATS)
++ return -EOPNOTSUPP;
+
+- return -EOPNOTSUPP;
++ len = ARRAY_SIZE(enetc_si_counters) +
++ ARRAY_SIZE(tx_ring_stats) * priv->num_tx_rings +
++ ARRAY_SIZE(rx_ring_stats) * priv->num_rx_rings;
++
++ 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)