[alsa-devel] [PATCH 09/11] ASoC: Intel: Skylake: Fix DMA position reporting for capture stream
Pierre-Louis Bossart
pierre-louis.bossart at linux.intel.com
Thu Mar 23 16:31:30 CET 2017
>>> * HAD space reflects the actual data that is transferred.
>>> * Use the position buffer for capture, as DPIB write gets
>>> * completed earlier than the actual data written to the DDR.
>>> + *
>>> + * For capture stream following workaround is required to fix the
>>> + * incorrect position reporting.
>>> + *
>>> + * 1. Wait for 20us before reading the DMA position in buffer once
>>> + * the interrupt is generated for stream completion.
>>
>> is this really 20us regardless of the sampling frequency/channel count?
>> 20us is one sample at 48kHz so wondering how generic this work-around is...
>
> Yes, this is independent of PCM parameters. Update happens on the
> HDA frame boundary i.e. 20.833uSec.
Makes sense. it's worth updating the comments though to make it
self-explanatory.
More information about the Alsa-devel
mailing list