summaryrefslogtreecommitdiffstats
path: root/drivers/dma
diff options
context:
space:
mode:
authorPeter Ujfalusi2012-09-14 14:05:44 +0200
committerMark Brown2012-09-22 17:12:35 +0200
commitccffa3870a7ec2b59cf051b745220c56f423d182 (patch)
tree95c6c61c0f7ceb1b255d4b3f838ecd1d45bef863 /drivers/dma
parentASoC: fsl: register the wm9712-codec (diff)
downloadkernel-qcow2-linux-ccffa3870a7ec2b59cf051b745220c56f423d182.tar.gz
kernel-qcow2-linux-ccffa3870a7ec2b59cf051b745220c56f423d182.tar.xz
kernel-qcow2-linux-ccffa3870a7ec2b59cf051b745220c56f423d182.zip
dmaengine: omap: Support for element mode in cyclic DMA
When src_maxburst/dst_maxburst is set to 0 by the users of cyclic DMA (mostly audio) indicates that we should configure the omap DMA to element sync mode instead of packet mode. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Acked-by: Vinod Koul <vinod.koul@linux.intel.com> Tested-by: Janusz Krzysztofik <jkrzyszt@tis.icnet.pl> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'drivers/dma')
-rw-r--r--drivers/dma/omap-dma.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/dma/omap-dma.c b/drivers/dma/omap-dma.c
index ae0561826137..b77a40db2856 100644
--- a/drivers/dma/omap-dma.c
+++ b/drivers/dma/omap-dma.c
@@ -413,7 +413,10 @@ static struct dma_async_tx_descriptor *omap_dma_prep_dma_cyclic(
d->dev_addr = dev_addr;
d->fi = burst;
d->es = es;
- d->sync_mode = OMAP_DMA_SYNC_PACKET;
+ if (burst)
+ d->sync_mode = OMAP_DMA_SYNC_PACKET;
+ else
+ d->sync_mode = OMAP_DMA_SYNC_ELEMENT;
d->sync_type = sync_type;
d->periph_port = OMAP_DMA_PORT_MPUI;
d->sg[0].addr = buf_addr;