[Sound-open-firmware] [RFC/RFT] dai: Make system stable by moving DAI buffer pointer update location

Liam Girdwood liam.r.girdwood at linux.intel.com
Sat Mar 31 16:47:38 CEST 2018


On Sat, 2018-03-31 at 00:31 +0800, Keyon Jie wrote:
> From: Wu Zhigang <zhigang.wu at linux.intel.com>
> 
> Move the DAI's buffer pointer update location from dai_dma_cb()
> to dai_copy(). This will make pipeline more stable. The xrun possibility
> will be lower.Even in xrun it will recover, it will not have dsp oops.
> DAI's buffer pointer will be updated in the pipeline copy sequence
> as other components did. Then the DMA will not update the buffer pointer
> by itself. in HOST--->VOL--->DAI pipeline, when DMA finished, it has to
> reschedule the pipeline to let the pointer update. this could avoid
> the xrun when adjust the read and write pointers by different componets.
> 
> Signed-off-by: Wu Zhigang <zhigang.wu at linux.intel.com>
> Tested-by: Keyon Jie <yang.jie at linux.intel.com>
> ---
> 

The $SUBJECT and commit message are a bit misleading as this is really fixing a
race we have with our xrun handling. I've rewritten and applied.

Thanks

Liam


More information about the Sound-open-firmware mailing list