phy: ti-pipe3: make clk operations symmetric in probe and remove
authorChuhong Yuan <hslester96@gmail.com>
Wed, 4 Dec 2019 11:47:59 +0000 (19:47 +0800)
committerKishon Vijay Abraham I <kishon@ti.com>
Fri, 20 Dec 2019 11:30:45 +0000 (17:00 +0530)
The driver calls clk_prepare_enable in probe but the corresponding
clk_disable_unprepare() is in ti_pipe3_disable_clocks().
Move clk_disable_unprepare() to remove to make them symmetric.

Signed-off-by: Chuhong Yuan <hslester96@gmail.com>
Acked-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
drivers/phy/ti/phy-ti-pipe3.c

index edd6859..a879465 100644 (file)
@@ -850,6 +850,12 @@ static int ti_pipe3_probe(struct platform_device *pdev)
 
 static int ti_pipe3_remove(struct platform_device *pdev)
 {
+       struct ti_pipe3 *phy = platform_get_drvdata(pdev);
+
+       if (phy->mode == PIPE3_MODE_SATA) {
+               clk_disable_unprepare(phy->refclk);
+               phy->sata_refclk_enabled = false;
+       }
        pm_runtime_disable(&pdev->dev);
 
        return 0;
@@ -900,18 +906,8 @@ static void ti_pipe3_disable_clocks(struct ti_pipe3 *phy)
 {
        if (!IS_ERR(phy->wkupclk))
                clk_disable_unprepare(phy->wkupclk);
-       if (!IS_ERR(phy->refclk)) {
+       if (!IS_ERR(phy->refclk))
                clk_disable_unprepare(phy->refclk);
-               /*
-                * SATA refclk needs an additional disable as we left it
-                * on in probe to avoid Errata i783
-                */
-               if (phy->sata_refclk_enabled) {
-                       clk_disable_unprepare(phy->refclk);
-                       phy->sata_refclk_enabled = false;
-               }
-       }
-
        if (!IS_ERR(phy->div_clk))
                clk_disable_unprepare(phy->div_clk);
 }