Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

net: bcmgenet: update PHY power down

The disable sequence in bcmgenet_phy_power_set() is updated to
match the inverse sequence and timing (and spacing) of the
enable sequence. This ensures that LEDs driven by the GENET IP
are disabled when the GPHY is powered down.

Signed-off-by: Doug Berger <opendmb@gmail.com>
Signed-off-by: Florian Fainelli <florian.fainelli@broadcom.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://patch.msgid.link/20250614025817.3808354-1-florian.fainelli@broadcom.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>

authored by

Doug Berger and committed by
Jakub Kicinski
90b4e1cf 10f3829a

+7 -2
+7 -2
drivers/net/ethernet/broadcom/genet/bcmmii.c
··· 169 169 170 170 reg &= ~EXT_GPHY_RESET; 171 171 } else { 172 - reg |= EXT_CFG_IDDQ_BIAS | EXT_CFG_PWR_DOWN | 173 - EXT_GPHY_RESET | EXT_CFG_IDDQ_GLOBAL_PWR; 172 + reg |= EXT_GPHY_RESET; 174 173 bcmgenet_ext_writel(priv, reg, EXT_GPHY_CTRL); 175 174 mdelay(1); 175 + 176 + reg |= EXT_CFG_IDDQ_BIAS | EXT_CFG_PWR_DOWN | 177 + EXT_CFG_IDDQ_GLOBAL_PWR; 178 + bcmgenet_ext_writel(priv, reg, EXT_GPHY_CTRL); 179 + mdelay(1); 180 + 176 181 reg |= EXT_CK25_DIS; 177 182 } 178 183 bcmgenet_ext_writel(priv, reg, EXT_GPHY_CTRL);