]> git.alsa-project.org Git - alsa-ucm-conf.git/commitdiff
sof-soundwire: Split cs42l43 dmic initialisation
authorCharles Keepax <ckeepax@opensource.cirrus.com>
Thu, 6 Mar 2025 12:54:02 +0000 (12:54 +0000)
committerJaroslav Kysela <perex@perex.cz>
Mon, 10 Mar 2025 08:46:31 +0000 (09:46 +0100)
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 <ckeepax@opensource.cirrus.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
ucm2/codecs/cs42l43-dmic/init.conf [new file with mode: 0644]
ucm2/codecs/cs42l43/init.conf
ucm2/sof-soundwire/sof-soundwire.conf

diff --git a/ucm2/codecs/cs42l43-dmic/init.conf b/ucm2/codecs/cs42l43-dmic/init.conf
new file mode 100644 (file)
index 0000000..8abd9d6
--- /dev/null
@@ -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"
+]
index 0fbb517bd17b1a2bf9b7d876bbc7e620e5b19816..8e41a0fa152339b1eeee342a3394b4abb4a2fb34 100644 (file)
@@ -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"
 ]
index 96d2966a56f1955433f56fee6c4af6dfe1c1cf65..57e5610135626676b04bf452eaf0330cbb4f34f0 100644 (file)
@@ -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"