net: ethernet: xgbe: expand PHY_GBIT_FEAUTRES
authorAndrew Lunn <andrew@lunn.ch>
Sat, 29 Sep 2018 21:04:15 +0000 (23:04 +0200)
committerDavid S. Miller <davem@davemloft.net>
Tue, 2 Oct 2018 05:55:36 +0000 (22:55 -0700)
The macro PHY_GBIT_FEAUTRES needs to change into a bitmap in order to
support link_modes. Remove its use from xgde by replacing it with its
definition.

Probably, the current behavior is wrong. It probably should be
ANDing not assigning.

Signed-off-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/amd/xgbe/xgbe-phy-v2.c

index a7e03e3..151bdb6 100644 (file)
@@ -878,8 +878,9 @@ static bool xgbe_phy_finisar_phy_quirks(struct xgbe_prv_data *pdata)
        phy_write(phy_data->phydev, 0x04, 0x0d01);
        phy_write(phy_data->phydev, 0x00, 0x9140);
 
-       phy_data->phydev->supported = PHY_GBIT_FEATURES;
-       phy_data->phydev->advertising = phy_data->phydev->supported;
+       phy_data->phydev->supported = PHY_10BT_FEATURES |
+                                     PHY_100BT_FEATURES |
+                                     PHY_1000BT_FEATURES;
        phy_support_asym_pause(phy_data->phydev);
 
        netif_dbg(pdata, drv, pdata->netdev,
@@ -950,8 +951,9 @@ static bool xgbe_phy_belfuse_phy_quirks(struct xgbe_prv_data *pdata)
        reg = phy_read(phy_data->phydev, 0x00);
        phy_write(phy_data->phydev, 0x00, reg & ~0x00800);
 
-       phy_data->phydev->supported = PHY_GBIT_FEATURES;
-       phy_data->phydev->advertising = phy_data->phydev->supported;
+       phy_data->phydev->supported = (PHY_10BT_FEATURES |
+                                      PHY_100BT_FEATURES |
+                                      PHY_1000BT_FEATURES);
        phy_support_asym_pause(phy_data->phydev);
 
        netif_dbg(pdata, drv, pdata->netdev,