]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
ASoC: SDCA: Use named control mux for GE/SU controls
authorCharles Keepax <ckeepax@opensource.cirrus.com>
Tue, 3 Mar 2026 15:53:08 +0000 (15:53 +0000)
committerMark Brown <broonie@kernel.org>
Mon, 16 Mar 2026 18:45:29 +0000 (18:45 +0000)
Most of the time a GE Entity will control many SU Entities and thus the
generated control will use the control name, since the control is
shared. However, in rare cases the GE Entity will only control a single
SU Entity. In this case the control is only linked to a single SU widget
and will thus inherit the name from that. This leads to the naming for
the Selected Mode control to be unpredictable. Update to use the new
named control muxes to always force the use of the control name.

Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Link: https://patch.msgid.link/20260303155308.138989-3-ckeepax@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sdca/sdca_asoc.c

index a0191e5a5a7dd09cb1aab7ddd5857243da66b414..69b4fe96792232c7d37604d37cd537d66dd5930a 100644 (file)
@@ -455,7 +455,7 @@ static int entity_parse_su_device(struct device *dev,
        if (!range)
                return -EINVAL;
 
-       (*widget)->id = snd_soc_dapm_mux;
+       (*widget)->id = snd_soc_dapm_mux_named_ctl;
        (*widget)->kcontrol_news = entity->group->ge.kctl;
        (*widget)->num_kcontrols = 1;
        (*widget)++;