[Sound-open-firmware] [PATCH_V3] cnl: dma: fix playback failed at second time
Rander Wang
rander.wang at intel.com
Fri Mar 2 08:17:31 CET 2018
Stop dma at the end of playback, or next time dma
is not available for playback
---
V3: fix typo in comments
Signed-off-by: Rander Wang <rander.wang at intel.com>
---
src/drivers/dw-dma.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/src/drivers/dw-dma.c b/src/drivers/dw-dma.c
index be19e12..15d608c 100644
--- a/src/drivers/dw-dma.c
+++ b/src/drivers/dw-dma.c
@@ -1103,6 +1103,12 @@ static void dw_dma_irq_handler(void *data)
p->chan[i].cb(p->chan[i].cb_data,
DMA_IRQ_TYPE_BLOCK, &next);
}
+
+ if (next.size == DMA_RELOAD_END) {
+ trace_dma("LSo");
+ /* disable channel, finished */
+ dw_write(dma, DW_DMA_CHAN_EN, CHAN_DISABLE(i));
+ }
#endif
/* end of a transfer */
if ((status_tfr & mask) &&
--
2.14.1
More information about the Sound-open-firmware
mailing list