Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3ce2a027 authored by Heiner Kallweit's avatar Heiner Kallweit Committed by David S. Miller
Browse files

net: phy: marvell10g: check for newly set aneg



Even if the advertisement registers content didn't change, we may have
just switched to aneg, and therefore have to trigger an aneg restart.
This matches the behavior of genphy_config_aneg().

Signed-off-by: default avatarHeiner Kallweit <hkallweit1@gmail.com>
Reviewed-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 3de97f3c
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -296,6 +296,16 @@ static int mv3310_config_aneg(struct phy_device *phydev)
	if (ret > 0)
		changed = true;

	if (!changed) {
		/* Configure and restart aneg if it wasn't set before */
		ret = phy_read_mmd(phydev, MDIO_MMD_AN, MDIO_CTRL1);
		if (ret < 0)
			return ret;

		if (!(ret & MDIO_AN_CTRL1_ENABLE))
			changed = 1;
	}

	if (changed)
		ret = genphy_c45_restart_aneg(phydev);