summaryrefslogtreecommitdiffstats
path: root/drivers/net/dsa/dsa_loop.c
diff options
context:
space:
mode:
authorFlorian Fainelli <f.fainelli@gmail.com>2018-04-25 12:12:54 -0700
committerDavid S. Miller <davem@davemloft.net>2018-04-27 11:53:03 -0400
commit96cbddcd52e76d9052948e408b17bedc8aa1c11a (patch)
treeee5924b4a53b16f813c239101935af3f480b7781 /drivers/net/dsa/dsa_loop.c
parentc7d28c9df292a49904446dca15b2037ee8f874af (diff)
net: dsa: loop: Hook PHY statistics
We just return the same statistics through ethtool_get_stats() and ethtool_get_phy_stats() for simplicity since this is just a mock-up driver. Signed-off-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/dsa/dsa_loop.c')
-rw-r--r--drivers/net/dsa/dsa_loop.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/net/dsa/dsa_loop.c b/drivers/net/dsa/dsa_loop.c
index 9354cc08d3fd..58f14af04639 100644
--- a/drivers/net/dsa/dsa_loop.c
+++ b/drivers/net/dsa/dsa_loop.c
@@ -88,7 +88,7 @@ static int dsa_loop_setup(struct dsa_switch *ds)
static int dsa_loop_get_sset_count(struct dsa_switch *ds, int port, int sset)
{
- if (sset != ETH_SS_STATS)
+ if (sset != ETH_SS_STATS && sset != ETH_SS_PHY_STATS)
return 0;
return __DSA_LOOP_CNT_MAX;
@@ -100,7 +100,7 @@ static void dsa_loop_get_strings(struct dsa_switch *ds, int port,
struct dsa_loop_priv *ps = ds->priv;
unsigned int i;
- if (stringset != ETH_SS_STATS)
+ if (stringset != ETH_SS_STATS && stringset != ETH_SS_PHY_STATS)
return;
for (i = 0; i < __DSA_LOOP_CNT_MAX; i++)
@@ -263,6 +263,7 @@ static const struct dsa_switch_ops dsa_loop_driver = {
.get_strings = dsa_loop_get_strings,
.get_ethtool_stats = dsa_loop_get_ethtool_stats,
.get_sset_count = dsa_loop_get_sset_count,
+ .get_ethtool_phy_stats = dsa_loop_get_ethtool_stats,
.phy_read = dsa_loop_phy_read,
.phy_write = dsa_loop_phy_write,
.port_bridge_join = dsa_loop_port_bridge_join,