[PATCH alsa-ucm-conf v5 1/2] sof-soundwire: Change map control names to make them unique and user friendly
Both 'Speaker Digital' and 'cs42l43 PDM2' names were found in other alsa controls, confusing the MixerElems paths. Make them unique to avoid errors for hardware mutes. Also add 'Capture' string into microphone controls to make them work properly.
Signed-off-by: Maciej Strozek mstrozek@opensource.cirrus.com --- v5: Change PlaybackMixerElem to just "Speaker" v4: Add "CaptureMixer" to headset config v3: Make Headset Microphone more user-friendly and contain the word "Capture" v2: Rename to "Speaker Playback" instead of "Speaker Combined" --- ucm2/codecs/cs42l43/init.conf | 10 ++++++++-- ucm2/sof-soundwire/cs35l56-bridge.conf | 6 +++--- ucm2/sof-soundwire/cs42l43-dmic.conf | 2 +- ucm2/sof-soundwire/cs42l43.conf | 3 ++- 4 files changed, 14 insertions(+), 7 deletions(-)
diff --git a/ucm2/codecs/cs42l43/init.conf b/ucm2/codecs/cs42l43/init.conf index 10a6e1f..b2796e2 100644 --- a/ucm2/codecs/cs42l43/init.conf +++ b/ucm2/codecs/cs42l43/init.conf @@ -2,13 +2,19 @@
LibraryConfig.remap.Config { ctl.default.map { - "name='cs42l43 PDM2 Switch'" { + "name='cs42l43 Microphone Capture Switch'" { "name='cs42l43 Decimator 3 Switch'".vindex.0 0 "name='cs42l43 Decimator 4 Switch'".vindex.1 0 } - "name='cs42l43 PDM2 Volume'" { + "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 + } + "name='cs42l43 Headset Microphone Capture Volume'" { + "name='cs42l43 Decimator 1 Volume'".vindex.0 0 + } } } diff --git a/ucm2/sof-soundwire/cs35l56-bridge.conf b/ucm2/sof-soundwire/cs35l56-bridge.conf index 5435b11..176f880 100644 --- a/ucm2/sof-soundwire/cs35l56-bridge.conf +++ b/ucm2/sof-soundwire/cs35l56-bridge.conf @@ -2,11 +2,11 @@
LibraryConfig.remap.Config { ctl.default.map { - "name='Speaker Digital Switch'" { + "name='Speaker Playback Switch'" { "name='AMPL Speaker Switch'".vindex.0 0 "name='AMPR Speaker Switch'".vindex.1 0 } - "name='Speaker Digital Volume'" { + "name='Speaker Playback Volume'" { "name='AMPL Speaker Volume'".vindex.0 0 "name='AMPR Speaker Volume'".vindex.1 0 } @@ -56,6 +56,6 @@ SectionDevice."Speaker" { PlaybackPriority 100 PlaybackPCM "hw:${CardId},0" PlaybackMixer "default:${CardId}" - PlaybackMixerElem "Speaker Digital" + PlaybackMixerElem "Speaker" } } diff --git a/ucm2/sof-soundwire/cs42l43-dmic.conf b/ucm2/sof-soundwire/cs42l43-dmic.conf index d5f895d..b68a70d 100644 --- a/ucm2/sof-soundwire/cs42l43-dmic.conf +++ b/ucm2/sof-soundwire/cs42l43-dmic.conf @@ -21,6 +21,6 @@ SectionDevice."Mic" { CapturePriority 100 CapturePCM "hw:${CardId},4" CaptureMixer "default:${CardId}" - CaptureMixerElem "cs42l43 PDM2" + CaptureMixerElem "cs42l43 Microphone" } } diff --git a/ucm2/sof-soundwire/cs42l43.conf b/ucm2/sof-soundwire/cs42l43.conf index 1702cf0..ddca67a 100644 --- a/ucm2/sof-soundwire/cs42l43.conf +++ b/ucm2/sof-soundwire/cs42l43.conf @@ -40,7 +40,8 @@ SectionDevice."Headset" { Value { CapturePriority 200 CapturePCM "hw:${CardId},4" - CaptureMixerElem "cs42l43 Decimator 1" + CaptureMixer "default:${CardId}" + CaptureMixerElem "cs42l43 Headset Microphone" JackControl "Headset Mic Jack" } } -- 2.39.5
Also ensure the unused microphone is disabled so that currently used mic can fully control the LED.
Signed-off-by: Maciej Strozek mstrozek@opensource.cirrus.com --- v5: no changes v4: no changes v3: Add Headset Microphone, ensure unused mic is disabled v2: no changes --- ucm2/codecs/cs42l43/init.conf | 7 +++++++ ucm2/sof-soundwire/cs42l43-dmic.conf | 2 ++ ucm2/sof-soundwire/cs42l43.conf | 1 + 3 files changed, 10 insertions(+)
diff --git a/ucm2/codecs/cs42l43/init.conf b/ucm2/codecs/cs42l43/init.conf index b2796e2..c2f52ad 100644 --- a/ucm2/codecs/cs42l43/init.conf +++ b/ucm2/codecs/cs42l43/init.conf @@ -18,3 +18,10 @@ LibraryConfig.remap.Config { } } } + +FixedBootSequence [ + 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/cs42l43-dmic.conf b/ucm2/sof-soundwire/cs42l43-dmic.conf index b68a70d..70ce40f 100644 --- a/ucm2/sof-soundwire/cs42l43-dmic.conf +++ b/ucm2/sof-soundwire/cs42l43-dmic.conf @@ -13,6 +13,8 @@ SectionDevice."Mic" { ]
DisableSequence [ + cset "name='cs42l43 Decimator 3 Switch' 0" + cset "name='cs42l43 Decimator 4 Switch' 0" cset "name='cs42l43 DP1TX1 Input' 'None'" cset "name='cs42l43 DP1TX2 Input' 'None'" ] diff --git a/ucm2/sof-soundwire/cs42l43.conf b/ucm2/sof-soundwire/cs42l43.conf index ddca67a..dc11840 100644 --- a/ucm2/sof-soundwire/cs42l43.conf +++ b/ucm2/sof-soundwire/cs42l43.conf @@ -33,6 +33,7 @@ SectionDevice."Headset" { ]
DisableSequence [ + cset "name='cs42l43 Decimator 1 Switch' 0" cset "name='cs42l43 DP1TX1 Input' 'None'" cset "name='cs42l43 DP1TX2 Input' 'None'" ] -- 2.39.5
On 17. 10. 24 14:20, Maciej Strozek wrote:
Also ensure the unused microphone is disabled so that currently used mic can fully control the LED.
Signed-off-by: Maciej Strozek mstrozek@opensource.cirrus.com
Applied. Thanks.
On 17. 10. 24 14:20, Maciej Strozek wrote:
Both 'Speaker Digital' and 'cs42l43 PDM2' names were found in other alsa controls, confusing the MixerElems paths. Make them unique to avoid errors for hardware mutes. Also add 'Capture' string into microphone controls to make them work properly.
Signed-off-by: Maciej Strozek mstrozek@opensource.cirrus.com
Applied. Thanks.
participants (2)
-
Jaroslav Kysela
-
Maciej Strozek