[Sound-open-firmware] [PATCH_V2] cnl: dma: fix playback failed at second time
Keyon Jie
yang.jie at linux.intel.com
Fri Mar 2 07:35:12 CET 2018
On 2018年03月02日 13:49, Rander Wang wrote:
> Stop dma at the end of playback, or next time dma
> is not avialable for playback
>
> ---
> V2: 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));
> + }
Bingo, I forgot add this fix for CNL handler.
Thanks,
~Keyon
> #endif
> /* end of a transfer */
> if ((status_tfr & mask) &&
>
More information about the Sound-open-firmware
mailing list