aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/net/phy/bcm7xxx.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/net/phy/bcm7xxx.c b/drivers/net/phy/bcm7xxx.c
index 4dea85bfc545..6b701b3ded74 100644
--- a/drivers/net/phy/bcm7xxx.c
+++ b/drivers/net/phy/bcm7xxx.c
@@ -246,6 +246,13 @@ static int bcm7xxx_28nm_config_init(struct phy_device *phydev)
246 pr_info_once("%s: %s PHY revision: 0x%02x, patch: %d\n", 246 pr_info_once("%s: %s PHY revision: 0x%02x, patch: %d\n",
247 dev_name(&phydev->dev), phydev->drv->name, rev, patch); 247 dev_name(&phydev->dev), phydev->drv->name, rev, patch);
248 248
249 /* Dummy read to a register to workaround an issue upon reset where the
250 * internal inverter may not allow the first MDIO transaction to pass
251 * the MDIO management controller and make us return 0xffff for such
252 * reads.
253 */
254 phy_read(phydev, MII_BMSR);
255
249 switch (rev) { 256 switch (rev) {
250 case 0xb0: 257 case 0xb0:
251 ret = bcm7xxx_28nm_b0_afe_config_init(phydev); 258 ret = bcm7xxx_28nm_b0_afe_config_init(phydev);