net: phy: bcm84881: clear settings on link down
Clear the link partner advertisement, speed, duplex and pause when the link goes down, as other phylib drivers do. This avoids the stale link partner, speed and duplex settings being reported via ethtool. Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
d97793af11
commit
796a8fa289
@ -155,9 +155,6 @@ static int bcm84881_read_status(struct phy_device *phydev)
|
||||
if (phydev->autoneg == AUTONEG_ENABLE && !phydev->autoneg_complete)
|
||||
phydev->link = false;
|
||||
|
||||
if (!phydev->link)
|
||||
return 0;
|
||||
|
||||
linkmode_zero(phydev->lp_advertising);
|
||||
phydev->speed = SPEED_UNKNOWN;
|
||||
phydev->duplex = DUPLEX_UNKNOWN;
|
||||
@ -165,6 +162,9 @@ static int bcm84881_read_status(struct phy_device *phydev)
|
||||
phydev->asym_pause = 0;
|
||||
phydev->mdix = 0;
|
||||
|
||||
if (!phydev->link)
|
||||
return 0;
|
||||
|
||||
if (phydev->autoneg_complete) {
|
||||
val = genphy_c45_read_lpa(phydev);
|
||||
if (val < 0)
|
||||
|
Loading…
Reference in New Issue
Block a user