net: calxedaxgmac: fix condition in xgmac_set_features()
authorDan Carpenter <dan.carpenter@oracle.com>
Thu, 25 Apr 2013 07:44:20 +0000 (10:44 +0300)
committerDavid S. Miller <davem@davemloft.net>
Thu, 25 Apr 2013 07:50:17 +0000 (03:50 -0400)
The "changed" variable should be a 64 bit type, otherwise it can't store
all the features.  The way the code is now the test for whether
NETIF_F_RXCSUM changed is always false and we return immediately.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/calxeda/xgmac.c

index 791e5ff305d8a036600bc4c76ce94a0b4b1ad80a..4a1f2fa812abea3e32ce97880b0c1ea5f41287b8 100644 (file)
@@ -1482,7 +1482,7 @@ static int xgmac_set_features(struct net_device *dev, netdev_features_t features
        u32 ctrl;
        struct xgmac_priv *priv = netdev_priv(dev);
        void __iomem *ioaddr = priv->base;
-       u32 changed = dev->features ^ features;
+       netdev_features_t changed = dev->features ^ features;
 
        if (!(changed & NETIF_F_RXCSUM))
                return 0;