Skip to content

Commit 0c81a8e

Browse files
ffainellidavem330
authored andcommitted
net: bcmgenet: fix GPHY power-up sequence
We were missing a number of extra steps and delays to power-up the GPHY, update the sequence to reflect the proper procedure here. Signed-off-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
1 parent 8212c98 commit 0c81a8e

File tree

1 file changed

+7
-3
lines changed
  • drivers/net/ethernet/broadcom/genet

1 file changed

+7
-3
lines changed

drivers/net/ethernet/broadcom/genet/bcmmii.c

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -179,14 +179,18 @@ static void bcmgenet_phy_power_set(struct net_device *dev, bool enable)
179179

180180
if (enable) {
181181
reg = bcmgenet_ext_readl(priv, EXT_GPHY_CTRL);
182-
reg &= ~(EXT_CFG_IDDQ_BIAS | EXT_CFG_PWR_DOWN | EXT_CK25_DIS);
182+
reg &= ~EXT_CK25_DIS;
183+
bcmgenet_ext_writel(priv, reg, EXT_GPHY_CTRL);
184+
mdelay(1);
185+
186+
reg &= ~(EXT_CFG_IDDQ_BIAS | EXT_CFG_PWR_DOWN);
183187
reg |= EXT_GPHY_RESET;
184188
bcmgenet_ext_writel(priv, reg, EXT_GPHY_CTRL);
185-
mdelay(2);
189+
mdelay(1);
186190

187191
reg &= ~EXT_GPHY_RESET;
188192
bcmgenet_ext_writel(priv, reg, EXT_GPHY_CTRL);
189-
udelay(20);
193+
udelay(60);
190194
}
191195
}
192196

0 commit comments

Comments
 (0)