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-01-14 16:20:21 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/alsa-ucm-conf (Old) and /work/SRC/openSUSE:Factory/.alsa-ucm-conf.new.1928 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "alsa-ucm-conf" Wed Jan 14 16:20:21 2026 rev:38 rq:1327057 version:1.2.15.3 Changes: -------- --- /work/SRC/openSUSE:Factory/alsa-ucm-conf/alsa-ucm-conf.changes 2026-01-12 10:23:23.782601088 +0100 +++ /work/SRC/openSUSE:Factory/.alsa-ucm-conf.new.1928/alsa-ucm-conf.changes 2026-01-14 16:20:28.658449030 +0100 @@ -1,0 +2,6 @@ +Tue Jan 13 15:51:24 UTC 2026 - Takashi Iwai <[email protected]> + +- Update to alsa-ucm-conf 1.2.15.3: + * Fixes for HDA-analog, sof-hda-dsp and USB-audio + +------------------------------------------------------------------- Old: ---- alsa-ucm-conf-1.2.15.2.tar.bz2 alsa-ucm-conf-1.2.15.2.tar.bz2.sig New: ---- alsa-ucm-conf-1.2.15.3.tar.bz2 alsa-ucm-conf-1.2.15.3.tar.bz2.sig ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ alsa-ucm-conf.spec ++++++ --- /var/tmp/diff_new_pack.IRleti/_old 2026-01-14 16:20:29.558486477 +0100 +++ /var/tmp/diff_new_pack.IRleti/_new 2026-01-14 16:20:29.562486643 +0100 @@ -17,7 +17,7 @@ Name: alsa-ucm-conf -Version: 1.2.15.2 +Version: 1.2.15.3 Release: 0 Summary: ALSA UCM Profiles License: BSD-3-Clause ++++++ alsa-ucm-conf-1.2.15.2.tar.bz2 -> alsa-ucm-conf-1.2.15.3.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-ucm-conf-1.2.15.2/ucm2/HDA/HiFi-analog.conf new/alsa-ucm-conf-1.2.15.3/ucm2/HDA/HiFi-analog.conf --- old/alsa-ucm-conf-1.2.15.2/ucm2/HDA/HiFi-analog.conf 2026-01-08 15:28:01.000000000 +0100 +++ new/alsa-ucm-conf-1.2.15.3/ucm2/HDA/HiFi-analog.conf 2026-01-13 08:12:41.000000000 +0100 @@ -1,6 +1,7 @@ # Generic HDA devices for analog I/O Define.LineDevice "" +Define.spkvol "Speaker" Define.hpvol "Headphone" Define.hpjack "Headphone Jack" Define.loctl "Line" @@ -21,10 +22,21 @@ } } +If.nolineout { + Condition { + Type ControlExists + Control "name='Line Playback Switch'" + } + False.Define { + loctl "" + lovol "" + } +} + If.lineout { Condition { Type ControlExists - Control "name='Line Out Playback Volume'" + Control "name='Line Out Playback Switch'" } True.Define { loctl "Line Out" @@ -45,7 +57,7 @@ If.hpvol { Condition { Type ControlExists - Control "name='Headphone Playback Volume'" + Control "name='Headphone Playback Switch'" } False.Define.hpvol "" } @@ -61,6 +73,57 @@ } } +If.spkvol { + Condition { + Type ControlExists + Control "name='Speaker Playback Switch'" + } + False.Define.spkvol "" +} + +If.outnone { + Condition { + Type String + Empty "${var:hpvol}${var:spkvol}${var:lovol}" + } + True { + If.spk { + Condition { + Type ControlExists + Control "iface=CARD,name='Speaker Phantom Jack'" + } + True.Define.spkvol "Master" + } + If.line { + Condition { + Type ControlExists + Control "iface=CARD,name='Line Phantom Jack'" + } + True.Define.lovol "Master" + } + If.lineout { + Condition { + Type ControlExists + Control "iface=CARD,name='Line Out Phantom Jack'" + } + True.Define.lovol "Master" + } + If.none { + Condition { + Type String + Empty "${var:spkvol}${var:lovol}" + } + True.If.default { + Condition { + Type ControlExists + Control "name='Master Playback Switch'" + } + True.Define.hpvol "Master" + } + } + } +} + If.hp { Condition { Type String @@ -88,20 +151,28 @@ PlaybackPriority 200 PlaybackPCM "hw:${CardId}" PlaybackMixerElem "${var:hpvol}" - PlaybackMasterElem "Master" PlaybackVolume "${var:hpvol} Playback Volume" - PlaybackSwitch "Headphone Playback Switch" + PlaybackSwitch "${var:hpvol} Playback Switch" JackControl "${var:hpjack}" } + + If.master { + Condition { + Type String + String1 "${var:hpvol}" + String2 "Master" + } + False.Value.PlaybackMasterElem "Master" + } } } If.spk { Condition { - Type ControlExists - Control "name='Speaker Playback Switch'" + Type String + Empty "${var:spkvol}" } - True.SectionDevice."Speaker" { + False.SectionDevice."Speaker" { Comment "Speaker" If.seq { @@ -122,11 +193,11 @@ } False { EnableSequence [ - cset "name='Speaker Playback Switch' on" + cset "name='${var:spkvol} Playback Switch' on" ] DisableSequence [ - cset "name='Speaker Playback Switch' off" + cset "name='${var:spkvol} Playback Switch' off" ] } } @@ -134,10 +205,18 @@ Value { PlaybackPriority 100 PlaybackPCM "hw:${CardId}" - PlaybackMixerElem "Speaker" - PlaybackMasterElem "Master" - PlaybackVolume "Speaker Playback Volume" - PlaybackSwitch "Speaker Playback Switch" + PlaybackMixerElem "${var:spkvol}" + PlaybackVolume "${var:spkvol} Playback Volume" + PlaybackSwitch "${var:spkvol} Playback Switch" + } + + If.master { + Condition { + Type String + String1 "${var:spkvol}" + String2 "Master" + } + False.Value.PlaybackMasterElem "Master" } } } @@ -152,10 +231,10 @@ If.line { Condition { - Type ControlExists - Control "name='${var:loctl} Playback Switch'" + Type String + Empty "${var:loctl}" } - True.SectionDevice."Line${var:LineDevice}" { + False.SectionDevice."Line${var:LineDevice}" { Comment "Line Output" If.conflict { @@ -180,11 +259,19 @@ PlaybackPriority 300 PlaybackPCM "hw:${CardId}" PlaybackMixerElem "${var:lovol}" - PlaybackMasterElem "Master" PlaybackVolume "${var:lovol} Playback Volume" PlaybackSwitch "${var:loctl} Playback Switch" JackControl "${var:loctl} Jack" } + + If.master { + Condition { + Type String + String1 "${var:lovol}" + String2 "Master" + } + False.Value.PlaybackMasterElem "Master" + } } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-ucm-conf-1.2.15.2/ucm2/Intel/sof-hda-dsp/HiFi-sof.conf new/alsa-ucm-conf-1.2.15.3/ucm2/Intel/sof-hda-dsp/HiFi-sof.conf --- old/alsa-ucm-conf-1.2.15.2/ucm2/Intel/sof-hda-dsp/HiFi-sof.conf 2026-01-08 15:28:01.000000000 +0100 +++ new/alsa-ucm-conf-1.2.15.3/ucm2/Intel/sof-hda-dsp/HiFi-sof.conf 2026-01-13 08:12:41.000000000 +0100 @@ -19,7 +19,6 @@ True { EnableSequence [ # For debug uncomment below the echo command to see what blobs are applied - #shell "/bin/echo '${var:__endpoint} ${var:EndpointIirBlob} ${var:EndpointFirBlob} ${var:EndpointDrcBlob}' >> /tmp/alsa-ucm.txt" cset "name='${var:PostMixerAnalogPlaybackDrcSwitch}' ${var:__drcswitch}" cset-tlv "name='${var:PostMixerAnalogPlaybackDrcBytes}' ${var:EndpointDrcBlob}" cset-tlv "name='${var:PostMixerAnalogPlaybackIirBytes}' ${var:EndpointIirBlob}" @@ -34,7 +33,6 @@ True { EnableSequence [ # For debug uncomment below the echo command to see what blobs are applied - #shell "/bin/echo '${var:__endpoint} ${var:EndpointIirBlob} ${var:EndpointFirBlob}' >> /tmp/alsa-ucm.txt" cset-tlv "name='${var:PostMixerAnalogPlaybackIirBytes}' ${var:EndpointIirBlob}" cset-tlv "name='${var:PostMixerAnalogPlaybackFirBytes}' ${var:EndpointFirBlob}" ] @@ -44,15 +42,21 @@ } # Merge this to Headpones subtree in HDA/HiFi-analog.conf -SectionDevice."Headphones" { - Macro.headphone.SofAnalogPlaybackControl "endpoint=Headphone drcswitch=off" +If.hp { + Condition { + Type String + Empty "${var:hpvol}" + } + True.SectionDevice."Headphones" { + Macro.headphone.SofAnalogPlaybackControl "endpoint=Headphone drcswitch=off" + } } # Merge this to Speaker subtree in HDA/HiFi-analog.conf If.spk { Condition { - Type ControlExists - Control "name='Speaker Playback Switch'" + Type String + Empty "${var:spkvol}" } True.SectionDevice."Speaker" { Macro.speaker.SofAnalogPlaybackControl "endpoint=Speaker drcswitch=on" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-ucm-conf-1.2.15.2/ucm2/USB-Audio/Behringer/UMC202HD.conf new/alsa-ucm-conf-1.2.15.3/ucm2/USB-Audio/Behringer/UMC202HD.conf --- old/alsa-ucm-conf-1.2.15.2/ucm2/USB-Audio/Behringer/UMC202HD.conf 2026-01-08 15:28:01.000000000 +0100 +++ new/alsa-ucm-conf-1.2.15.3/ucm2/USB-Audio/Behringer/UMC202HD.conf 2026-01-13 08:12:41.000000000 +0100 @@ -8,3 +8,7 @@ Include.dhw.File "/common/directm.conf" Macro.0.DirectUseCase { Id="Direct" PlaybackChannels=2 CaptureChannels=2 } + +If.dvol.Prepend.SectionUseCase."Direct".Config.SectionDevice."Direct".Value { + PlaybackMixerElem "UMC202HD 192k Output" +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-ucm-conf-1.2.15.2/ucm2/USB-Audio/Behringer/UMC204HD.conf new/alsa-ucm-conf-1.2.15.3/ucm2/USB-Audio/Behringer/UMC204HD.conf --- old/alsa-ucm-conf-1.2.15.2/ucm2/USB-Audio/Behringer/UMC204HD.conf 2026-01-08 15:28:01.000000000 +0100 +++ new/alsa-ucm-conf-1.2.15.3/ucm2/USB-Audio/Behringer/UMC204HD.conf 2026-01-13 08:12:41.000000000 +0100 @@ -8,3 +8,7 @@ Include.dhw.File "/common/directm.conf" Macro.0.DirectUseCase { Id="Direct" PlaybackChannels=4 CaptureChannels=2 } + +If.dvol.Prepend.SectionUseCase."Direct".Config.SectionDevice."Direct".Value { + PlaybackMixerElem "UMC204HD 192k Output" +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-ucm-conf-1.2.15.2/ucm2/USB-Audio/Behringer/UMC404HD.conf new/alsa-ucm-conf-1.2.15.3/ucm2/USB-Audio/Behringer/UMC404HD.conf --- old/alsa-ucm-conf-1.2.15.2/ucm2/USB-Audio/Behringer/UMC404HD.conf 2026-01-08 15:28:01.000000000 +0100 +++ new/alsa-ucm-conf-1.2.15.3/ucm2/USB-Audio/Behringer/UMC404HD.conf 2026-01-13 08:12:41.000000000 +0100 @@ -8,3 +8,7 @@ Include.dhw.File "/common/directm.conf" Macro.0.DirectUseCase { Id="Direct" PlaybackChannels=4 CaptureChannels=4 } + +If.dvol.Prepend.SectionUseCase."Direct".Config.SectionDevice."Direct".Value { + PlaybackMixerElem "UMC404HD 192k Output" +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-ucm-conf-1.2.15.2/ucm2/USB-Audio/Steinberg/UR22C.conf new/alsa-ucm-conf-1.2.15.3/ucm2/USB-Audio/Steinberg/UR22C.conf --- old/alsa-ucm-conf-1.2.15.2/ucm2/USB-Audio/Steinberg/UR22C.conf 2026-01-08 15:28:01.000000000 +0100 +++ new/alsa-ucm-conf-1.2.15.3/ucm2/USB-Audio/Steinberg/UR22C.conf 2026-01-13 08:12:41.000000000 +0100 @@ -7,7 +7,7 @@ Condition { Type RegexMatch String "${sys-card:device/../bcdDevice}" - Match "0[12].." + Regex "0[12].." } True.Define.DirectCaptureChannels 2 } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-ucm-conf-1.2.15.2/ucm2/USB-Audio/Steinberg/UR24C-HiFi.conf new/alsa-ucm-conf-1.2.15.3/ucm2/USB-Audio/Steinberg/UR24C-HiFi.conf --- old/alsa-ucm-conf-1.2.15.2/ucm2/USB-Audio/Steinberg/UR24C-HiFi.conf 2026-01-08 15:28:01.000000000 +0100 +++ new/alsa-ucm-conf-1.2.15.3/ucm2/USB-Audio/Steinberg/UR24C-HiFi.conf 2026-01-13 08:12:41.000000000 +0100 @@ -18,7 +18,7 @@ Name "steinberg_ur24c_mono_in" Direction Capture Channels 1 - HWChannels 2 + HWChannels "${var:DirectCaptureChannels}" HWChannelPos0 MONO HWChannelPos1 MONO } @@ -70,7 +70,7 @@ Macro.pcm_split.SplitPCMDevice { Name "steinberg_ur24c_mono_in" Direction Capture - HWChannels 2 + HWChannels "${var:DirectCaptureChannels}" Channels 1 Channel0 0 ChannelPos0 MONO @@ -86,7 +86,7 @@ Macro.pcm_split.SplitPCMDevice { Name "steinberg_ur24c_mono_in" Direction Capture - HWChannels 2 + HWChannels "${var:DirectCaptureChannels}" Channels 1 Channel0 1 ChannelPos0 MONO diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-ucm-conf-1.2.15.2/ucm2/USB-Audio/Steinberg/UR24C.conf new/alsa-ucm-conf-1.2.15.3/ucm2/USB-Audio/Steinberg/UR24C.conf --- old/alsa-ucm-conf-1.2.15.2/ucm2/USB-Audio/Steinberg/UR24C.conf 2026-01-08 15:28:01.000000000 +0100 +++ new/alsa-ucm-conf-1.2.15.3/ucm2/USB-Audio/Steinberg/UR24C.conf 2026-01-13 08:12:41.000000000 +0100 @@ -1,5 +1,17 @@ Comment "Steinberg UR24C USB-Audio" +Define.DirectPlaybackChannels 4 +Define.DirectCaptureChannels 4 + +If.fw { + Condition { + Type RegexMatch + String "${sys-card:device/../bcdDevice}" + Regex "0[12].." + } + True.Define.DirectCaptureChannels 2 +} + SectionUseCase."HiFi" { Comment "HiFi" File "/USB-Audio/Steinberg/UR24C-HiFi.conf" @@ -7,4 +19,4 @@ Include.dhw.File "/common/directm.conf" -Macro.0.DirectUseCase { Id="Direct" PlaybackChannels=4 CaptureChannels=2 } +Macro.0.DirectUseCase { Id="Direct" PlaybackChannels="${var:DirectPlaybackChannels}" CaptureChannels="${var:DirectCaptureChannels}" }
