[PATCH net v1] net: mv643xx_eth: Fix an error handling path in mv643xx_eth_probe()
From: Christophe JAILLET
Date: Mon Sep 22 2025 - 04:17:33 EST
If an error occurs after calling phy_connect_direct(), phy_disconnect()
should be called, as already done in the remove function.
Fixes: ed94493fb38a ("mv643xx_eth: convert to phylib")
Signed-off-by: Christophe JAILLET <christophe.jaillet@xxxxxxxxxx>
---
This patch is speculative and compile tested only.
Review with care.
---
drivers/net/ethernet/marvell/mv643xx_eth.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/net/ethernet/marvell/mv643xx_eth.c b/drivers/net/ethernet/marvell/mv643xx_eth.c
index 0ab52c57c648..de6a683d7afc 100644
--- a/drivers/net/ethernet/marvell/mv643xx_eth.c
+++ b/drivers/net/ethernet/marvell/mv643xx_eth.c
@@ -3263,6 +3263,8 @@ static int mv643xx_eth_probe(struct platform_device *pdev)
return 0;
out:
+ if (dev->phydev)
+ phy_disconnect(dev->phydev);
if (!IS_ERR(mp->clk))
clk_disable_unprepare(mp->clk);
free_netdev(dev);
--
2.51.0