Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

bus: bt1-axi: change to use devm_clk_get_enabled() helper

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>

authored by

Wu Bo and committed by
Thomas Bogendoerfer
854527e0 58f28a2e

+2 -21
+2 -21
drivers/bus/bt1-axi.c
··· 146 146 return ret; 147 147 } 148 148 149 - static void bt1_axi_disable_clk(void *data) 150 - { 151 - struct bt1_axi *axi = data; 152 - 153 - clk_disable_unprepare(axi->aclk); 154 - } 155 - 156 149 static int bt1_axi_request_clk(struct bt1_axi *axi) 157 150 { 158 - int ret; 159 - 160 - axi->aclk = devm_clk_get(axi->dev, "aclk"); 151 + axi->aclk = devm_clk_get_enabled(axi->dev, "aclk"); 161 152 if (IS_ERR(axi->aclk)) 162 153 return dev_err_probe(axi->dev, PTR_ERR(axi->aclk), 163 154 "Couldn't get AXI Interconnect clock\n"); 164 155 165 - ret = clk_prepare_enable(axi->aclk); 166 - if (ret) { 167 - dev_err(axi->dev, "Couldn't enable the AXI clock\n"); 168 - return ret; 169 - } 170 - 171 - ret = devm_add_action_or_reset(axi->dev, bt1_axi_disable_clk, axi); 172 - if (ret) 173 - dev_err(axi->dev, "Can't add AXI clock disable action\n"); 174 - 175 - return ret; 156 + return 0; 176 157 } 177 158 178 159 static int bt1_axi_request_irq(struct bt1_axi *axi)