net: fec: fix the clk mismatch in failed_reset path
authorAndy Duan <fugang.duan@nxp.com>
Thu, 23 May 2019 01:55:28 +0000 (01:55 +0000)
committerDavid S. Miller <davem@davemloft.net>
Fri, 24 May 2019 20:12:19 +0000 (13:12 -0700)
Fix the clk mismatch in the error path "failed_reset" because
below error path will disable clk_ahb and clk_ipg directly, it
should use pm_runtime_put_noidle() instead of pm_runtime_put()
to avoid to call runtime resume callback.

Reported-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
Tested-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/freescale/fec_main.c

index aa7d4e27c5d121497c8511dff2c300a81d351990..38f10f7dcbc38fa6a55a7d165b19fbc75272e708 100644 (file)
@@ -3556,7 +3556,7 @@ failed_init:
        if (fep->reg_phy)
                regulator_disable(fep->reg_phy);
 failed_reset:
-       pm_runtime_put(&pdev->dev);
+       pm_runtime_put_noidle(&pdev->dev);
        pm_runtime_disable(&pdev->dev);
 failed_regulator:
        clk_disable_unprepare(fep->clk_ahb);