Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package alsa-ucm-conf for openSUSE:Factory 
checked in at 2026-06-16 13:46:25
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/alsa-ucm-conf (Old)
 and      /work/SRC/openSUSE:Factory/.alsa-ucm-conf.new.1981 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "alsa-ucm-conf"

Tue Jun 16 13:46:25 2026 rev:40 rq:1359402 version:1.2.16.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/alsa-ucm-conf/alsa-ucm-conf.changes      
2026-06-03 20:21:44.035474609 +0200
+++ /work/SRC/openSUSE:Factory/.alsa-ucm-conf.new.1981/alsa-ucm-conf.changes    
2026-06-16 13:47:35.218606832 +0200
@@ -1,0 +2,8 @@
+Mon Jun 15 08:26:18 UTC 2026 - Takashi Iwai <[email protected]>
+
+- Update to alsa-ucm-conf 1.2.16.1:
+  a minor fix update, addressing various regressions and fixes.
+  For details, see:
+  https://www.alsa-project.org/wiki/Changes_v1.2.16_v1.2.16.1#alsa-ucm-conf
+
+-------------------------------------------------------------------

Old:
----
  alsa-ucm-conf-1.2.16.tar.bz2
  alsa-ucm-conf-1.2.16.tar.bz2.sig

New:
----
  alsa-ucm-conf-1.2.16.1.tar.bz2
  alsa-ucm-conf-1.2.16.1.tar.bz2.sig

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ alsa-ucm-conf.spec ++++++
--- /var/tmp/diff_new_pack.umCopk/_old  2026-06-16 13:47:36.298651913 +0200
+++ /var/tmp/diff_new_pack.umCopk/_new  2026-06-16 13:47:36.302652080 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           alsa-ucm-conf
-Version:        1.2.16
+Version:        1.2.16.1
 Release:        0
 Summary:        ALSA UCM Profiles
 License:        BSD-3-Clause

++++++ alsa-ucm-conf-1.2.16.tar.bz2 -> alsa-ucm-conf-1.2.16.1.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/alsa-ucm-conf-1.2.16/ucm2/HDA/HiFi-mic.conf 
new/alsa-ucm-conf-1.2.16.1/ucm2/HDA/HiFi-mic.conf
--- old/alsa-ucm-conf-1.2.16/ucm2/HDA/HiFi-mic.conf     2026-06-01 
10:04:27.000000000 +0200
+++ new/alsa-ucm-conf-1.2.16.1/ucm2/HDA/HiFi-mic.conf   2026-06-12 
14:59:45.000000000 +0200
@@ -297,7 +297,7 @@
                Define {
                        DeviceMicName "Mic"
                        DeviceMicComment "Stereo Microphone"
-                       DeviceMicJack "Mic Jack"
+                       DeviceMicJack "${var:MicJackControl}"
                        DeviceMicPriority 200
                }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/alsa-ucm-conf-1.2.16/ucm2/Qualcomm/x1e80100/T14s-HiFi.conf 
new/alsa-ucm-conf-1.2.16.1/ucm2/Qualcomm/x1e80100/T14s-HiFi.conf
--- old/alsa-ucm-conf-1.2.16/ucm2/Qualcomm/x1e80100/T14s-HiFi.conf      
2026-06-01 10:04:27.000000000 +0200
+++ new/alsa-ucm-conf-1.2.16.1/ucm2/Qualcomm/x1e80100/T14s-HiFi.conf    
2026-06-12 14:59:45.000000000 +0200
@@ -3,13 +3,13 @@
 
 SectionVerb {
        EnableSequence [
+               cset "name='DISPLAY_PORT_RX_0 Audio Mixer MultiMedia1' 0"
+               cset "name='DISPLAY_PORT_RX_1 Audio Mixer MultiMedia1' 0"
+               cset "name='DISPLAY_PORT_RX_2 Audio Mixer MultiMedia1' 0"
                cset "name='RX_CODEC_DMA_RX_0 Audio Mixer MultiMedia1' 1"
                cset "name='WSA_CODEC_DMA_RX_0 Audio Mixer MultiMedia2' 1"
                cset "name='MultiMedia3 Mixer TX_CODEC_DMA_TX_3' 1"
                cset "name='MultiMedia4 Mixer VA_CODEC_DMA_TX_0' 1"
-               cset "name='DISPLAY_PORT_RX_0 Audio Mixer MultiMedia5' 1"
-               cset "name='DISPLAY_PORT_RX_1 Audio Mixer MultiMedia6' 1"
-               cset "name='DISPLAY_PORT_RX_2 Audio Mixer MultiMedia7' 1"
        ]
 
        Include.wsae.File "/codecs/wsa884x/two-speakers/DefaultEnableSeq.conf"
@@ -52,9 +52,9 @@
 
        EnableSequence [
                cset "name='RX_CODEC_DMA_RX_0 Audio Mixer MultiMedia1' 1"
-               cset "name='DISPLAY_PORT_RX_0 Audio Mixer MultiMedia5' 0"
-               cset "name='DISPLAY_PORT_RX_1 Audio Mixer MultiMedia6' 0"
-               cset "name='DISPLAY_PORT_RX_2 Audio Mixer MultiMedia7' 0"
+               cset "name='DISPLAY_PORT_RX_0 Audio Mixer MultiMedia1' 0"
+               cset "name='DISPLAY_PORT_RX_1 Audio Mixer MultiMedia1' 0"
+               cset "name='DISPLAY_PORT_RX_2 Audio Mixer MultiMedia1' 0"
        ]
 
        DisableSequence [
@@ -111,19 +111,18 @@
 
        EnableSequence [
                cset "name='RX_CODEC_DMA_RX_0 Audio Mixer MultiMedia1' 0"
-               cset "name='DISPLAY_PORT_RX_0 Audio Mixer MultiMedia5' 1"
-               cset "name='DISPLAY_PORT_RX_1 Audio Mixer MultiMedia6' 0"
-               cset "name='DISPLAY_PORT_RX_2 Audio Mixer MultiMedia7' 0"
+               cset "name='DISPLAY_PORT_RX_0 Audio Mixer MultiMedia1' 1"
+               cset "name='DISPLAY_PORT_RX_1 Audio Mixer MultiMedia1' 0"
+               cset "name='DISPLAY_PORT_RX_2 Audio Mixer MultiMedia1' 0"
        ]
 
        DisableSequence [
-               cset "name='DISPLAY_PORT_RX_0 Audio Mixer MultiMedia5' 0"
+               cset "name='DISPLAY_PORT_RX_0 Audio Mixer MultiMedia1' 0"
        ]
 
        Value {
                PlaybackPriority 200
-               PlaybackPCM "hw:${CardId},4"
-               PlaybackChannels 2
+               PlaybackPCM "hw:${CardId},0"
                JackControl "DP0 Jack"
        }
 }
@@ -139,19 +138,18 @@
 
        EnableSequence [
                cset "name='RX_CODEC_DMA_RX_0 Audio Mixer MultiMedia1' 0"
-               cset "name='DISPLAY_PORT_RX_0 Audio Mixer MultiMedia5' 0"
-               cset "name='DISPLAY_PORT_RX_1 Audio Mixer MultiMedia6' 1"
-               cset "name='DISPLAY_PORT_RX_2 Audio Mixer MultiMedia7' 0"
+               cset "name='DISPLAY_PORT_RX_0 Audio Mixer MultiMedia1' 0"
+               cset "name='DISPLAY_PORT_RX_1 Audio Mixer MultiMedia1' 1"
+               cset "name='DISPLAY_PORT_RX_2 Audio Mixer MultiMedia1' 0"
        ]
 
        DisableSequence [
-               cset "name='DISPLAY_PORT_RX_1 Audio Mixer MultiMedia6' 0"
+               cset "name='DISPLAY_PORT_RX_1 Audio Mixer MultiMedia1' 0"
        ]
 
        Value {
                PlaybackPriority 200
-               PlaybackPCM "hw:${CardId},5"
-               PlaybackChannels 2
+               PlaybackPCM "hw:${CardId},0"
                JackControl "DP1 Jack"
        }
 }
@@ -167,19 +165,18 @@
 
        EnableSequence [
                cset "name='RX_CODEC_DMA_RX_0 Audio Mixer MultiMedia1' 0"
-               cset "name='DISPLAY_PORT_RX_0 Audio Mixer MultiMedia5' 0"
-               cset "name='DISPLAY_PORT_RX_1 Audio Mixer MultiMedia6' 0"
-               cset "name='DISPLAY_PORT_RX_2 Audio Mixer MultiMedia7' 1"
+               cset "name='DISPLAY_PORT_RX_0 Audio Mixer MultiMedia1' 0"
+               cset "name='DISPLAY_PORT_RX_1 Audio Mixer MultiMedia1' 0"
+               cset "name='DISPLAY_PORT_RX_2 Audio Mixer MultiMedia1' 1"
        ]
 
        DisableSequence [
-               cset "name='DISPLAY_PORT_RX_2 Audio Mixer MultiMedia7' 0"
+               cset "name='DISPLAY_PORT_RX_2 Audio Mixer MultiMedia1' 0"
        ]
 
        Value {
                PlaybackPriority 200
-               PlaybackPCM "hw:${CardId},6"
-               PlaybackChannels 2
+               PlaybackPCM "hw:${CardId},0"
                JackControl "DP2 Jack"
        }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/alsa-ucm-conf-1.2.16/ucm2/USB-Audio/M-Audio/Fast-Track-Ultra-HiFi.conf 
new/alsa-ucm-conf-1.2.16.1/ucm2/USB-Audio/M-Audio/Fast-Track-Ultra-HiFi.conf
--- old/alsa-ucm-conf-1.2.16/ucm2/USB-Audio/M-Audio/Fast-Track-Ultra-HiFi.conf  
2026-06-01 10:04:27.000000000 +0200
+++ 
new/alsa-ucm-conf-1.2.16.1/ucm2/USB-Audio/M-Audio/Fast-Track-Ultra-HiFi.conf    
    2026-06-12 14:59:45.000000000 +0200
@@ -19,7 +19,7 @@
        }
        {
                SplitPCM {
-                       Name "fast_track_ultra_mixed_in"
+                       Name "fast_track_ultra_mono_in"
                        Direction Capture
                        Channels 1
                        HWChannels 8
@@ -27,6 +27,22 @@
                        HWChannelPos1 MONO
                        HWChannelPos2 MONO
                        HWChannelPos3 MONO
+                       HWChannelPos4 MONO
+                       HWChannelPos5 MONO
+                       HWChannelPos6 MONO
+                       HWChannelPos7 MONO
+               }
+       }
+       {
+               SplitPCM {
+                       Name "fast_track_ultra_stereo_in"
+                       Direction Capture
+                       Channels 2
+                       HWChannels 8
+                       HWChannelPos0 FL
+                       HWChannelPos1 FR
+                       HWChannelPos2 FL
+                       HWChannelPos3 FR
                        HWChannelPos4 FL
                        HWChannelPos5 FR
                        HWChannelPos6 FL
@@ -321,7 +337,7 @@
        Comment "Input 1"
 
        Macro.pcm_split.SplitPCMDevice {
-               Name "fast_track_ultra_mixed_in"
+               Name "fast_track_ultra_mono_in"
                Direction Capture
                HWChannels 8
                Channels 1
@@ -334,7 +350,7 @@
        Comment "Input 2"
 
        Macro.pcm_split.SplitPCMDevice {
-               Name "fast_track_ultra_mixed_in"
+               Name "fast_track_ultra_mono_in"
                Direction Capture
                HWChannels 8
                Channels 1
@@ -347,7 +363,7 @@
        Comment "Input 3"
 
        Macro.pcm_split.SplitPCMDevice {
-               Name "fast_track_ultra_mixed_in"
+               Name "fast_track_ultra_mono_in"
                Direction Capture
                HWChannels 8
                Channels 1
@@ -360,7 +376,7 @@
        Comment "Input 4"
 
        Macro.pcm_split.SplitPCMDevice {
-               Name "fast_track_ultra_mixed_in"
+               Name "fast_track_ultra_mono_in"
                Direction Capture
                HWChannels 8
                Channels 1
@@ -373,7 +389,7 @@
        Comment "Input 5/6"
 
        Macro.pcm_split.SplitPCMDevice {
-               Name "fast_track_ultra_mixed_in"
+               Name "fast_track_ultra_stereo_in"
                Direction Capture
                HWChannels 8
                Channels 2
@@ -388,7 +404,7 @@
        Comment "Input 7/8 (S/PDIF)"
 
        Macro.pcm_split.SplitPCMDevice {
-               Name "fast_track_ultra_mixed_in"
+               Name "fast_track_ultra_stereo_in"
                Direction Capture
                HWChannels 8
                Channels 2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/alsa-ucm-conf-1.2.16/ucm2/USB-Audio/Realtek/ALC4080-HiFi.conf 
new/alsa-ucm-conf-1.2.16.1/ucm2/USB-Audio/Realtek/ALC4080-HiFi.conf
--- old/alsa-ucm-conf-1.2.16/ucm2/USB-Audio/Realtek/ALC4080-HiFi.conf   
2026-06-01 10:04:27.000000000 +0200
+++ new/alsa-ucm-conf-1.2.16.1/ucm2/USB-Audio/Realtek/ALC4080-HiFi.conf 
2026-06-12 14:59:45.000000000 +0200
@@ -107,7 +107,7 @@
        False.If.spdif_nodev {
                Condition {
                        Type String
-                       Empty 
"$${find-device:type=pcm,stream=playback,field=subname,regex='Audio #3'}"
+                       Empty 
"$${find-device:type=pcm,stream=playback,field=name,regex='Audio #3'}"
                }
                True.Define.SpdifName ""
        }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/alsa-ucm-conf-1.2.16/ucm2/codecs/rt1320/init.conf 
new/alsa-ucm-conf-1.2.16.1/ucm2/codecs/rt1320/init.conf
--- old/alsa-ucm-conf-1.2.16/ucm2/codecs/rt1320/init.conf       2026-06-01 
10:04:27.000000000 +0200
+++ new/alsa-ucm-conf-1.2.16.1/ucm2/codecs/rt1320/init.conf     2026-06-12 
14:59:45.000000000 +0200
@@ -16,7 +16,7 @@
        Condition {
                Type String
                Needle "rt1320"
-               Haystack "${var:MultiSpeakerShadow}"
+               Haystack "${var:SpeakerCodec1}"
        }
        True {
                Macro.num1.rt1320spkled { ForAmps "[12]" Amp 1 }
@@ -83,7 +83,7 @@
        Condition {
                Type String
                Needle "rt1320"
-               Haystack "${var:MultiMicShadow}"
+               Haystack "${var:MicCodec1}"
        }
        True {
                Macro.num1.rt1320micled { ForMics "[12]" Mic 1 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/alsa-ucm-conf-1.2.16/ucm2/codecs/rt712/init.conf 
new/alsa-ucm-conf-1.2.16.1/ucm2/codecs/rt712/init.conf
--- old/alsa-ucm-conf-1.2.16/ucm2/codecs/rt712/init.conf        2026-06-01 
10:04:27.000000000 +0200
+++ new/alsa-ucm-conf-1.2.16.1/ucm2/codecs/rt712/init.conf      2026-06-12 
14:59:45.000000000 +0200
@@ -7,11 +7,24 @@
        cset "name='rt712 FU0F Capture Switch' 1"
 ]
 
+If.rt712dmic_init {
+       Condition {
+               Type String
+               String1 "rt712-dmic"
+               String2 "${var:MicCodec1}"
+       }
+       True.BootSequence [
+               cset "name='rt712-dmic ADC 25 Mux' 'DMIC1'"
+               cset "name='rt712-dmic FU1E Capture Switch' 1"
+       ]
+}
+
 If.rt712vb_init {
        Condition {
                Type RegexMatch
-               Regex "(rt712(-sdca)?)"
-               String "${var:MultiMicShadow}"
+               # guard with '=' to avoid empty or rt712-dmic string matching
+               Regex "=(rt712(-sdca)?)="
+               String "=${var:MicCodec1}="
        }
        True.BootSequence [
                # RT712-VB integrated with DMIC
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/alsa-ucm-conf-1.2.16/ucm2/codecs/rt712-dmic/init.conf 
new/alsa-ucm-conf-1.2.16.1/ucm2/codecs/rt712-dmic/init.conf
--- old/alsa-ucm-conf-1.2.16/ucm2/codecs/rt712-dmic/init.conf   2026-06-01 
10:04:27.000000000 +0200
+++ new/alsa-ucm-conf-1.2.16.1/ucm2/codecs/rt712-dmic/init.conf 1970-01-01 
01:00:00.000000000 +0100
@@ -1,6 +0,0 @@
-# RT712-dmic specific volume control settings
-
-BootSequence [
-       cset "name='rt712-dmic ADC 25 Mux' 'DMIC1'"
-       cset "name='rt712-dmic FU1E Capture Switch' 1"
-]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/alsa-ucm-conf-1.2.16/ucm2/codecs/rt713/init.conf 
new/alsa-ucm-conf-1.2.16.1/ucm2/codecs/rt713/init.conf
--- old/alsa-ucm-conf-1.2.16/ucm2/codecs/rt713/init.conf        2026-06-01 
10:04:27.000000000 +0200
+++ new/alsa-ucm-conf-1.2.16.1/ucm2/codecs/rt713/init.conf      2026-06-12 
14:59:45.000000000 +0200
@@ -7,11 +7,23 @@
        cset "name='rt713 FU0F Capture Switch' 1"
 ]
 
+If.rt713dmic_init {
+       Condition {
+               Type String
+               String1 "rt713-dmic"
+               String2 "${var:MicCodec1}"
+       }
+       True.BootSequence [
+               cset "name='rt713-dmic ADC 25 Mux' 'DMIC1'"
+               cset "name='rt713-dmic FU1E Capture Switch' 1"
+       ]
+}
+
 If.rt713vb_init {
        Condition {
                Type String
                String1 "rt713"
-               String2 "${var:MultiMicShadow}"
+               String2 "${var:MicCodec1}"
        }
        True.BootSequence [
                # RT713-VB integrated with DMIC
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/alsa-ucm-conf-1.2.16/ucm2/codecs/rt713-dmic/init.conf 
new/alsa-ucm-conf-1.2.16.1/ucm2/codecs/rt713-dmic/init.conf
--- old/alsa-ucm-conf-1.2.16/ucm2/codecs/rt713-dmic/init.conf   2026-06-01 
10:04:27.000000000 +0200
+++ new/alsa-ucm-conf-1.2.16.1/ucm2/codecs/rt713-dmic/init.conf 1970-01-01 
01:00:00.000000000 +0100
@@ -1,6 +0,0 @@
-# RT713-dmic specific volume control settings
-
-BootSequence [
-       cset "name='rt713-dmic ADC 25 Mux' 'DMIC1'"
-       cset "name='rt713-dmic FU1E Capture Switch' 1"
-]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/alsa-ucm-conf-1.2.16/ucm2/sof-soundwire/HiFi.conf 
new/alsa-ucm-conf-1.2.16.1/ucm2/sof-soundwire/HiFi.conf
--- old/alsa-ucm-conf-1.2.16/ucm2/sof-soundwire/HiFi.conf       2026-06-01 
10:04:27.000000000 +0200
+++ new/alsa-ucm-conf-1.2.16.1/ucm2/sof-soundwire/HiFi.conf     2026-06-12 
14:59:45.000000000 +0200
@@ -8,36 +8,43 @@
        Value.TQ "HiFi"
 }
 
-If.multicodec {
+If.spk {
        Condition {
                Type String
-               Empty "${var:MultiCodec1}"
+               Empty "${var:SpeakerCodecFile}"
        }
-       False.Include.multicodec.File "/sof-soundwire/${var:MultiCodec1}.conf"
+       False.Include.a.File "/sof-soundwire/${var:SpeakerCodecFile}.conf"
 }
 
-If.spkdev {
+If.mic {
        Condition {
                Type String
-               Empty "${var:SpeakerCodec1}"
+               Empty "${var:MicCodecFile}"
        }
-       False.Include.spkdev.File "/sof-soundwire/${var:SpeakerCodec1}.conf"
-}
-
-If.micdev {
-       Condition {
-               Type String
-               Empty "${var:MicCodec1}"
+       False.If.dup {
+               Condition {
+                       Type String
+                       String1 "${var:MicCodecFile}"
+                       String2 "${var:SpeakerCodecFile}"
+               }
+               False.Include.a.File "/sof-soundwire/${var:MicCodecFile}.conf"
        }
-       False.Include.micdev.File "/sof-soundwire/${var:MicCodec1}.conf"
 }
 
-If.hsdev {
+If.headset {
        Condition {
                Type String
-               Empty "${var:HeadsetCodec1}"
+               Empty "${var:HeadsetCodecFile}"
+       }
+       False.If.dup {
+               Condition {
+                       Type String
+                       # guard with "=" to avoid empty string matching
+                       Needle "=${var:HeadsetCodecFile}="
+                       Haystack "=${var:SpeakerCodecFile}=${var:MicCodecFile}="
+               }
+               False.Include.a.File 
"/sof-soundwire/${var:HeadsetCodecFile}.conf"
        }
-       False.Include.hsdev.File "/sof-soundwire/${var:HeadsetCodec1}.conf"
 }
 
 <sof-soundwire/Hdmi.conf>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/alsa-ucm-conf-1.2.16/ucm2/sof-soundwire/cs35l56-bridge.conf 
new/alsa-ucm-conf-1.2.16.1/ucm2/sof-soundwire/cs35l56-bridge.conf
--- old/alsa-ucm-conf-1.2.16/ucm2/sof-soundwire/cs35l56-bridge.conf     
2026-06-01 10:04:27.000000000 +0200
+++ new/alsa-ucm-conf-1.2.16.1/ucm2/sof-soundwire/cs35l56-bridge.conf   
2026-06-12 14:59:45.000000000 +0200
@@ -16,15 +16,22 @@
 SectionDevice."Speaker" {
        Comment "Speaker"
 
-       ConflictingDevice [
-               "Headphones"
-       ]
+       If.hs_present {
+               Condition {
+                       Type String
+                       Haystack "${var:HeadsetCodec1}"
+                       Needle "cs42l43"
+               }
+               True.ConflictingDevice [
+                       "Headphones"
+               ]
+       }
 
        EnableSequence [
                cset "name='cs42l43 Speaker L Input 1' 'ASPRX1'"
                cset "name='cs42l43 Speaker R Input 1' 'ASPRX2'"
-               cset "name='cs42l43 ASPTX1 Input' 'DP5RX1'"
-               cset "name='cs42l43 ASPTX2 Input' 'DP5RX2'"
+               cset "name='cs42l43 ASPTX1 Input' 'DP6RX1'"
+               cset "name='cs42l43 ASPTX2 Input' 'DP6RX2'"
 
                cset "name='AMPL ASP1 TX1 Source' 'DSP1TX1'"
                cset "name='AMPL ASP1 TX2 Source' 'None'"
@@ -54,7 +61,7 @@
 
        Value {
                PlaybackPriority 100
-               PlaybackPCM "hw:${CardId},0"
+               PlaybackPCM "hw:${CardId},2"
                PlaybackMixer "default:${CardId}"
                PlaybackMixerElem "Speaker"
        }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/alsa-ucm-conf-1.2.16/ucm2/sof-soundwire/rt1320.conf 
new/alsa-ucm-conf-1.2.16.1/ucm2/sof-soundwire/rt1320.conf
--- old/alsa-ucm-conf-1.2.16/ucm2/sof-soundwire/rt1320.conf     2026-06-01 
10:04:27.000000000 +0200
+++ new/alsa-ucm-conf-1.2.16.1/ucm2/sof-soundwire/rt1320.conf   2026-06-12 
14:59:45.000000000 +0200
@@ -71,7 +71,7 @@
        Condition {
                Type String
                Needle "rt1320"
-               Haystack "${var:MultiMicShadow}"
+               Haystack "${var:MicCodec1}"
        }
        True {
                SectionDevice."Mic" {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/alsa-ucm-conf-1.2.16/ucm2/sof-soundwire/rt712-dmic.conf 
new/alsa-ucm-conf-1.2.16.1/ucm2/sof-soundwire/rt712-dmic.conf
--- old/alsa-ucm-conf-1.2.16/ucm2/sof-soundwire/rt712-dmic.conf 2026-06-01 
10:04:27.000000000 +0200
+++ new/alsa-ucm-conf-1.2.16.1/ucm2/sof-soundwire/rt712-dmic.conf       
1970-01-01 01:00:00.000000000 +0100
@@ -1,21 +0,0 @@
-# Use case Configuration for sof-soundwire card
-
-SectionDevice."Mic" {
-       Comment "SoundWire microphones"
-
-       EnableSequence [
-               cset "name='rt712-dmic FU1E Capture Switch' 1"
-       ]
-
-       DisableSequence [
-               cset "name='rt712-dmic FU1E Capture Switch' 0"
-       ]
-
-       Value {
-               CapturePriority 100
-               CapturePCM "hw:${CardId},4"
-               CaptureSwitch "rt712-dmic FU1E Capture Switch"
-               CaptureVolume "rt712-dmic FU1E Capture Volume"
-               CaptureMixerElem "rt712-dmic FU1E"
-       }
-}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/alsa-ucm-conf-1.2.16/ucm2/sof-soundwire/rt712.conf 
new/alsa-ucm-conf-1.2.16.1/ucm2/sof-soundwire/rt712.conf
--- old/alsa-ucm-conf-1.2.16/ucm2/sof-soundwire/rt712.conf      2026-06-01 
10:04:27.000000000 +0200
+++ new/alsa-ucm-conf-1.2.16.1/ucm2/sof-soundwire/rt712.conf    2026-06-12 
14:59:45.000000000 +0200
@@ -1,10 +1,10 @@
 # Use case Configuration for sof-soundwire card
 
-If.codecspk {
+If.codec_spk {
        Condition {
                Type RegexMatch
                Regex "(rt712(-sdca)?)"
-               String "${var:MultiSpeakerShadow}"
+               String "${var:SpeakerCodec1}"
        }
        True {
                SectionDevice."Speaker" {
@@ -47,50 +47,89 @@
        }
 }
 
-SectionDevice."Headphones" {
-       Comment "Headphones"
+If.codec_hs {
+       Condition {
+               Type RegexMatch
+               Regex "(rt712(-sdca)?)"
+               String "${var:HeadsetCodec1}"
+       }
+       True {
+               SectionDevice."Headphones" {
+                       Comment "Headphones"
+
+                       EnableSequence [
+                               cset "name='Headphone Switch' on"
+                       ]
+
+                       DisableSequence [
+                               cset "name='Headphone Switch' off"
+                       ]
+
+                       Value {
+                             PlaybackPriority 200
+                             PlaybackPCM "hw:${CardId}"
+                             JackControl "Headphone Jack"
+                       }
+               }
+
+               SectionDevice."Headset" {
+                       Comment "Headset Mono Microphone"
+
+                       EnableSequence [
+                               cset "name='rt712 FU0F Capture Switch' on"
+                       ]
+
+                       DisableSequence [
+                               cset "name='rt712 FU0F Capture Switch' off"
+                       ]
 
-       EnableSequence [
-               cset "name='Headphone Switch' on"
-       ]
-
-       DisableSequence [
-               cset "name='Headphone Switch' off"
-       ]
-
-       Value {
-             PlaybackPriority 200
-             PlaybackPCM "hw:${CardId}"
-             JackControl "Headphone Jack"
+                       Value {
+                               CapturePriority 300
+                               CapturePCM "hw:${CardId},1"
+                               CaptureSwitch "rt712 FU0F Capture Switch"
+                               CaptureVolume "rt712 FU0F Capture Volume"
+                               CaptureMixerElem "rt712 FU0F"
+                               JackControl "Headset Mic Jack"
+                       }
+               }
        }
 }
 
-SectionDevice."Headset" {
-       Comment "Headset Mono Microphone"
+If.codec_dmic {
+       Condition {
+               Type String
+               String1 "rt712-dmic"
+               String2 "${var:MicCodec1}"
+       }
+       True {
+               SectionDevice."Mic" {
+                       Comment "SoundWire microphones"
+
+                       EnableSequence [
+                               cset "name='rt712-dmic FU1E Capture Switch' 1"
+                       ]
+
+                       DisableSequence [
+                               cset "name='rt712-dmic FU1E Capture Switch' 0"
+                       ]
 
-       EnableSequence [
-               cset "name='rt712 FU0F Capture Switch' on"
-       ]
-
-       DisableSequence [
-               cset "name='rt712 FU0F Capture Switch' off"
-       ]
-
-       Value {
-               CapturePriority 300
-               CapturePCM "hw:${CardId},1"
-               CaptureSwitch "rt712 FU0F Capture Switch"
-               CaptureVolume "rt712 FU0F Capture Volume"
-               CaptureMixerElem "rt712 FU0F"
-               JackControl "Headset Mic Jack"
+                       Value {
+                               CapturePriority 100
+                               CapturePCM "hw:${CardId},4"
+                               CaptureSwitch "rt712-dmic FU1E Capture Switch"
+                               CaptureVolume "rt712-dmic FU1E Capture Volume"
+                               CaptureMixerElem "rt712-dmic FU1E"
+                       }
+               }
        }
 }
 
-If.codecmic {
+If.codec_mic {
        Condition {
                Type RegexMatch
-               Regex "(rt712(-sdca)?)"
-               String "${var:MultiMicShadow}"
+               # guard with '=' to avoid empty or rt712-dmic string matching
+               Regex "=(rt712(-sdca)?)="
+               String "=${var:MicCodec1}="
        }
        True {
                SectionDevice."Mic" {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/alsa-ucm-conf-1.2.16/ucm2/sof-soundwire/rt713-dmic.conf 
new/alsa-ucm-conf-1.2.16.1/ucm2/sof-soundwire/rt713-dmic.conf
--- old/alsa-ucm-conf-1.2.16/ucm2/sof-soundwire/rt713-dmic.conf 2026-06-01 
10:04:27.000000000 +0200
+++ new/alsa-ucm-conf-1.2.16.1/ucm2/sof-soundwire/rt713-dmic.conf       
1970-01-01 01:00:00.000000000 +0100
@@ -1,21 +0,0 @@
-# Use case Configuration for sof-soundwire card
-
-SectionDevice."Mic" {
-       Comment "SoundWire microphones"
-
-       EnableSequence [
-               cset "name='rt713-dmic FU1E Capture Switch' 1"
-       ]
-
-       DisableSequence [
-               cset "name='rt713-dmic FU1E Capture Switch' 0"
-       ]
-
-       Value {
-               CapturePriority 100
-               CapturePCM "hw:${CardId},4"
-               CaptureSwitch "rt713-dmic FU1E Capture Switch"
-               CaptureVolume "rt713-dmic FU1E Capture Volume"
-               CaptureMixerElem "rt713-dmic FU1E"
-       }
-}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/alsa-ucm-conf-1.2.16/ucm2/sof-soundwire/rt713.conf 
new/alsa-ucm-conf-1.2.16.1/ucm2/sof-soundwire/rt713.conf
--- old/alsa-ucm-conf-1.2.16/ucm2/sof-soundwire/rt713.conf      2026-06-01 
10:04:27.000000000 +0200
+++ new/alsa-ucm-conf-1.2.16.1/ucm2/sof-soundwire/rt713.conf    2026-06-12 
14:59:45.000000000 +0200
@@ -1,49 +1,87 @@
 # Use case Configuration for sof-soundwire card
 
-SectionDevice."Headphones" {
-       Comment "Headphones"
+If.codec_hs {
+       Condition {
+               Type RegexMatch
+               Regex "(rt713(-sdca)?)"
+               String "${var:HeadsetCodec1}"
+       }
+       True {
+               SectionDevice."Headphones" {
+                       Comment "Headphones"
 
-       EnableSequence [
-               cset "name='Headphone Switch' on"
-       ]
-
-       DisableSequence [
-               cset "name='Headphone Switch' off"
-       ]
-
-       Value {
-             PlaybackPriority 200
-             PlaybackPCM "hw:${CardId}"
-             JackControl "Headphone Jack"
+                       EnableSequence [
+                               cset "name='Headphone Switch' on"
+                       ]
+
+                       DisableSequence [
+                               cset "name='Headphone Switch' off"
+                       ]
+
+                       Value {
+                             PlaybackPriority 200
+                             PlaybackPCM "hw:${CardId}"
+                             JackControl "Headphone Jack"
+                       }
+               }
+
+               SectionDevice."Headset" {
+                       Comment "Headset Microphone"
+
+                       EnableSequence [
+                               cset "name='rt713 FU0F Capture Switch' 1"
+                       ]
+
+                       DisableSequence [
+                               cset "name='rt713 FU0F Capture Switch' 0"
+                       ]
+
+                       Value {
+                               CapturePriority 200
+                               CapturePCM "hw:${CardId},1"
+                               JackControl "Headset Mic Jack"
+                               CaptureSwitch "rt713 FU0F Capture Switch"
+                               CaptureVolume "rt713 FU0F Capture Volume"
+                               CaptureMixerElem "rt713 FU0F"
+                       }
+               }
        }
 }
 
-SectionDevice."Headset" {
-       Comment "Headset Microphone"
+If.codec_dmic {
+       Condition {
+               Type String
+               String1 "rt713-dmic"
+               String2 "${var:MicCodec1}"
+       }
+       True {
+               SectionDevice."Mic" {
+                       Comment "SoundWire microphones"
 
-       EnableSequence [
-               cset "name='rt713 FU0F Capture Switch' 1"
-       ]
-
-       DisableSequence [
-               cset "name='rt713 FU0F Capture Switch' 0"
-       ]
-
-       Value {
-               CapturePriority 200
-               CapturePCM "hw:${CardId},1"
-               JackControl "Headset Mic Jack"
-               CaptureSwitch "rt713 FU0F Capture Switch"
-               CaptureVolume "rt713 FU0F Capture Volume"
-               CaptureMixerElem "rt713 FU0F"
+                       EnableSequence [
+                               cset "name='rt713-dmic FU1E Capture Switch' 1"
+                       ]
+
+                       DisableSequence [
+                               cset "name='rt713-dmic FU1E Capture Switch' 0"
+                       ]
+
+                       Value {
+                               CapturePriority 100
+                               CapturePCM "hw:${CardId},4"
+                               CaptureSwitch "rt713-dmic FU1E Capture Switch"
+                               CaptureVolume "rt713-dmic FU1E Capture Volume"
+                               CaptureMixerElem "rt713-dmic FU1E"
+                       }
+               }
        }
 }
 
-If.codecmic {
+If.codec_mic {
        Condition {
                Type String
                String1 "rt713"
-               String2 "${var:MultiMicShadow}"
+               String2 "${var:MicCodec1}"
        }
        True {
                SectionDevice."Mic" {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/alsa-ucm-conf-1.2.16/ucm2/sof-soundwire/rt721.conf 
new/alsa-ucm-conf-1.2.16.1/ucm2/sof-soundwire/rt721.conf
--- old/alsa-ucm-conf-1.2.16/ucm2/sof-soundwire/rt721.conf      2026-06-01 
10:04:27.000000000 +0200
+++ new/alsa-ucm-conf-1.2.16.1/ucm2/sof-soundwire/rt721.conf    2026-06-12 
14:59:45.000000000 +0200
@@ -4,7 +4,7 @@
        Condition {
                Type RegexMatch
                Regex "(rt721(-sdca)?)"
-               String "${var:MultiMicShadow}"
+               String "${var:MicCodec1}"
        }
        True {
                SectionDevice."Mic" {
@@ -33,7 +33,7 @@
        Condition {
                Type RegexMatch
                Regex "(rt721(-sdca)?)"
-               String "${var:MultiSpeakerShadow}"
+               String "${var:SpeakerCodec1}"
        }
        True {
                SectionDevice."Speaker" {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/alsa-ucm-conf-1.2.16/ucm2/sof-soundwire/rt722.conf 
new/alsa-ucm-conf-1.2.16.1/ucm2/sof-soundwire/rt722.conf
--- old/alsa-ucm-conf-1.2.16/ucm2/sof-soundwire/rt722.conf      2026-06-01 
10:04:27.000000000 +0200
+++ new/alsa-ucm-conf-1.2.16.1/ucm2/sof-soundwire/rt722.conf    2026-06-12 
14:59:45.000000000 +0200
@@ -4,7 +4,7 @@
        Condition {
                Type RegexMatch
                Regex "(rt722(-sdca)?)"
-               String "${var:MultiMicShadow}"
+               String "${var:MicCodec1}"
        }
        True {
                SectionDevice."Mic" {
@@ -33,7 +33,7 @@
        Condition {
                Type RegexMatch
                Regex "(rt722(-sdca)?)"
-               String "${var:MultiSpeakerShadow}"
+               String "${var:SpeakerCodec1}"
        }
        True {
                SectionDevice."Speaker" {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/alsa-ucm-conf-1.2.16/ucm2/sof-soundwire/sof-soundwire.conf 
new/alsa-ucm-conf-1.2.16.1/ucm2/sof-soundwire/sof-soundwire.conf
--- old/alsa-ucm-conf-1.2.16/ucm2/sof-soundwire/sof-soundwire.conf      
2026-06-01 10:04:27.000000000 +0200
+++ new/alsa-ucm-conf-1.2.16.1/ucm2/sof-soundwire/sof-soundwire.conf    
2026-06-12 14:59:45.000000000 +0200
@@ -1,4 +1,4 @@
-Syntax 7
+Syntax 8
 
 SectionUseCase."HiFi" {
        File "/sof-soundwire/HiFi.conf"
@@ -18,6 +18,7 @@
        Mics1 "0"
        Iec61937Pcms1 ""
        MultiCodec1 ""
+       MultiCodecRegex "rt712|rt713|rt721|rt722|rt1320"
 }
 
 DefineRegex {
@@ -50,12 +51,19 @@
                String "${CardComponents}"
        }
        MultiCodec {
-               Regex "(rt712|rt713|rt721|rt722|rt1320)"
+               Regex "(${var:MultiCodecRegex})"
                String "${var:SpeakerCodec1} ${var:HeadsetCodec1} 
${var:MicCodec1}"
        }
 }
 
-# check to keep combatibility with older kernels that have two separate spk: 
tags
+# set default file variables after regex evaluation
+If.codec_default.Append.Define {
+       SpeakerCodecFile "${var:SpeakerCodec1}"
+       MicCodecFile "${var:MicCodec1}"
+       HeadsetCodecFile "${var:HeadsetCodec1}"
+}
+
+# check to keep compatibility with older kernels that have two separate spk: 
tags
 If.old_multi_spk {
        Condition {
                Type RegexMatch
@@ -65,81 +73,117 @@
        True.Define.SpeakerCodec1 "cs42l43-spk+cs35l56"
 }
 
-If.multi_init {
+DefineMacro.MultiCodecInit.If.a {
        Condition {
                Type String
-               Empty "${var:MultiCodec1}"
+               # guard with "=" to not match the codec name in the middle
+               Haystack 
"=${var:SpeakerCodec1}=${var:HeadsetCodec1}=${var:MicCodec1}"
+               Needle "=${var:__CodecId}"
        }
-       False {
-               Define {
-                       MultiSpeakerShadow "${var:SpeakerCodec1}"
-                       MultiMicShadow "${var:MicCodec1}"
+       True {
+               If.spk {
+                       Condition {
+                               Type RegexMatch
+                               # guard with "=" to avoid empty string matching
+                               Regex "=(${var:__CodecId}(-sdca)?)="
+                               String "=${var:SpeakerCodec1}="
+                       }
+                       True.Define.SpeakerCodecFile "${var:__CodecId}"
+               }
+               If.headset {
+                       Condition {
+                               Type RegexMatch
+                               # guard with "=" to avoid empty string matching
+                               Regex "=(${var:__CodecId}(-sdca)?)="
+                               String "=${var:HeadsetCodec1}="
+                       }
+                       True.Define.HeadsetCodecFile "${var:__CodecId}"
+               }
+               If.mic {
+                       Condition {
+                               Type RegexMatch
+                               # guard with "=" to avoid empty string matching
+                               Regex "=(${var:__CodecId}(-sdca|-dmic)?)="
+                               String "=${var:MicCodec1}="
+                       }
+                       True.Define.MicCodecFile "${var:__CodecId}"
                }
-               Include.multi_init.File "/codecs/${var:MultiCodec1}/init.conf"
        }
 }
 
-If.multi_speaker {
+# probe codecs with multiple functions, modify file variables
+If.multi_init {
        Condition {
-               Type RegexMatch
-               # guard with "=" to avoid empty string matching
-               Regex "=(${var:MultiCodec1}(-sdca)?)="
-               String "=${var:SpeakerCodec1}="
+               Type String
+               Empty "${var:MultiCodec1}"
        }
-       True {
-               Define.SpeakerCodec1 ""
+       False {
+               Macro.rt712.MultiCodecInit "CodecId=rt712"
+               Macro.rt713.MultiCodecInit "CodecId=rt713"
+               Macro.rt721.MultiCodecInit "CodecId=rt721"
+               Macro.rt722.MultiCodecInit "CodecId=rt722"
+               Macro.rt1320.MultiCodecInit "CodecId=rt1320"
        }
 }
 
-If.multi_mic {
+If.spk {
        Condition {
-               Type RegexMatch
-               # guard with "=" to avoid empty string matching
-               Regex "=(${var:MultiCodec1}(-sdca)?)="
-               String "=${var:MicCodec1}="
+               Type String
+               Empty "${var:SpeakerCodecFile}"
        }
-       True {
-               Define.MicCodec1 ""
+       False.If.filter {
+               Condition {
+                       Type RegexMatch
+                       Regex 
"(${var:MultiCodecRegex}|rt1318|cs42l43-spk(\\+cs35l56)?|cs35l56((-bridge)|(\\+cs42l43-spk))?)"
+                       String "${var:SpeakerCodecFile}"
+               }
+               True.Include.a.File "/codecs/${var:SpeakerCodecFile}/init.conf"
        }
 }
 
-If.multi_headset {
+If.mic {
        Condition {
-               Type RegexMatch
-               # guard with "=" to avoid empty string matching
-               Regex "=(${var:MultiCodec1}(-sdca)?)="
-               String "=${var:HeadsetCodec1}="
-       }
-       True {
-               Define.HeadsetCodec1 ""
+               Type String
+               Empty "${var:MicCodecFile}"
        }
-}
-
-If.spk_init {
-       Condition {
-               Type RegexMatch
-               Regex 
"(rt1318(-1)?|cs42l43-spk(\\+cs35l56)?|cs35l56((-bridge)|(\\+cs42l43-spk))?)"
-               String "${var:SpeakerCodec1}"
+       False.If.dup {
+               Condition {
+                       Type String
+                       String1 "${var:MicCodecFile}"
+                       String2 "${var:SpeakerCodecFile}"
+               }
+               False.If.filter {
+                       Condition {
+                               Type RegexMatch
+                               Regex 
"(${var:MultiCodecRegex}|(acp|cs42l43|cs42l45|cs47l47)-dmic|rt715(-sdca)?)"
+                               String "${var:MicCodecFile}"
+                       }
+                       True.Include.a.File 
"/codecs/${var:MicCodecFile}/init.conf"
+               }
        }
-       True.Include.spk_init.File "/codecs/${var:SpeakerCodec1}/init.conf"
 }
 
-If.hs_init {
+If.headset {
        Condition {
-               Type RegexMatch
-               Regex 
"(cs42l43|cs42l45|cs47l47|rt5682|rt700|rt711|rt713(-sdca)?|rt722)"
-               String "${var:HeadsetCodec1}"
+               Type String
+               Empty "${var:HeadsetCodecFile}"
        }
-       True.Include.hs_init.File "/codecs/${var:HeadsetCodec1}/init.conf"
-}
-
-If.mic_init {
-       Condition {
-               Type RegexMatch
-               Regex 
"((acp|cs42l43|cs42l45|cs47l47|rt712|rt713)-dmic|rt715(-sdca)?)"
-               String "${var:MicCodec1}"
+       False.If.dup {
+               Condition {
+                       Type String
+                       # guard with "=" to avoid empty string matching
+                       Needle "=${var:HeadsetCodecFile}="
+                       Haystack "=${var:SpeakerCodecFile}=${var:MicCodecFile}="
+               }
+               False.If.filter {
+                       Condition {
+                               Type RegexMatch
+                               Regex 
"(${var:MultiCodecRegex}|cs42l43|cs42l45|cs47l47|rt5682|rt700|rt711)"
+                               String "${var:HeadsetCodecFile}"
+                       }
+                       True.Include.a.File 
"/codecs/${var:HeadsetCodecFile}/init.conf"
+               }
        }
-       True.Include.mic_init.File "/codecs/${var:MicCodec1}/init.conf"
 }
 
 If.mic_init_rt715 {

Reply via email to