diff options
author | Philippe Reynes <tremyfr@gmail.com> | 2016-06-25 17:05:16 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2016-06-28 09:12:36 -0400 |
commit | 8a79813c140122b9448bb8d24ec58dff3b15ea31 (patch) | |
tree | 562d71f73769ba05be3d2fb93eb5e5d2bde27f37 /drivers/net/ethernet/synopsys | |
parent | ce554d32eb16c459221a06ee8c93f39d7d648ef4 (diff) |
net: ethernet: dwc_eth_qos: use phy_ethtool_{get|set}_link_ksettings
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>
Diffstat (limited to 'drivers/net/ethernet/synopsys')
-rw-r--r-- | drivers/net/ethernet/synopsys/dwc_eth_qos.c | 26 |
1 files changed, 2 insertions, 24 deletions
diff --git a/drivers/net/ethernet/synopsys/dwc_eth_qos.c b/drivers/net/ethernet/synopsys/dwc_eth_qos.c index 094234f6a790..c14fa91c825f 100644 --- a/drivers/net/ethernet/synopsys/dwc_eth_qos.c +++ b/drivers/net/ethernet/synopsys/dwc_eth_qos.c | |||
@@ -2524,28 +2524,6 @@ dwceqos_get_stats64(struct net_device *ndev, struct rtnl_link_stats64 *s) | |||
2524 | return s; | 2524 | return s; |
2525 | } | 2525 | } |
2526 | 2526 | ||
2527 | static int | ||
2528 | dwceqos_get_settings(struct net_device *ndev, struct ethtool_cmd *ecmd) | ||
2529 | { | ||
2530 | struct phy_device *phydev = ndev->phydev; | ||
2531 | |||
2532 | if (!phydev) | ||
2533 | return -ENODEV; | ||
2534 | |||
2535 | return phy_ethtool_gset(phydev, ecmd); | ||
2536 | } | ||
2537 | |||
2538 | static int | ||
2539 | dwceqos_set_settings(struct net_device *ndev, struct ethtool_cmd *ecmd) | ||
2540 | { | ||
2541 | struct phy_device *phydev = ndev->phydev; | ||
2542 | |||
2543 | if (!phydev) | ||
2544 | return -ENODEV; | ||
2545 | |||
2546 | return phy_ethtool_sset(phydev, ecmd); | ||
2547 | } | ||
2548 | |||
2549 | static void | 2527 | static void |
2550 | dwceqos_get_drvinfo(struct net_device *ndev, struct ethtool_drvinfo *ed) | 2528 | dwceqos_get_drvinfo(struct net_device *ndev, struct ethtool_drvinfo *ed) |
2551 | { | 2529 | { |
@@ -2764,8 +2742,6 @@ static void dwceqos_set_msglevel(struct net_device *ndev, u32 msglevel) | |||
2764 | } | 2742 | } |
2765 | 2743 | ||
2766 | static struct ethtool_ops dwceqos_ethtool_ops = { | 2744 | static struct ethtool_ops dwceqos_ethtool_ops = { |
2767 | .get_settings = dwceqos_get_settings, | ||
2768 | .set_settings = dwceqos_set_settings, | ||
2769 | .get_drvinfo = dwceqos_get_drvinfo, | 2745 | .get_drvinfo = dwceqos_get_drvinfo, |
2770 | .get_link = ethtool_op_get_link, | 2746 | .get_link = ethtool_op_get_link, |
2771 | .get_pauseparam = dwceqos_get_pauseparam, | 2747 | .get_pauseparam = dwceqos_get_pauseparam, |
@@ -2779,6 +2755,8 @@ static struct ethtool_ops dwceqos_ethtool_ops = { | |||
2779 | .set_eee = dwceqos_set_eee, | 2755 | .set_eee = dwceqos_set_eee, |
2780 | .get_msglevel = dwceqos_get_msglevel, | 2756 | .get_msglevel = dwceqos_get_msglevel, |
2781 | .set_msglevel = dwceqos_set_msglevel, | 2757 | .set_msglevel = dwceqos_set_msglevel, |
2758 | .get_link_ksettings = phy_ethtool_get_link_ksettings, | ||
2759 | .set_link_ksettings = phy_ethtool_set_link_ksettings, | ||
2782 | }; | 2760 | }; |
2783 | 2761 | ||
2784 | static struct net_device_ops netdev_ops = { | 2762 | static struct net_device_ops netdev_ops = { |