OSDN Git Service

staging: et131x: Add auto-negotiation and 1000BT_Half as supported protocols
authorMark Einon <mark.einon@gmail.com>
Wed, 3 Sep 2014 21:40:56 +0000 (22:40 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 8 Sep 2014 20:47:01 +0000 (13:47 -0700)
The driver supports auto-negotiation and 100BaetT_Half but doesn't
advertise or list it in it's phydev. Fix that.

Signed-off-by: Mark Einon <mark.einon@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/et131x/et131x.c

index 9819e0e..1ac9e7e 100644 (file)
@@ -3643,18 +3643,20 @@ static int et131x_mii_probe(struct net_device *netdev)
                return PTR_ERR(phydev);
        }
 
-       phydev->supported &= (SUPPORTED_10baseT_Half
-                               | SUPPORTED_10baseT_Full
-                               | SUPPORTED_100baseT_Half
-                               | SUPPORTED_100baseT_Full
-                               | SUPPORTED_Autoneg
-                               | SUPPORTED_MII
-                               | SUPPORTED_TP);
+       phydev->supported &= (SUPPORTED_10baseT_Half |
+                             SUPPORTED_10baseT_Full |
+                             SUPPORTED_100baseT_Half |
+                             SUPPORTED_100baseT_Full |
+                             SUPPORTED_Autoneg |
+                             SUPPORTED_MII |
+                             SUPPORTED_TP);
 
        if (adapter->pdev->device != ET131X_PCI_DEVICE_ID_FAST)
-               phydev->supported |= SUPPORTED_1000baseT_Full;
+               phydev->supported |= SUPPORTED_1000baseT_Half |
+                                    SUPPORTED_1000baseT_Full;
 
        phydev->advertising = phydev->supported;
+       phydev->autoneg = AUTONEG_ENABLE;
        adapter->phydev = phydev;
 
        dev_info(&adapter->pdev->dev,