net: ethernet: tc35815: use phy_ethtool_{get|set}_link_ksettings
authorPhilippe Reynes <tremyfr@gmail.com>
Thu, 14 Jul 2016 13:20:47 +0000 (15:20 +0200)
committerDavid S. Miller <davem@davemloft.net>
Fri, 15 Jul 2016 23:41:33 +0000 (16:41 -0700)
There are two generics functions phy_ethtool_{get|set}_link_ksettings,
so we can use them instead of defining the same code in the driver.

Signed-off-by: Philippe Reynes <tremyfr@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/toshiba/tc35815.c

index cdf8d58326c4c7472f883f5aa76b54993811b805..5b01b3fa9fec966b7bf562e935b6b8216ba9f368 100644 (file)
@@ -1944,20 +1944,6 @@ static void tc35815_get_drvinfo(struct net_device *dev, struct ethtool_drvinfo *
        strlcpy(info->bus_info, pci_name(lp->pci_dev), sizeof(info->bus_info));
 }
 
-static int tc35815_get_settings(struct net_device *dev, struct ethtool_cmd *cmd)
-{
-       if (!dev->phydev)
-               return -ENODEV;
-       return phy_ethtool_gset(dev->phydev, cmd);
-}
-
-static int tc35815_set_settings(struct net_device *dev, struct ethtool_cmd *cmd)
-{
-       if (!dev->phydev)
-               return -ENODEV;
-       return phy_ethtool_sset(dev->phydev, cmd);
-}
-
 static u32 tc35815_get_msglevel(struct net_device *dev)
 {
        struct tc35815_local *lp = netdev_priv(dev);
@@ -2007,14 +1993,14 @@ static void tc35815_get_strings(struct net_device *dev, u32 stringset, u8 *data)
 
 static const struct ethtool_ops tc35815_ethtool_ops = {
        .get_drvinfo            = tc35815_get_drvinfo,
-       .get_settings           = tc35815_get_settings,
-       .set_settings           = tc35815_set_settings,
        .get_link               = ethtool_op_get_link,
        .get_msglevel           = tc35815_get_msglevel,
        .set_msglevel           = tc35815_set_msglevel,
        .get_strings            = tc35815_get_strings,
        .get_sset_count         = tc35815_get_sset_count,
        .get_ethtool_stats      = tc35815_get_ethtool_stats,
+       .get_link_ksettings = phy_ethtool_get_link_ksettings,
+       .set_link_ksettings = phy_ethtool_set_link_ksettings,
 };
 
 static int tc35815_ioctl(struct net_device *dev, struct ifreq *rq, int cmd)