diff options
author | Purna Chandra Mandal <purna.mandal@microchip.com> | 2016-05-17 07:05:50 +0200 |
---|---|---|
committer | Stephen Boyd <sboyd@codeaurora.org> | 2016-08-25 01:05:23 +0200 |
commit | 12f53b2432ad1a2a3f09cf9b772a467b2f20e040 (patch) | |
tree | 8e544e1ba829378b980d25171c9e39842f1fa81f /drivers | |
parent | Merge branch 'clk-meson-gxbb-ao' into clk-next (diff) | |
download | linux-12f53b2432ad1a2a3f09cf9b772a467b2f20e040.tar.xz linux-12f53b2432ad1a2a3f09cf9b772a467b2f20e040.zip |
clk: microchip: use readl_poll_timeout() in pbclk_set_rate().
pbclk_set_rate() is using readl_poll_timeout_atomic() even
though spinlock is released. Fix it by replacing with
readl_poll_timeout().
Signed-off-by: Purna Chandra Mandal <purna.mandal@microchip.com>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/clk/microchip/clk-core.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/clk/microchip/clk-core.c b/drivers/clk/microchip/clk-core.c index ca85cea17839..c3b301463425 100644 --- a/drivers/clk/microchip/clk-core.c +++ b/drivers/clk/microchip/clk-core.c @@ -199,9 +199,9 @@ static int pbclk_set_rate(struct clk_hw *hw, unsigned long rate, spin_unlock_irqrestore(&pb->core->reg_lock, flags); - /* wait again, for pbdivready */ - err = readl_poll_timeout_atomic(pb->ctrl_reg, v, v & PB_DIV_READY, - 1, LOCK_TIMEOUT_US); + /* wait again for DIV_READY */ + err = readl_poll_timeout(pb->ctrl_reg, v, v & PB_DIV_READY, + 1, LOCK_TIMEOUT_US); if (err) return err; |