Re: [PATCH v3 5/7] ASoC: soc-dai: add common operation to set TDM idle mode

From: Kuninori Morimoto

Date: Mon Mar 02 2026 - 21:14:02 EST



Hi James

> Some audio devices, like certain Texas Instruments codecs, integrate
> configurable bus keepers that dictate the codec's behaviour during
> idle TDM slots. Now that we have definitions for various idle modes,
> add a snd_soc_dai_set_tdm_idle() operation to control this in a
> standardised way.
>
> This is useful on Apple Silicon laptops, where a single I2S bus is
> comprised of two physical lines which are ORed just before the
> receiving port. When a codec on one line is transmitting, we must
> guarantee that the other line is low. We can achieve this by
> configuring one codec on each line to use its bus keeper to fill
> its line with zeroes during the active slots of the other line.
>
> Signed-off-by: James Calligeros <jcalligeros99@xxxxxxxxx>
> ---
(snip)
> +int snd_soc_dai_set_tdm_idle(struct snd_soc_dai *dai,
> + unsigned int tx_mask, unsigned int rx_mask,
> + int tx_mode, int rx_mode);

Do we need "rx_mode" ?
Only "tx_mode" is enough if my understanding was correct.

This patch-set adds new snd_soc_dai_set_tdm_idle(), but no one is calling
it. Who use it ??

Thank you for your help !!

Best regards
---
Kuninori Morimoto