The stmmac_remove_config_dt() method needs to be called on the device
remove procedure otherwise for at least some of device-nodes will be left
requested.

Fixes: d2ed0a7755fe ("net: ethernet: stmmac: fix of-node and fixed-link-phydev 
leaks")
Signed-off-by: Serge Semin <sergey.se...@baikalelectronics.ru>
---
 drivers/net/ethernet/stmicro/stmmac/dwmac-sti.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-sti.c 
b/drivers/net/ethernet/stmicro/stmmac/dwmac-sti.c
index e1b63df6f96f..3454c5eff822 100644
--- a/drivers/net/ethernet/stmicro/stmmac/dwmac-sti.c
+++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-sti.c
@@ -370,11 +370,14 @@ static int sti_dwmac_probe(struct platform_device *pdev)
 
 static int sti_dwmac_remove(struct platform_device *pdev)
 {
+       struct stmmac_priv *priv = netdev_priv(platform_get_drvdata(pdev));
        struct sti_dwmac *dwmac = get_stmmac_bsp_priv(&pdev->dev);
        int ret = stmmac_dvr_remove(&pdev->dev);
 
        clk_disable_unprepare(dwmac->clk);
 
+       stmmac_remove_config_dt(pdev, priv->plat);
+
        return ret;
 }
 
-- 
2.29.2

Reply via email to