From 4de6a250878c9ce5605838b65acbddf338a7254a Mon Sep 17 00:00:00 2001 From: Sebastian Mayr Date: Thu, 20 Dec 2012 18:52:10 +0100 Subject: [PATCH 2/2] lantiq_etop: Fix supported modes flag --- drivers/net/ethernet/lantiq_etop.c | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) --- a/drivers/net/ethernet/lantiq_etop.c +++ b/drivers/net/ethernet/lantiq_etop.c @@ -550,6 +550,13 @@ ltq_etop_mdio_probe(struct net_device *d { struct ltq_etop_priv *priv = netdev_priv(dev); struct phy_device *phydev = NULL; + u32 phy_supported = (SUPPORTED_10baseT_Half + | SUPPORTED_10baseT_Full + | SUPPORTED_100baseT_Half + | SUPPORTED_100baseT_Full + | SUPPORTED_Autoneg + | SUPPORTED_MII + | SUPPORTED_TP); if (of_machine_is_compatible("lantiq,ase")) phydev = priv->mii_bus->phy_map[8]; @@ -569,17 +576,11 @@ ltq_etop_mdio_probe(struct net_device *d return PTR_ERR(phydev); } - phydev->supported &= (SUPPORTED_10baseT_Half - | SUPPORTED_10baseT_Full - | SUPPORTED_100baseT_Half - | SUPPORTED_100baseT_Full - | SUPPORTED_Autoneg - | SUPPORTED_MII - | SUPPORTED_TP); if (of_machine_is_compatible("lantiq,ar9")) - phydev->supported &= SUPPORTED_1000baseT_Half - | SUPPORTED_1000baseT_Full; + phy_supported |= SUPPORTED_1000baseT_Half + | SUPPORTED_1000baseT_Full; + phydev->supported &= phy_supported; phydev->advertising = phydev->supported; priv->phydev = phydev; pr_info("%s: attached PHY [%s] (phy_addr=%s, irq=%d)\n",