Commit a058052c "net: phy: do not read configuration register on reset", changes the behaviour of the phy_reset function such that the state of the BMCR register is not preserved during reset.
Reorder the phy_reset and genphy_config_aneg calls for some of the marvell phy drivers so that auto-negotiation occurs after reset. Signed-off-by: Nathan Rossi <nat...@nathanrossi.com> Cc: Joe Hershberger <joe.hershber...@ni.com> Cc: Michal Simek <michal.si...@xilinx.com> Cc: Stefan Roese <s...@denx.de> --- drivers/net/phy/marvell.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/drivers/net/phy/marvell.c b/drivers/net/phy/marvell.c index d2e68d4..40284a5 100644 --- a/drivers/net/phy/marvell.c +++ b/drivers/net/phy/marvell.c @@ -414,10 +414,10 @@ static int m88e1145_config(struct phy_device *phydev) MIIM_M88E1145_RGMII_TX_DELAY; phy_write(phydev, MDIO_DEVAD_NONE, MIIM_88E1145_PHY_EXT_CR, reg); - genphy_config_aneg(phydev); - phy_reset(phydev); + genphy_config_aneg(phydev); + return 0; } @@ -443,10 +443,10 @@ static int m88e1149_config(struct phy_device *phydev) phy_write(phydev, MDIO_DEVAD_NONE, 0x1e, 0x0); phy_write(phydev, MDIO_DEVAD_NONE, 0x1e, 0x100); - genphy_config_aneg(phydev); - phy_reset(phydev); + genphy_config_aneg(phydev); + return 0; } @@ -476,9 +476,10 @@ static int m88e1310_config(struct phy_device *phydev) /* Ensure to return to page 0 */ phy_write(phydev, MDIO_DEVAD_NONE, MIIM_88E1310_PHY_PAGE, 0x0000); - genphy_config_aneg(phydev); phy_reset(phydev); + genphy_config_aneg(phydev); + return 0; } -- 2.8.1 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot