clocksource/drivers/sp804: Use clk_prepare_enable and clk_disable_unprepare
authorKefeng Wang <wangkefeng.wang@huawei.com>
Thu, 29 Oct 2020 12:33:15 +0000 (20:33 +0800)
committerDaniel Lezcano <daniel.lezcano@linaro.org>
Thu, 3 Dec 2020 18:16:17 +0000 (19:16 +0100)
Directly use clk_prepare_enable and clk_disable_unprepare.

Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Link: https://lore.kernel.org/r/20201029123317.90286-3-wangkefeng.wang@huawei.com
drivers/clocksource/timer-sp804.c

index 22a68cb..d74788b 100644 (file)
@@ -68,17 +68,9 @@ static long __init sp804_get_clock_rate(struct clk *clk, const char *name)
                return PTR_ERR(clk);
        }
 
-       err = clk_prepare(clk);
-       if (err) {
-               pr_err("sp804: clock failed to prepare: %d\n", err);
-               clk_put(clk);
-               return err;
-       }
-
-       err = clk_enable(clk);
+       err = clk_prepare_enable(clk);
        if (err) {
                pr_err("sp804: clock failed to enable: %d\n", err);
-               clk_unprepare(clk);
                clk_put(clk);
                return err;
        }
@@ -86,8 +78,7 @@ static long __init sp804_get_clock_rate(struct clk *clk, const char *name)
        rate = clk_get_rate(clk);
        if (rate < 0) {
                pr_err("sp804: clock failed to get rate: %ld\n", rate);
-               clk_disable(clk);
-               clk_unprepare(clk);
+               clk_disable_unprepare(clk);
                clk_put(clk);
        }