net: phy: set link state to down when creating the phy_device
authorHeiner Kallweit <hkallweit1@gmail.com>
Sun, 11 Mar 2018 14:00:37 +0000 (15:00 +0100)
committerDavid S. Miller <davem@davemloft.net>
Tue, 13 Mar 2018 01:00:20 +0000 (21:00 -0400)
Currently the link state is initialized to "up" when the phy_device is
being created. This is not consistent with the phy state being
initialized to PHY_DOWN.

Usually this doen't do any harm because the link state is updated
once the PHY reaches state PHY_AN. However e.g. if a LAN port isn't
used and the PHY remains down this inconsistency remains and calls
to functions like phy_print_status() give false results.
Therefore change the initialization to link being down.

Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/phy/phy_device.c

index 478405e544cc87cb415ad67d28c3ad8b9d2debc9..b285323327c42f40a01f9111e604bf90adbde2cb 100644 (file)
@@ -374,7 +374,7 @@ struct phy_device *phy_device_create(struct mii_bus *bus, int addr, int phy_id,
        dev->duplex = -1;
        dev->pause = 0;
        dev->asym_pause = 0;
-       dev->link = 1;
+       dev->link = 0;
        dev->interface = PHY_INTERFACE_MODE_GMII;
 
        dev->autoneg = AUTONEG_ENABLE;