]> git.alsa-project.org Git - alsa-ucm-conf.git/commitdiff
USB-Audio: improve channel detection for Solid State Labs SSL 2
authorJaroslav Kysela <perex@perex.cz>
Thu, 15 Jan 2026 14:53:03 +0000 (15:53 +0100)
committerJaroslav Kysela <perex@perex.cz>
Thu, 15 Jan 2026 14:53:05 +0000 (15:53 +0100)
It seems that there are two variants with different capture
channel count. Try to identify them using USB bcdDevice value.

Link: https://github.com/alsa-project/alsa-ucm-conf/issues/676
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
ucm2/USB-Audio/SolidStateLabs/SSL2-HiFi.conf
ucm2/USB-Audio/SolidStateLabs/SSL2.conf

index 8663384acdcfecb9f0ea4a7a6a51ca96899eec2f..34cac9c7e3b44c8406731308da07e3f83ea4be0a 100644 (file)
@@ -6,7 +6,7 @@ Macro [
                        Name "ssl2_mono_in"
                        Direction Capture
                        Channels 1
-                       HWChannels 4
+                       HWChannels "${var:DirectCaptureChannels}"
                        HWChannelPos0 MONO
                        HWChannelPos1 MONO
                }
@@ -31,7 +31,7 @@ SectionDevice."Mic1" {
        Macro.pcm_split.SplitPCMDevice {
                Name "ssl2_mono_in"
                Direction Capture
-               HWChannels 4
+               HWChannels "${var:DirectCaptureChannels}"
                Channels 1
                Channel0 0
                ChannelPos0 MONO
@@ -47,7 +47,7 @@ SectionDevice."Mic2" {
        Macro.pcm_split.SplitPCMDevice {
                Name "ssl2_mono_in"
                Direction Capture
-               HWChannels 4
+               HWChannels "${var:DirectCaptureChannels}"
                Channels 1
                Channel0 1
                ChannelPos0 MONO
index 694b7186c6245c340c7dfd996f2cf758eed02571..ea5d16171fe721c4683c0170229ccfb11b29af63 100644 (file)
@@ -1,5 +1,17 @@
 Comment "Solid State Labs SSL 2"
 
+Define.DirectPlaybackChannels 2
+Define.DirectCaptureChannels 4
+
+If.fw {
+       Condition {
+               Type RegexMatch
+               String "${sys-card:device/../bcdDevice}"
+               Regex "00.."
+       }
+       True.Define.DirectCaptureChannels 2
+}
+
 SectionUseCase."HiFi" {
        Comment "HiFi"
        File "/USB-Audio/SolidStateLabs/SSL2-HiFi.conf"
@@ -7,4 +19,4 @@ SectionUseCase."HiFi" {
 
 Include.dhw.File "/common/directm.conf"
 
-Macro.0.DirectUseCase { Id="Direct" PlaybackChannels=2 CaptureChannels=4 }
+Macro.0.DirectUseCase { Id="Direct" PlaybackChannels="${var:DirectPlaybackChannels}" CaptureChannels="${var:DirectCaptureChannels}" }