Merge tag 'wireless-drivers-for-davem-2017-04-03' of git://git.kernel.org/pub/scm...
[linux-2.6-block.git] / drivers / net / veth.c
index 0520952aa096efd4131526ae53cde4bf94786d42..317103680675f97eb056e650d5adc07fe51f67e2 100644 (file)
@@ -45,18 +45,13 @@ static struct {
        { "peer_ifindex" },
 };
 
-static int veth_get_settings(struct net_device *dev, struct ethtool_cmd *cmd)
+static int veth_get_link_ksettings(struct net_device *dev,
+                                  struct ethtool_link_ksettings *cmd)
 {
-       cmd->supported          = 0;
-       cmd->advertising        = 0;
-       ethtool_cmd_speed_set(cmd, SPEED_10000);
-       cmd->duplex             = DUPLEX_FULL;
-       cmd->port               = PORT_TP;
-       cmd->phy_address        = 0;
-       cmd->transceiver        = XCVR_INTERNAL;
-       cmd->autoneg            = AUTONEG_DISABLE;
-       cmd->maxtxpkt           = 0;
-       cmd->maxrxpkt           = 0;
+       cmd->base.speed         = SPEED_10000;
+       cmd->base.duplex        = DUPLEX_FULL;
+       cmd->base.port          = PORT_TP;
+       cmd->base.autoneg       = AUTONEG_DISABLE;
        return 0;
 }
 
@@ -95,12 +90,12 @@ static void veth_get_ethtool_stats(struct net_device *dev,
 }
 
 static const struct ethtool_ops veth_ethtool_ops = {
-       .get_settings           = veth_get_settings,
        .get_drvinfo            = veth_get_drvinfo,
        .get_link               = ethtool_op_get_link,
        .get_strings            = veth_get_strings,
        .get_sset_count         = veth_get_sset_count,
        .get_ethtool_stats      = veth_get_ethtool_stats,
+       .get_link_ksettings     = veth_get_link_ksettings,
 };
 
 static netdev_tx_t veth_xmit(struct sk_buff *skb, struct net_device *dev)
@@ -158,8 +153,8 @@ static u64 veth_stats_one(struct pcpu_vstats *result, struct net_device *dev)
        return atomic64_read(&priv->dropped);
 }
 
-static struct rtnl_link_stats64 *veth_get_stats64(struct net_device *dev,
-                                                 struct rtnl_link_stats64 *tot)
+static void veth_get_stats64(struct net_device *dev,
+                            struct rtnl_link_stats64 *tot)
 {
        struct veth_priv *priv = netdev_priv(dev);
        struct net_device *peer;
@@ -177,8 +172,6 @@ static struct rtnl_link_stats64 *veth_get_stats64(struct net_device *dev,
                tot->rx_packets = one.packets;
        }
        rcu_read_unlock();
-
-       return tot;
 }
 
 /* fake multicast ability */