netfilter: ipset: Use proper timeout value to jiffies conversion
[firefly-linux-kernel-4.4.55.git] / drivers / net / sky2.c
index a4b8fe564eb05e02ba367171637136f6c75cda40..3ee41da130c2e683063799421bb58019dfa4621e 100644 (file)
@@ -3413,10 +3413,10 @@ static int sky2_get_settings(struct net_device *dev, struct ethtool_cmd *ecmd)
        ecmd->phy_address = PHY_ADDR_MARV;
        if (sky2_is_copper(hw)) {
                ecmd->port = PORT_TP;
-               ecmd->speed = sky2->speed;
+               ethtool_cmd_speed_set(ecmd, sky2->speed);
                ecmd->supported |=  SUPPORTED_Autoneg | SUPPORTED_TP;
        } else {
-               ecmd->speed = SPEED_1000;
+               ethtool_cmd_speed_set(ecmd, SPEED_1000);
                ecmd->port = PORT_FIBRE;
                ecmd->supported |=  SUPPORTED_Autoneg | SUPPORTED_FIBRE;
        }
@@ -3452,8 +3452,9 @@ static int sky2_set_settings(struct net_device *dev, struct ethtool_cmd *ecmd)
                sky2->speed = -1;
        } else {
                u32 setting;
+               u32 speed = ethtool_cmd_speed(ecmd);
 
-               switch (ecmd->speed) {
+               switch (speed) {
                case SPEED_1000:
                        if (ecmd->duplex == DUPLEX_FULL)
                                setting = SUPPORTED_1000baseT_Full;
@@ -3486,7 +3487,7 @@ static int sky2_set_settings(struct net_device *dev, struct ethtool_cmd *ecmd)
                if ((setting & supported) == 0)
                        return -EINVAL;
 
-               sky2->speed = ecmd->speed;
+               sky2->speed = speed;
                sky2->duplex = ecmd->duplex;
                sky2->flags &= ~SKY2_FLAG_AUTO_SPEED;
        }
@@ -3813,7 +3814,7 @@ static int sky2_set_phys_id(struct net_device *dev,
 
        switch (state) {
        case ETHTOOL_ID_ACTIVE:
-               return -EINVAL;
+               return 1;       /* cycle on/off once per second */
        case ETHTOOL_ID_INACTIVE:
                sky2_led(sky2, MO_LED_NORM);
                break;