[PATCH] ASoC: fsl_sai: Remove unnecessary FIFO reset in ISR
Nicolin Chen
nicoleotsuka at gmail.com
Wed Aug 17 08:35:22 CEST 2022
On Tue, Aug 16, 2022 at 11:29 PM Shengjiu Wang <shengjiu.wang at gmail.com> wrote:
>> > The FIFO reset drops the words in the FIFO, which may cause
>> > channel swap when SAI module is running, especially when the
>> > DMA speed is low. So it is not good to do FIFO reset in ISR,
>> > then remove the operation.
>>
>> I don't recall the details of adding this many years ago, but
>> leaving underrun/overrun errors unhandled does not sound right
>> to me either. Would it result in a channel swap also? Perhaps
>> there needs to be a reset routine that stops and restarts the
>> DMA as well?
>
>
> Remove the reset, the channel swap is gone.
I have no doubt about that :)
> IMO, no need to handle the underrun/overrun in driver, the SAI
> hardware can handle the read/write pointer itself when xrun happen,
> and we don't need reset routine.
That'd be okay then.
More information about the Alsa-devel
mailing list