summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorUlf Hansson <ulf.hansson@linaro.org>2014-04-23 21:52:01 +0200
committerVinod Koul <vinod.koul@intel.com>2014-05-07 11:50:27 +0530
commit80245216ccbdb4b1dce4db714e0fdc692c81af6d (patch)
tree9d58e0b7371201322d986c520207fb6af157b2e8
parentc31b6ae1b4a75680765ac66d80e2e107e8bf05a0 (diff)
downloadop-kernel-dev-80245216ccbdb4b1dce4db714e0fdc692c81af6d.zip
op-kernel-dev-80245216ccbdb4b1dce4db714e0fdc692c81af6d.tar.gz
dma: ste_dma40: Maintain spinlock order while handling pause
The runtime PM resume callback needs to be executed while holding the spinlock, make sure to maintain this for the pause operation as well. Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> Acked-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
-rw-r--r--drivers/dma/ste_dma40.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/dma/ste_dma40.c b/drivers/dma/ste_dma40.c
index bf18c78..6e97cf6 100644
--- a/drivers/dma/ste_dma40.c
+++ b/drivers/dma/ste_dma40.c
@@ -1495,8 +1495,8 @@ static int d40_pause(struct d40_chan *d40c)
if (!d40c->busy)
return 0;
- pm_runtime_get_sync(d40c->base->dev);
spin_lock_irqsave(&d40c->lock, flags);
+ pm_runtime_get_sync(d40c->base->dev);
res = d40_channel_execute_command(d40c, D40_DMA_SUSPEND_REQ);
OpenPOWER on IntegriCloud