net: dsa: Eliminate dsa_slave_get_link()
authorFlorian Fainelli <f.fainelli@gmail.com>
Thu, 10 May 2018 20:17:34 +0000 (13:17 -0700)
committerDavid S. Miller <davem@davemloft.net>
Fri, 11 May 2018 16:03:06 +0000 (12:03 -0400)
Since we use PHYLIB to manage the per-port link indication, this will
also be reflected correctly in the network device's carrier state, so we
can use ethtool_op_get_link() instead.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/dsa/slave.c

index 6c2f042..729f18d 100644 (file)
@@ -498,16 +498,6 @@ dsa_slave_get_regs(struct net_device *dev, struct ethtool_regs *regs, void *_p)
                ds->ops->get_regs(ds, dp->index, regs, _p);
 }
 
-static u32 dsa_slave_get_link(struct net_device *dev)
-{
-       if (!dev->phydev)
-               return -ENODEV;
-
-       genphy_update_link(dev->phydev);
-
-       return dev->phydev->link;
-}
-
 static int dsa_slave_get_eeprom_len(struct net_device *dev)
 {
        struct dsa_port *dp = dsa_slave_to_port(dev);
@@ -982,7 +972,7 @@ static const struct ethtool_ops dsa_slave_ethtool_ops = {
        .get_regs_len           = dsa_slave_get_regs_len,
        .get_regs               = dsa_slave_get_regs,
        .nway_reset             = phy_ethtool_nway_reset,
-       .get_link               = dsa_slave_get_link,
+       .get_link               = ethtool_op_get_link,
        .get_eeprom_len         = dsa_slave_get_eeprom_len,
        .get_eeprom             = dsa_slave_get_eeprom,
        .set_eeprom             = dsa_slave_set_eeprom,