Relevant chip clocks are disabled in rtl_pll_power_down(), therefore
move calling clk_disable_unprepare() there. Similar for enabling the
clock.

Signed-off-by: Heiner Kallweit <hkallwe...@gmail.com>
---
 drivers/net/ethernet/realtek/r8169_main.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/drivers/net/ethernet/realtek/r8169_main.c 
b/drivers/net/ethernet/realtek/r8169_main.c
index 9f99b3f07..d55bf2cd2 100644
--- a/drivers/net/ethernet/realtek/r8169_main.c
+++ b/drivers/net/ethernet/realtek/r8169_main.c
@@ -2292,10 +2292,14 @@ static void rtl_pll_power_down(struct rtl8169_private 
*tp)
        default:
                break;
        }
+
+       clk_disable_unprepare(tp->clk);
 }
 
 static void rtl_pll_power_up(struct rtl8169_private *tp)
 {
+       clk_prepare_enable(tp->clk);
+
        switch (tp->mac_version) {
        case RTL_GIGA_MAC_VER_25 ... RTL_GIGA_MAC_VER_33:
        case RTL_GIGA_MAC_VER_37:
@@ -4826,7 +4830,6 @@ static int __maybe_unused rtl8169_suspend(struct device 
*device)
        struct rtl8169_private *tp = dev_get_drvdata(device);
 
        rtl8169_net_suspend(tp);
-       clk_disable_unprepare(tp->clk);
 
        return 0;
 }
@@ -4853,8 +4856,6 @@ static int __maybe_unused rtl8169_resume(struct device 
*device)
 
        rtl_rar_set(tp, tp->dev->dev_addr);
 
-       clk_prepare_enable(tp->clk);
-
        if (netif_running(tp->dev))
                __rtl8169_resume(tp);
 
-- 
2.27.0


Reply via email to