[PATCH v3 7/7] ASoC: tas2770: expose SDOUT bus keeper via set_tdm_idle

Mark Brown broonie at kernel.org
Thu Mar 12 07:33:05 PDT 2026


On Sun, Mar 01, 2026 at 06:05:26PM +1000, James Calligeros wrote:

> +static int tas2770_set_dai_tdm_idle(struct snd_soc_dai *dai,
> +				    unsigned int tx_mask,
> +				    unsigned int rx_mask,
> +				    int tx_mode, int rx_mode)
> +{

> +	switch (tx_mode) {
> +	case SND_SOC_DAI_TDM_IDLE_PULLDOWN:
> +		ret = snd_soc_component_update_bits(component, TAS2770_DIN_PD,
> +						    TAS2770_DIN_PD_SDOUT,
> +						    TAS2770_DIN_PD_SDOUT);
> +		if (ret)
> +			return ret;
> +
> +		break;

This and all the other cases only updates the bits it's specifically
setting for the mode, so _ZERO and _HIZ don't update the pull and this
doesn't update the _KEEP/_FILL settings.  Not sure how often anyone is
going to change this at runtime though.

> +	case SND_SOC_DAI_TDM_IDLE_OFF:
> +		ret = snd_soc_component_update_bits(component, TAS2770_DIN_PD,
> +						    TAS2770_DIN_PD_SDOUT, 0);
> +		if (ret)
> +			return ret;
> +
> +		ret = snd_soc_component_update_bits(component, TAS2770_TDM_CFG_REG4,
> +						    TAS2770_TDM_CFG_REG4_TX_KEEPER, 0);

Actually this does _KEEP but not _FILL.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20260312/ad45085f/attachment.sig>


More information about the linux-arm-kernel mailing list