rapidio/tsi721_dma: advance queue processing from transfer submit call
authorAlexandre Bounine <[email protected]>
Tue, 2 Aug 2016 21:06:46 +0000 (14:06 -0700)
committerLinus Torvalds <[email protected]>
Tue, 2 Aug 2016 23:35:35 +0000 (19:35 -0400)
Add advancing transfer queue immediately from transfer submit call.  DMA
performance improvement: This will start transfer without waiting for
'issue_pending' command if there is no DMA transfer in progress.

Link: http://lkml.kernel.org/r/[email protected]
Signed-off-by: Alexandre Bounine <[email protected]>
Cc: Matt Porter <[email protected]>
Cc: Andre van Herk <[email protected]>
Cc: Barry Wood <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
drivers/rapidio/devices/tsi721_dma.c

index 13c669bac019c56cfc47a3f647be8961339a00e5..e2a418598129649dcde4c5fb551563dd6ceb7b34 100644 (file)
@@ -726,6 +726,7 @@ static dma_cookie_t tsi721_tx_submit(struct dma_async_tx_descriptor *txd)
        cookie = dma_cookie_assign(txd);
        desc->status = DMA_IN_PROGRESS;
        list_add_tail(&desc->desc_node, &bdma_chan->queue);
+       tsi721_advance_work(bdma_chan, NULL);
 
        spin_unlock_bh(&bdma_chan->lock);
        return cookie;