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

Configure Feed

Select the types of activity you want to include in your feed.

net: phy: micrel: Add ksz9131_resume()

The Renesas RZ/G3E SMARC EVK uses KSZ9131RNXC phy. On deep power state,
PHY loses the power and on wakeup the rgmii delays are not reconfigured
causing it to fail.

Replace the callback kszphy_resume()->ksz9131_resume() for reconfiguring
the rgmii_delay when it exits from PM suspend state.

Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Link: https://patch.msgid.link/20250711054029.48536-1-biju.das.jz@bp.renesas.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>

authored by

Biju Das and committed by
Jakub Kicinski
f25a7eaa b06c4311

+9 -1
+9 -1
drivers/net/phy/micrel.c
··· 5633 5633 return kszphy_generic_suspend(phydev); 5634 5634 } 5635 5635 5636 + static int ksz9131_resume(struct phy_device *phydev) 5637 + { 5638 + if (phydev->suspended && phy_interface_is_rgmii(phydev)) 5639 + ksz9131_config_rgmii_delay(phydev); 5640 + 5641 + return kszphy_resume(phydev); 5642 + } 5643 + 5636 5644 static struct phy_driver ksphy_driver[] = { 5637 5645 { 5638 5646 .phy_id = PHY_ID_KS8737, ··· 5887 5879 .get_strings = kszphy_get_strings, 5888 5880 .get_stats = kszphy_get_stats, 5889 5881 .suspend = kszphy_suspend, 5890 - .resume = kszphy_resume, 5882 + .resume = ksz9131_resume, 5891 5883 .cable_test_start = ksz9x31_cable_test_start, 5892 5884 .cable_test_get_status = ksz9x31_cable_test_get_status, 5893 5885 .get_features = ksz9477_get_features,