[PATCH] net: phy: broadcom: fix RGMII delays for BCM54210E

Michael Walle mwalle at kernel.org
Thu Nov 27 16:25:27 CET 2025


bcm54210e_config() configures the RGMII delays and then calls
bcm5461_config(). But the latter will do a PHY soft reset and thus
resets the delay settings again. Call bcm5461_config() first to fix it.

Fixes: cba79a1b2e11 ("net: phy: broadcom: add support for BCM54210E")
Signed-off-by: Michael Walle <mwalle at kernel.org>
---
Our board has rgmii-id set as PHY mode. Before commit 4b10bcfdef9c
("net: ethernet: ti: am65-cpsw: fix up PHY mode for fixed RGMII TX
delay") the delay on the MAC side would be disabled and masked the
actual error. After that commit, the MAC side will always enable the TX
delay, but that then uncovered the wrong behavior of the PHY driver.
---
 drivers/net/phy/broadcom.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/phy/broadcom.c b/drivers/net/phy/broadcom.c
index 1c02e3efedc..2d93ce0c966 100644
--- a/drivers/net/phy/broadcom.c
+++ b/drivers/net/phy/broadcom.c
@@ -176,11 +176,11 @@ static int bcm54210e_config(struct phy_device *phydev)
 {
 	int ret;
 
-	ret = bcm54xx_config_clock_delay(phydev);
+	ret = bcm5461_config(phydev);
 	if (ret < 0)
 		return ret;
 
-	ret = bcm5461_config(phydev);
+	ret = bcm54xx_config_clock_delay(phydev);
 	if (ret < 0)
 		return ret;
 
-- 
2.47.3



More information about the U-Boot mailing list