Re: [PATCH] ASoC: fsl_sai: Set SAI Channel Mode to Output Mode

From: Daniel Baluta
Date: Mon Sep 02 2019 - 09:36:11 EST

On Mon, Sep 2, 2019 at 3:42 PM Mark Brown <broonie@xxxxxxxxxx> wrote:
> On Sat, Aug 31, 2019 at 01:55:14AM +0300, Daniel Baluta wrote:
> > Fix this by setting CHMOD to Output Mode so that pins will output zero
> > when slots are masked or channels are disabled.
> This patch seems to do this unconditionally. This is fine for
> configurations where the SoC is the only thing driving the bus but will
> mean that for TDM configurations where something else also drives some
> of the slots we'll end up with both devices driving simultaneously. The
> safest thing would be to set this only if TDM isn't configured.

I thought that the SAI IP is the single owner of the audio data lines,
so even in TDM
mode SAI IP (which is inside SoC) is the only one adding data on the bus.

Now, you say that there could be two devices driving some of he masked
slots right?
I'm not sure how to really figure out that SAI is running in TDM mode.

RM says:

When enabled, the SAI continuously transmits and/or receives frames of
data. Each
frame consists of a fixed number of words and each word consists of a
fixed number of
bits. Within each frame, any given word can be masked causing the
receiver to ignore
that word and the transmitter to tri-state for the duration of that word.

Will try to ask IP designer about this, thanks a lot for your comment!