diff options
author | Peter Ujfalusi <peter.ujfalusi@ti.com> | 2012-09-14 08:05:47 -0400 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2012-09-22 11:12:45 -0400 |
commit | ec8b5e48c03790a68cb875fe5064007a9cbdfdd0 (patch) | |
tree | 18c572345b2c54d3d50f234e0e913d9f227363ba /drivers/dma/at_hdmac.c | |
parent | 2dcdf570936168d488acf90be9b04a3d32dafce7 (diff) |
dmaengine: Pass flags via device_prep_dma_cyclic() callback
Change the parameter list of device_prep_dma_cyclic() so the DMA drivers
can receive the flags coming from clients.
This feature can be used during audio operation to disable all audio
related interrupts when the DMA_PREP_INTERRUPT is cleared from the flags.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Acked-by: Shawn Guo <shawn.guo@linaro.org>
Acked-by: Vinod Koul <vinod.koul@linux.intel.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'drivers/dma/at_hdmac.c')
-rw-r--r-- | drivers/dma/at_hdmac.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/dma/at_hdmac.c b/drivers/dma/at_hdmac.c index 3934fcc4e00b..7e5f6b65c651 100644 --- a/drivers/dma/at_hdmac.c +++ b/drivers/dma/at_hdmac.c | |||
@@ -841,12 +841,13 @@ atc_dma_cyclic_fill_desc(struct dma_chan *chan, struct at_desc *desc, | |||
841 | * @buf_len: total number of bytes for the entire buffer | 841 | * @buf_len: total number of bytes for the entire buffer |
842 | * @period_len: number of bytes for each period | 842 | * @period_len: number of bytes for each period |
843 | * @direction: transfer direction, to or from device | 843 | * @direction: transfer direction, to or from device |
844 | * @flags: tx descriptor status flags | ||
844 | * @context: transfer context (ignored) | 845 | * @context: transfer context (ignored) |
845 | */ | 846 | */ |
846 | static struct dma_async_tx_descriptor * | 847 | static struct dma_async_tx_descriptor * |
847 | atc_prep_dma_cyclic(struct dma_chan *chan, dma_addr_t buf_addr, size_t buf_len, | 848 | atc_prep_dma_cyclic(struct dma_chan *chan, dma_addr_t buf_addr, size_t buf_len, |
848 | size_t period_len, enum dma_transfer_direction direction, | 849 | size_t period_len, enum dma_transfer_direction direction, |
849 | void *context) | 850 | unsigned long flags, void *context) |
850 | { | 851 | { |
851 | struct at_dma_chan *atchan = to_at_dma_chan(chan); | 852 | struct at_dma_chan *atchan = to_at_dma_chan(chan); |
852 | struct at_dma_slave *atslave = chan->private; | 853 | struct at_dma_slave *atslave = chan->private; |