From: Jaroslav Kysela Date: Thu, 22 Jan 2026 15:15:53 +0000 (+0100) Subject: USB-Audio: merge configs for Solid State Labs SSL 2 (normal + plus + MK II) X-Git-Url: https://git.alsa-project.org/?a=commitdiff_plain;h=a7f498464aa64990e1fe817413e8a7a827ccd24e;p=alsa-ucm-conf.git USB-Audio: merge configs for Solid State Labs SSL 2 (normal + plus + MK II) Link: https://github.com/alsa-project/alsa-ucm-conf/issues/676 Signed-off-by: Jaroslav Kysela --- diff --git a/ucm2/USB-Audio/SolidStateLabs/SSL2-HiFi.conf b/ucm2/USB-Audio/SolidStateLabs/SSL2-HiFi.conf index 34cac9c..8e39b86 100644 --- a/ucm2/USB-Audio/SolidStateLabs/SSL2-HiFi.conf +++ b/ucm2/USB-Audio/SolidStateLabs/SSL2-HiFi.conf @@ -13,12 +13,73 @@ Macro [ } ] -SectionDevice."Line1" { - Comment "Stereo Line" +If.chn4 { + Condition { + Type String + String1 "${var:DirectPlaybackChannels}" + String2 "4" + } + True { + Macro [ + { + SplitPCM { + Name "ssl2_stereo_out" + Direction Playback + Channels 2 + HWChannels "${var:DirectPlaybackChannels}" + HWChannelPos0 FL + HWChannelPos1 FR + HWChannelPos2 FL + HWChannelPos3 FR + } + } + ] - Value { - PlaybackPriority 200 - PlaybackPCM "hw:${CardId}" + SectionDevice."Line1" { + Comment "Line Outputs 1/L + 2/R" + + Value { + PlaybackPriority 200 + } + Macro.pcm_split.SplitPCMDevice { + Name "ssl2_stereo_out" + Direction Playback + HWChannels "${var:DirectPlaybackChannels}" + Channels 2 + Channel0 0 + Channel1 1 + ChannelPos0 FL + ChannelPos1 FR + } + } + + SectionDevice."Line2" { + Comment "Line Outputs 3 + 4" + + Value { + PlaybackPriority 100 + } + Macro.pcm_split.SplitPCMDevice { + Name "ssl2_stereo_out" + Direction Playback + HWChannels "${var:DirectPlaybackChannels}" + Channels 2 + Channel0 2 + Channel1 3 + ChannelPos0 FL + ChannelPos1 FR + } + } + } + False { + SectionDevice."Line1" { + Comment "Stereo Line" + + Value { + PlaybackPriority 200 + PlaybackPCM "hw:${CardId}" + } + } } } diff --git a/ucm2/USB-Audio/SolidStateLabs/SSL2.conf b/ucm2/USB-Audio/SolidStateLabs/SSL2.conf index ea5d161..3df2fac 100644 --- a/ucm2/USB-Audio/SolidStateLabs/SSL2.conf +++ b/ucm2/USB-Audio/SolidStateLabs/SSL2.conf @@ -3,6 +3,17 @@ Comment "Solid State Labs SSL 2" Define.DirectPlaybackChannels 2 Define.DirectCaptureChannels 4 +If.plus { + Condition { + Type RegexMatch + String "${CardComponents}" + # 0002 MK I + # 0009 MK II + Regex "USB31e9:000[29]" + } + True.Define.DirectPlaybackChannels 4 +} + If.fw { Condition { Type RegexMatch diff --git a/ucm2/USB-Audio/SolidStateLabs/SSL2Plus-HiFi.conf b/ucm2/USB-Audio/SolidStateLabs/SSL2Plus-HiFi.conf deleted file mode 100644 index 30160d3..0000000 --- a/ucm2/USB-Audio/SolidStateLabs/SSL2Plus-HiFi.conf +++ /dev/null @@ -1,94 +0,0 @@ -Include.pcm_split.File "/common/pcm/split.conf" - -Macro [ - { - SplitPCM { - Name "ssl2plus_stereo_out" - Direction Playback - Channels 2 - HWChannels 4 - HWChannelPos0 FL - HWChannelPos1 FR - HWChannelPos2 FL - HWChannelPos3 FR - } - } - { - SplitPCM { - Name "ssl2plus_mono_in" - Direction Capture - Channels 1 - HWChannels 4 - HWChannelPos0 MONO - HWChannelPos1 MONO - } - } -] - -SectionDevice."Line1" { - Comment "Line Outputs 1/L + 2/R" - - Value { - PlaybackPriority 200 - } - Macro.pcm_split.SplitPCMDevice { - Name "ssl2plus_stereo_out" - Direction Playback - HWChannels 4 - Channels 2 - Channel0 0 - Channel1 1 - ChannelPos0 FL - ChannelPos1 FR - } -} - -SectionDevice."Line2" { - Comment "Line Outputs 3 + 4" - - Value { - PlaybackPriority 100 - } - Macro.pcm_split.SplitPCMDevice { - Name "ssl2plus_stereo_out" - Direction Playback - HWChannels 4 - Channels 2 - Channel0 2 - Channel1 3 - ChannelPos0 FL - ChannelPos1 FR - } -} - -SectionDevice."Mic1" { - Comment "Mic/Line/Inst 1" - - Value { - CapturePriority 200 - } - Macro.pcm_split.SplitPCMDevice { - Name "ssl2plus_mono_in" - Direction Capture - HWChannels 4 - Channels 1 - Channel0 0 - ChannelPos0 MONO - } -} - -SectionDevice."Mic2" { - Comment "Mic/Line/Inst 2" - - Value { - CapturePriority 100 - } - Macro.pcm_split.SplitPCMDevice { - Name "ssl2plus_mono_in" - Direction Capture - HWChannels 4 - Channels 1 - Channel0 1 - ChannelPos0 MONO - } -} diff --git a/ucm2/USB-Audio/SolidStateLabs/SSL2Plus.conf b/ucm2/USB-Audio/SolidStateLabs/SSL2Plus.conf deleted file mode 100644 index c15bdef..0000000 --- a/ucm2/USB-Audio/SolidStateLabs/SSL2Plus.conf +++ /dev/null @@ -1,10 +0,0 @@ -Comment "Solid State Labs SSL 2+" - -SectionUseCase."HiFi" { - Comment "HiFi" - File "/USB-Audio/SolidStateLabs/SSL2Plus-HiFi.conf" -} - -Include.dhw.File "/common/directm.conf" - -Macro.0.DirectUseCase { Id="Direct" PlaybackChannels=4 CaptureChannels=4 } diff --git a/ucm2/USB-Audio/USB-Audio.conf b/ucm2/USB-Audio/USB-Audio.conf index 6e04e41..4c36aaa 100644 --- a/ucm2/USB-Audio/USB-Audio.conf +++ b/ucm2/USB-Audio/USB-Audio.conf @@ -628,26 +628,16 @@ If.ssl2 { Type RegexMatch String "${CardComponents}" # 0001 MK I + # 0002 Plus MK I # 0008 MK II - Regex "USB31e9:000[18]" + # 0009 Plus MK II + Regex "USB31e9:000[1289]" } True.Define { ProfileName "SolidStateLabs/SSL2" } } -If.ssl2plus { - Condition { - Type RegexMatch - String "${CardComponents}" - # 0002 MK I - # 0009 MK II - Regex "USB31e9:000[29]" - } - True.Define { - ProfileName "SolidStateLabs/SSL2Plus" - } -} If.beacn-mic { Condition { Type String