]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
bus: bt1-apb: change to use devm_clk_get_enabled() helper
authorWu Bo <bo.wu@vivo.com>
Tue, 27 Aug 2024 02:53:58 +0000 (20:53 -0600)
committerThomas Bogendoerfer <tsbogend@alpha.franken.de>
Thu, 29 Aug 2024 08:45:13 +0000 (10:45 +0200)
Use devm_clk_get_enabled() instead of devm_clk_get() to make the code
cleaner and avoid calling clk_disable_unprepare()

Signed-off-by: Wu Bo <bo.wu@vivo.com>
Acked-by: Serge Semin <fancer.lancer@gmail.com>
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
drivers/bus/bt1-apb.c

index 595fb22b73e0689a8f7b26f9bcbbae052ff8b9e9..7463124b6dd92f80d9da6c2b2744a6023eaa9289 100644 (file)
@@ -185,34 +185,13 @@ static int bt1_apb_request_rst(struct bt1_apb *apb)
        return ret;
 }
 
-static void bt1_apb_disable_clk(void *data)
-{
-       struct bt1_apb *apb = data;
-
-       clk_disable_unprepare(apb->pclk);
-}
-
 static int bt1_apb_request_clk(struct bt1_apb *apb)
 {
-       int ret;
-
-       apb->pclk = devm_clk_get(apb->dev, "pclk");
+       apb->pclk = devm_clk_get_enabled(apb->dev, "pclk");
        if (IS_ERR(apb->pclk))
                return dev_err_probe(apb->dev, PTR_ERR(apb->pclk),
                                     "Couldn't get APB clock descriptor\n");
 
-       ret = clk_prepare_enable(apb->pclk);
-       if (ret) {
-               dev_err(apb->dev, "Couldn't enable the APB clock\n");
-               return ret;
-       }
-
-       ret = devm_add_action_or_reset(apb->dev, bt1_apb_disable_clk, apb);
-       if (ret) {
-               dev_err(apb->dev, "Can't add APB EHB clocks disable action\n");
-               return ret;
-       }
-
        apb->rate = clk_get_rate(apb->pclk);
        if (!apb->rate) {
                dev_err(apb->dev, "Invalid clock rate\n");