aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFabio Baltieri <fabio.baltieri@linaro.org>2013-02-14 04:03:10 -0500
committerVinod Koul <vinod.koul@intel.com>2013-02-14 09:24:31 -0500
commit7dd145252574e34d92ad574e5168e4115639c0be (patch)
tree0b68fb06fbe4b6e431d72411bffc053c3c9ccedf
parente68b1130dfbb834a4a028df01133591aeb59d241 (diff)
dmaengine: ste_dma40: do not remove descriptors for cyclic transfers
Fix dma_tc_handle() to call d40_desc_remove() and d40_desc_done() only for non-cyclic transfers, as this was breaking ux500_pcm since introduced in: d49278e dmaengine: dma40: Add support to split up large elements Reported-by: Shreshtha Kumar Sahu <shreshthakumar.sahu@stericsson.com> Acked-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Fabio Baltieri <fabio.baltieri@linaro.org> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
-rw-r--r--drivers/dma/ste_dma40.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/dma/ste_dma40.c b/drivers/dma/ste_dma40.c
index ad860a221c33..1734feec47b1 100644
--- a/drivers/dma/ste_dma40.c
+++ b/drivers/dma/ste_dma40.c
@@ -1570,10 +1570,10 @@ static void dma_tc_handle(struct d40_chan *d40c)
1570 d40c->busy = false; 1570 d40c->busy = false;
1571 pm_runtime_mark_last_busy(d40c->base->dev); 1571 pm_runtime_mark_last_busy(d40c->base->dev);
1572 pm_runtime_put_autosuspend(d40c->base->dev); 1572 pm_runtime_put_autosuspend(d40c->base->dev);
1573 }
1574 1573
1575 d40_desc_remove(d40d); 1574 d40_desc_remove(d40d);
1576 d40_desc_done(d40c, d40d); 1575 d40_desc_done(d40c, d40d);
1576 }
1577 1577
1578 d40c->pending_tx++; 1578 d40c->pending_tx++;
1579 tasklet_schedule(&d40c->tasklet); 1579 tasklet_schedule(&d40c->tasklet);