[PATCH] ASoC: cs4265: Fix the duplicated control name

Charles Keepax ckeepax at opensource.cirrus.com
Tue Feb 15 11:19:50 CET 2022


On Mon, Feb 14, 2022 at 04:57:16PM -0300, Fabio Estevam wrote:
> From: Fabio Estevam <festevam at denx.de>
> Currently, the following error messages are seen during boot:
> 
> asoc-simple-card sound: control 2:0:0:SPDIF Switch:0 is already present
> cs4265 1-004f: ASoC: failed to add widget SPDIF dapm kcontrol SPDIF Switch: -16
> 
> Quoting Mark Brown:
> 
> "The driver is just plain buggy, it defines both a regular SPIDF Switch
> control and a SND_SOC_DAPM_SWITCH() called SPDIF both of which will
> create an identically named control, it can never have loaded without
> error.  One or both of those has to be renamed."
> 
> Rename it from "SPDIF Switch" to "SPDIF" to avoid the name confict.
> 
> Signed-off-by: Fabio Estevam <festevam at denx.de>
> ---
>  sound/soc/codecs/cs4265.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/sound/soc/codecs/cs4265.c b/sound/soc/codecs/cs4265.c
> index c338c9f6cf91..8891e9275cba 100644
> --- a/sound/soc/codecs/cs4265.c
> +++ b/sound/soc/codecs/cs4265.c
> @@ -150,7 +150,7 @@ static const struct snd_kcontrol_new cs4265_snd_controls[] = {
>  	SOC_SINGLE("E to F Buffer Disable Switch", CS4265_SPDIF_CTL1,
>  				6, 1, 0),
>  	SOC_ENUM("C Data Access", cam_mode_enum),
> -	SOC_SINGLE("SPDIF Switch", CS4265_SPDIF_CTL2, 5, 1, 1),
> +	SOC_SINGLE("SPDIF", CS4265_SPDIF_CTL2, 5, 1, 1),

Looking through the code I think its probably better to combine
the two controls here. It looks like you would need to set both
to enable the SPDIF and I don't really see any reason for them to
be different. I think you can just move the register bits onto
the DAPM widget and have DAPM control them.

This patch also probably needs a fixes tag:

Fixes: f853d6b3ba34 ("ASoC: cs4265: Add a S/PDIF enable switch")

Apologies for missing this in my review of the original patch.
Let me know if you want me to have a bash at combining them.

Thanks,
Charles


More information about the Alsa-devel mailing list