]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commitdiff
net: hns3: add support for set_link_ksettings
authorFuyun Liang <liangfuyun1@huawei.com>
Fri, 3 Nov 2017 04:18:28 +0000 (12:18 +0800)
committerDavid S. Miller <davem@davemloft.net>
Fri, 3 Nov 2017 12:36:49 +0000 (21:36 +0900)
This patch adds set_link_ksettings support for ethtool cmd.

Signed-off-by: Fuyun Liang <liangfuyun1@huawei.com>
Signed-off-by: Lipeng <lipeng321@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/hisilicon/hns3/hns3pf/hns3_ethtool.c

index c7b8ebd14f3369a2bd634660603cae2a8facb7ab..7fe193b1ccafbb09f7fb14f77020cbb56c59135b 100644 (file)
@@ -653,6 +653,16 @@ static int hns3_get_link_ksettings(struct net_device *netdev,
        return 0;
 }
 
+static int hns3_set_link_ksettings(struct net_device *netdev,
+                                  const struct ethtool_link_ksettings *cmd)
+{
+       /* Only support ksettings_set for netdev with phy attached for now */
+       if (netdev->phydev)
+               return phy_ethtool_ksettings_set(netdev->phydev, cmd);
+
+       return -EOPNOTSUPP;
+}
+
 static u32 hns3_get_rss_key_size(struct net_device *netdev)
 {
        struct hnae3_handle *h = hns3_get_handle(netdev);
@@ -839,6 +849,7 @@ static const struct ethtool_ops hns3_ethtool_ops = {
        .get_rxfh = hns3_get_rss,
        .set_rxfh = hns3_set_rss,
        .get_link_ksettings = hns3_get_link_ksettings,
+       .set_link_ksettings = hns3_set_link_ksettings,
 };
 
 void hns3_ethtool_set_ops(struct net_device *netdev)