net: bcmgenet: Set phydev->dev_flags only for internal PHYs
authorFlorian Fainelli <f.fainelli@gmail.com>
Fri, 11 Oct 2019 19:53:49 +0000 (12:53 -0700)
committerDavid S. Miller <davem@davemloft.net>
Tue, 15 Oct 2019 17:53:19 +0000 (10:53 -0700)
phydev->dev_flags is entirely dependent on the PHY device driver which
is going to be used, setting the internal GENET PHY revision in those
bits only makes sense when drivers/net/phy/bcm7xxx.c is the PHY driver
being used.

Fixes: 487320c54143 ("net: bcmgenet: communicate integrated PHY revision to PHY driver")
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Acked-by: Doug Berger <opendmb@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/broadcom/genet/bcmmii.c

index 970e478a9017f8ef6437870c5601f9942bd44f29..94d1dd5d56bf3c2c9662d8f6f7b235449c53f9d9 100644 (file)
@@ -273,11 +273,12 @@ int bcmgenet_mii_probe(struct net_device *dev)
        struct bcmgenet_priv *priv = netdev_priv(dev);
        struct device_node *dn = priv->pdev->dev.of_node;
        struct phy_device *phydev;
-       u32 phy_flags;
+       u32 phy_flags = 0;
        int ret;
 
        /* Communicate the integrated PHY revision */
-       phy_flags = priv->gphy_rev;
+       if (priv->internal_phy)
+               phy_flags = priv->gphy_rev;
 
        /* Initialize link state variables that bcmgenet_mii_setup() uses */
        priv->old_link = -1;