cxgb4: drop phys_id interface and implement the newer set_phys_id
authorDimitris Michailidis <dm@chelsio.com>
Fri, 8 Apr 2011 20:06:25 +0000 (13:06 -0700)
committerDavid S. Miller <davem@davemloft.net>
Fri, 8 Apr 2011 20:06:25 +0000 (13:06 -0700)
Signed-off-by: Dimitris Michailidis <dm@chelsio.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/cxgb4/cxgb4_main.c

index 5352c8a23f4da1fc4cfdd9a08df6d40fd886b89c..0af9c9f0ca7811a5133b34bf8a5add9ff4cd1c04 100644 (file)
@@ -1336,15 +1336,20 @@ static int restart_autoneg(struct net_device *dev)
        return 0;
 }
 
-static int identify_port(struct net_device *dev, u32 data)
+static int identify_port(struct net_device *dev,
+                        enum ethtool_phys_id_state state)
 {
+       unsigned int val;
        struct adapter *adap = netdev2adap(dev);
 
-       if (data == 0)
-               data = 2;     /* default to 2 seconds */
+       if (state == ETHTOOL_ID_ACTIVE)
+               val = 0xffff;
+       else if (state == ETHTOOL_ID_INACTIVE)
+               val = 0;
+       else
+               return -EINVAL;
 
-       return t4_identify_port(adap, adap->fn, netdev2pinfo(dev)->viid,
-                               data * 5);
+       return t4_identify_port(adap, adap->fn, netdev2pinfo(dev)->viid, val);
 }
 
 static unsigned int from_fw_linkcaps(unsigned int type, unsigned int caps)
@@ -2011,7 +2016,7 @@ static struct ethtool_ops cxgb_ethtool_ops = {
        .set_sg            = ethtool_op_set_sg,
        .get_link          = ethtool_op_get_link,
        .get_strings       = get_strings,
-       .phys_id           = identify_port,
+       .set_phys_id       = identify_port,
        .nway_reset        = restart_autoneg,
        .get_sset_count    = get_sset_count,
        .get_ethtool_stats = get_stats,