slim_msm: Use new clock APIs
Slimbus MSM controller driver calls clk_enable and clk_disable from
non-atomic contexts.
So the calls are just replaced by clk_prepare_enable and
clk_disable_unprepare respectively.
Change-Id: Ieaa5b62d58c153ac70c5d221888860231fedcf4e
Signed-off-by: Sagar Dharia <sdharia@codeaurora.org>
diff --git a/drivers/slimbus/slim-msm-ctrl.c b/drivers/slimbus/slim-msm-ctrl.c
index 22297be..420c93c 100644
--- a/drivers/slimbus/slim-msm-ctrl.c
+++ b/drivers/slimbus/slim-msm-ctrl.c
@@ -821,7 +821,7 @@
timeout = wait_for_completion_timeout(&dev->reconf, HZ);
dev->reconf_busy = false;
if (timeout) {
- clk_disable(dev->rclk);
+ clk_disable_unprepare(dev->rclk);
disable_irq(dev->irq);
}
}
@@ -880,7 +880,7 @@
{
struct msm_slim_ctrl *dev = slim_get_ctrldata(ctrl);
enable_irq(dev->irq);
- clk_enable(dev->rclk);
+ clk_prepare_enable(dev->rclk);
writel_relaxed(1, dev->base + FRM_WAKEUP);
/* Make sure framer wakeup write goes through before exiting function */
mb();
@@ -1913,7 +1913,7 @@
goto err_clk_get_failed;
}
clk_set_rate(dev->rclk, SLIM_ROOT_FREQ);
- clk_enable(dev->rclk);
+ clk_prepare_enable(dev->rclk);
/* Component register initialization */
writel_relaxed(1, dev->base + COMP_CFG);