- Add a call to phy_reset() in ksz9031_config() to ensure the PHY is
  properly reset during initialization.
- This clears the power-down bit and ensures the PHY recovers correctly
  after Linux reboot.

Tested on Agilex5 hardware with KSZ90X1 PHY.

Signed-off-by: Boon Khai Ng <[email protected]>
---
 drivers/net/phy/micrel_ksz90x1.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/net/phy/micrel_ksz90x1.c b/drivers/net/phy/micrel_ksz90x1.c
index f357e0f1c77..1a7116f4ddd 100644
--- a/drivers/net/phy/micrel_ksz90x1.c
+++ b/drivers/net/phy/micrel_ksz90x1.c
@@ -407,6 +407,9 @@ static int ksz9031_config(struct phy_device *phydev)
        if (ret)
                return ret;
 
+       /* soft reset */
+       phy_reset(phydev);
+
        ksz90x1_workaround_asymmetric_pause(phydev);
 
        /* add an option to disable the gigabit feature of this PHY */
-- 
2.43.7

Reply via email to