diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2012-05-17 09:57:13 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-05-17 09:57:13 -0700 |
commit | 1be5f0b7575e090fd100a98b303860879b5800de (patch) | |
tree | 039e46bc92b93e68dbb9645413d5fd5007a411d6 /drivers/dma/ep93xx_dma.c | |
parent | 42e8b9c00176dd3a2f11d05f195131bac851558b (diff) | |
parent | d41160524d8d8ee721296e5c7e15f1ed727df7eb (diff) | |
download | linux-1be5f0b7575e090fd100a98b303860879b5800de.tar.bz2 |
Merge branch 'fixes' of git://git.infradead.org/users/vkoul/slave-dma
Pull slave-dmaengine fixes fromVinod Koul:
"fixes of cylic dma usages in slave dma drivers"
* 'fixes' of git://git.infradead.org/users/vkoul/slave-dma:
dmaengine: fix cyclic dma usage
dmaengine: pl330: dont complete descriptor for cyclic dma
Diffstat (limited to 'drivers/dma/ep93xx_dma.c')
-rw-r--r-- | drivers/dma/ep93xx_dma.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/dma/ep93xx_dma.c b/drivers/dma/ep93xx_dma.c index e6f133b78dc2..f6e9b572b998 100644 --- a/drivers/dma/ep93xx_dma.c +++ b/drivers/dma/ep93xx_dma.c @@ -703,7 +703,9 @@ static void ep93xx_dma_tasklet(unsigned long data) desc = ep93xx_dma_get_active(edmac); if (desc) { if (desc->complete) { - dma_cookie_complete(&desc->txd); + /* mark descriptor complete for non cyclic case only */ + if (!test_bit(EP93XX_DMA_IS_CYCLIC, &edmac->flags)) + dma_cookie_complete(&desc->txd); list_splice_init(&edmac->active, &list); } callback = desc->txd.callback; |