dmaengine: virt-dma: add support for cyclic DMA periodic callbacks
authorRussell King <rmk+kernel@arm.linux.org.uk>
Mon, 14 May 2012 14:17:20 +0000 (15:17 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Sun, 1 Jul 2012 13:15:23 +0000 (14:15 +0100)
commit571fa74034701391b1be2ad193f684acfdeb75d1
treeb19b5fac263f5c23a053ac7db41d11ce634afb6b
parentfe045874aaf4480386c65baf1acae82af4c5e21f
dmaengine: virt-dma: add support for cyclic DMA periodic callbacks

Add support for cyclic DMA's periodic callbacks.  Drivers are expected
to call vchan_cyclic_callback() when a period has completed, which will
schedule the tasklet to make the callback into the driver.

As callbacks are made from tasklet context, it is important to realise
that we don't guarantee a callback for each completed period, but for
N completed periods where N may be greater than one.

Tested-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
drivers/dma/virt-dma.c
drivers/dma/virt-dma.h