From: Charles Keepax Date: Thu, 6 Mar 2025 12:54:02 +0000 (+0000) Subject: sof-soundwire: Split cs42l43 dmic initialisation X-Git-Tag: v1.2.14~51 X-Git-Url: https://git.alsa-project.org/?a=commitdiff_plain;h=a0d06a696c770310841f28f6c0e71d71ee281613;p=alsa-ucm-conf.git sof-soundwire: Split cs42l43 dmic initialisation Split the initialisation of cs42l43 into a headset part and a dmic part. This will prevent the dmic mute controls getting attached to the mute LED when the codec dmics are not being used. Link: https://lore.kernel.org/alsa-devel/20250306125402.1741562-1-ckeepax@opensource.cirrus.com/ Signed-off-by: Charles Keepax Signed-off-by: Jaroslav Kysela --- diff --git a/ucm2/codecs/cs42l43-dmic/init.conf b/ucm2/codecs/cs42l43-dmic/init.conf new file mode 100644 index 0000000..8abd9d6 --- /dev/null +++ b/ucm2/codecs/cs42l43-dmic/init.conf @@ -0,0 +1,22 @@ +# cs42l43 specific control settings + +LibraryConfig.remap.Config { + ctl.default.map { + "name='cs42l43 Microphone Capture Switch'" { + "name='cs42l43 Decimator 3 Switch'".vindex.0 0 + "name='cs42l43 Decimator 4 Switch'".vindex.1 0 + } + "name='cs42l43 Microphone Capture Volume'" { + "name='cs42l43 Decimator 3 Volume'".vindex.0 0 + "name='cs42l43 Decimator 4 Volume'".vindex.1 0 + } + } +} + +FixedBootSequence [ + cset "name='cs42l43 Decimator 3 Switch' 0" + cset "name='cs42l43 Decimator 4 Switch' 0" + exec "-/sbin/modprobe snd_ctl_led" + sysw "-/class/sound/ctl-led/mic/card${CardNumber}/attach:cs42l43 Decimator 3 Switch" + sysw "-/class/sound/ctl-led/mic/card${CardNumber}/attach:cs42l43 Decimator 4 Switch" +] diff --git a/ucm2/codecs/cs42l43/init.conf b/ucm2/codecs/cs42l43/init.conf index 0fbb517..8e41a0f 100644 --- a/ucm2/codecs/cs42l43/init.conf +++ b/ucm2/codecs/cs42l43/init.conf @@ -2,14 +2,6 @@ LibraryConfig.remap.Config { ctl.default.map { - "name='cs42l43 Microphone Capture Switch'" { - "name='cs42l43 Decimator 3 Switch'".vindex.0 0 - "name='cs42l43 Decimator 4 Switch'".vindex.1 0 - } - "name='cs42l43 Microphone Capture Volume'" { - "name='cs42l43 Decimator 3 Volume'".vindex.0 0 - "name='cs42l43 Decimator 4 Volume'".vindex.1 0 - } "name='cs42l43 Headset Microphone Capture Switch'" { "name='cs42l43 Decimator 1 Switch'".vindex.0 0 } @@ -20,8 +12,7 @@ LibraryConfig.remap.Config { } FixedBootSequence [ + cset "name='cs42l43 Decimator 1 Switch' 0" exec "-/sbin/modprobe snd_ctl_led" sysw "-/class/sound/ctl-led/mic/card${CardNumber}/attach:cs42l43 Decimator 1 Switch" - sysw "-/class/sound/ctl-led/mic/card${CardNumber}/attach:cs42l43 Decimator 3 Switch" - sysw "-/class/sound/ctl-led/mic/card${CardNumber}/attach:cs42l43 Decimator 4 Switch" ] diff --git a/ucm2/sof-soundwire/sof-soundwire.conf b/ucm2/sof-soundwire/sof-soundwire.conf index 96d2966..57e5610 100644 --- a/ucm2/sof-soundwire/sof-soundwire.conf +++ b/ucm2/sof-soundwire/sof-soundwire.conf @@ -114,7 +114,7 @@ If.hs_init { If.mic_init { Condition { Type RegexMatch - Regex "(rt712-dmic|rt713-dmic|rt715(-sdca)?)" + Regex "(cs42l43-dmic|rt712-dmic|rt713-dmic|rt715(-sdca)?)" String "${var:MicCodec1}" } True.Include.mic_init.File "/codecs/${var:MicCodec1}/init.conf"