On Mon, Sep 02, 2019 at 04:35:56PM +0300, Daniel Baluta wrote:
On Mon, Sep 2, 2019 at 3:42 PM Mark Brown broonie@kernel.org wrote:
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?
Doing that is the major point of TDM modes. It could even be another SAI on the same bus.
I'm not sure how to really figure out that SAI is running in TDM mode.
As a first approximation you could just check if set_tdm_slots() has been called, it might still be the only device but it's a good first guess.