aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2014-09-28 16:45:16 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2014-09-28 16:45:16 -0400
commit4092dc8f0bcc0963c045460157107d7461a094d7 (patch)
tree2f659d7ce5b5ea8e9fc27292e69f0b2a84caee04
parent1e3827bf8aebe29af2d6e49b89d85dfae4d0154f (diff)
parentbfb607451786829430ecdd5bcd51c5dac03e3639 (diff)
Merge branch 'fixes' of git://git.infradead.org/users/vkoul/slave-dma
Pull slave-dmaengine fixes from Vinod Koul: "Two small fixes for omap dmaengine driver which fixes cyclic suspend and resume" * 'fixes' of git://git.infradead.org/users/vkoul/slave-dma: dmaengine: omap-dma: Restore the CLINK_CTRL in resume path dmaengine: omap-dma: Add memory barrier to dma_resume path
-rw-r--r--drivers/dma/omap-dma.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/dma/omap-dma.c b/drivers/dma/omap-dma.c
index 4cf7d9a950d7..bbea8243f9e8 100644
--- a/drivers/dma/omap-dma.c
+++ b/drivers/dma/omap-dma.c
@@ -1017,6 +1017,11 @@ static int omap_dma_resume(struct omap_chan *c)
1017 return -EINVAL; 1017 return -EINVAL;
1018 1018
1019 if (c->paused) { 1019 if (c->paused) {
1020 mb();
1021
1022 /* Restore channel link register */
1023 omap_dma_chan_write(c, CLNK_CTRL, c->desc->clnk_ctrl);
1024
1020 omap_dma_start(c, c->desc); 1025 omap_dma_start(c, c->desc);
1021 c->paused = false; 1026 c->paused = false;
1022 } 1027 }