[PATCH v3] ASoC: fsl_sai: Force a software reset when starting in consumer mode

Fabio Estevam festevam at gmail.com
Thu Jun 26 21:58:01 AEST 2025


Hi Arun,

On Thu, Jun 26, 2025 at 8:52 AM Arun Raghavan <arun at arunraghavan.net> wrote:
>
> From: Arun Raghavan <arun at asymptotic.io>
>
> On an imx8mm platform with an external clock provider, when running the
> receiver (arecord) and triggering an xrun with xrun_injection, we see a
> channel swap/offset. This happens sometimes when running only the
> receiver, but occurs reliably if a transmitter (aplay) is also
> concurrently running.
>
> It seems that the SAI loses track of frame sync during the trigger stop
> -> trigger start cycle that occurs during an xrun. Doing just a FIFO
> reset in this case does not suffice, and only a software reset seems to
> get it back on track.
>
> This looks like the same h/w bug that is already handled for the
> producer case, so we now do the reset unconditionally on config disable.
>
> Signed-off-by: Arun Raghavan <arun at asymptotic.io>
> Reported-by: Pieterjan Camerlynck <p.camerlynck at televic.com>

What about adding a Fixes tag and Cc stable so that it gets backported
to the stable trees?


More information about the Linuxppc-dev mailing list