On Tue, 16 Jul 2019 05:58:15 +0200, Channaiah Vanitha (RBEI/ECF3) wrote:
Hello Jaroslav-san, Takashi-san,
Can you please reply your feedback for below mail chain.
Best regards, Vanitha Channaiah RBEI/ECF3
From: Channaiah Vanitha (RBEI/ECF3) Sent: Tuesday, June 18, 2019 4:45 AM To: 'Jaroslav Kysela' perex@perex.cz; Takashi Iwai tiwai@suse.de Cc: Wischer Timo (ADITG/ESS) twischer@de.adit-jv.com; alsa-devel@alsa-project.org Subject: RE: [alsa-devel] [PATCH v2 6/6] pcm: Update pcm->avail_min with needed_slave_avail_min, after reading unaligned frames
Hello Jaroslav-san, Takashi-san,
Which hardware exactly? The hw_ptr should be reset when the streaming starts. It appears that the problem is specific to the direct plugins only when the period wakeups are a bit different than for the direct hardware access.
Firstly, sorry for late reply.
Issue is seen in RCar Kingfischer H3 es2.0 target.
The issue was seen during the below commit : commit 07b7acb51d283d8469696c906b91f1882696a4d4 ("ASoC: rsnd: update pointer more accurate") https://patchwork.kernel.org/patch/9772671/
There could be a non-uniform jitter exists between when interrupt raised [rcar_dmac_isr_channel(), rcar_dmac_isr_channel_thread()] and the interrupt is processed to read/calculate the DMA position [dma_set_residue()] This could result in unaligned hw_ptr reported at user-space alsa lib.
It looks rather like a workaround for the bug in driver. Better fix the driver instead.
thanks,
Takashi