Merge branch 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git...
[pandora-kernel.git] / drivers / net / natsemi.c
index 1074231..b78be08 100644 (file)
@@ -2820,7 +2820,7 @@ static int netdev_get_ecmd(struct net_device *dev, struct ethtool_cmd *ecmd)
        u32 tmp;
 
        ecmd->port        = dev->if_port;
-       ecmd->speed       = np->speed;
+       ethtool_cmd_speed_set(ecmd, np->speed);
        ecmd->duplex      = np->duplex;
        ecmd->autoneg     = np->autoneg;
        ecmd->advertising = 0;
@@ -2878,9 +2878,9 @@ static int netdev_get_ecmd(struct net_device *dev, struct ethtool_cmd *ecmd)
                tmp = mii_nway_result(
                        np->advertising & mdio_read(dev, MII_LPA));
                if (tmp == LPA_100FULL || tmp == LPA_100HALF)
-                       ecmd->speed  = SPEED_100;
+                       ethtool_cmd_speed_set(ecmd, SPEED_100);
                else
-                       ecmd->speed  = SPEED_10;
+                       ethtool_cmd_speed_set(ecmd, SPEED_10);
                if (tmp == LPA_100FULL || tmp == LPA_10FULL)
                        ecmd->duplex = DUPLEX_FULL;
                else
@@ -2908,7 +2908,8 @@ static int netdev_set_ecmd(struct net_device *dev, struct ethtool_cmd *ecmd)
                        return -EINVAL;
                }
        } else if (ecmd->autoneg == AUTONEG_DISABLE) {
-               if (ecmd->speed != SPEED_10 && ecmd->speed != SPEED_100)
+               u32 speed = ethtool_cmd_speed(ecmd);
+               if (speed != SPEED_10 && speed != SPEED_100)
                        return -EINVAL;
                if (ecmd->duplex != DUPLEX_HALF && ecmd->duplex != DUPLEX_FULL)
                        return -EINVAL;
@@ -2956,7 +2957,7 @@ static int netdev_set_ecmd(struct net_device *dev, struct ethtool_cmd *ecmd)
                if (ecmd->advertising & ADVERTISED_100baseT_Full)
                        np->advertising |= ADVERTISE_100FULL;
        } else {
-               np->speed  = ecmd->speed;
+               np->speed  = ethtool_cmd_speed(ecmd);
                np->duplex = ecmd->duplex;
                /* user overriding the initial full duplex parm? */
                if (np->duplex == DUPLEX_HALF)