This patch adds configs for rt1320 dmic function.
It defines the MicMixerElem, a remapped control for the two rt1320-dmic
case, and also attaches rt1320 FU capture controls to the mic LED.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/743 Signed-off-by: derek fang <derek.fang@realtek.com> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Declare the maximum four HDMI/DisplayPort outputs (PCM devices 3, 7,
8 and 9) so PipeWire can see every available port. The HDMI macro's
built-in ControlExists check ensures devices are only created when the
corresponding jack control exists, so SoCs with fewer outputs are
unaffected.
ucm2: Qualcomm: Create missing symlink for Radxa Dragon Q6A
The long card name set by the Linux kernel is based on the DMI information
for the vendor name, product name and board revision. Create a symlink so
that the configuration is correctly picked up by ALSA if DMI is enabled
in the kernel.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/736 Signed-off-by: Aelin Reidel <aelin@mainlining.org> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Maciej Strozek [Mon, 6 Apr 2026 12:59:39 +0000 (13:59 +0100)]
ucm2: sof-soundwire: cs42l43: support UAJ-less configuration
In some cases cs42l43/cs42l43b devices can be set up without UAJ. In
this case, guard the ConflictingDevices behind a check for a cs42l43's
headset's presence so the UCM can still load even if the headset is
missing.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/738 Signed-off-by: Maciej Strozek <mstrozek@opensource.cirrus.com> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Edward Matijevic [Mon, 30 Mar 2026 16:49:47 +0000 (11:49 -0500)]
USB-Audio: Add Audient EVO4
This is a 4in/4out device with 1 analog stereo out and 2 analog mono in.
The hardware mixed loopback interface takes up the remaining 4 channels.
Without this UCM the device is configured as 4.0 surround for in and out.
I copied the Windows config except for the stereo mic mix.
Modifying hardware volumes/gain other than main output seems to require
a driver or external software similar to the one found on github at the
repo github.com/vijay-prema/audient-evo-linux-tools
Closes: #303 Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/708 Signed-off-by: Edward Matijevic <motolav@gmail.com> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Valentin David [Fri, 2 Jan 2026 12:19:48 +0000 (13:19 +0100)]
Add UCM2 configuration for M-Audio Fast Track Ultra
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/672 Signed-off-by: Valentin David <me@valentindavid.com> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
sof-hda-dsp: add workaround for speaker LED on MSI laptops
Fixes: Master Playback Switch doesn't get attached to the Mute LED
on these two platforms. This change adresses this issue.
Also fixes 0915b27a which accidentally broke dell workaround.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/716 Fixes: 0915b27 ("ucm2: use new SetLED macro to hide the implementation details") Signed-off-by: Federico Lombardo <lombardo.federico.lf@gmail.com> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Jaroslav Kysela [Mon, 30 Mar 2026 13:43:12 +0000 (15:43 +0200)]
github: add GitHub label automation and SOB validation workflows
This commit introduces a complete automation system for GitHub repositories
that provides automatic label-based commenting and Signed-off-by validation.
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Maciej Strozek [Thu, 18 Dec 2025 09:23:56 +0000 (09:23 +0000)]
ucm2: sof-soundwire: Add support for CS42L43B variant
From UCM point of view CS42L43B codec adds 2 new decimators and removes
a control to change Decimator 1 mode from base CS42L43. Thus reuse
CS42L43 files, and guard the CS42L43B additions behind a condition
that the new Decimator controls exist.
ucm2: sof-soundwire: Add support for Cirrus Logic CS47L47
Add the sof-soundwire and codec files for the CS47L47.
This is a SDCA codec with headphone/headset and digital mic.
The configuration is based on the CS42L45 files.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/709 Signed-off-by: Richard Fitzgerald <rf@opensource.cirrus.com> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
pir0c0pter0 [Tue, 17 Mar 2026 23:52:01 +0000 (20:52 -0300)]
ucm2: Qualcomm: add ASUS Vivobook 14 (X1407QA) to x1e80100 DMI match
The ASUS Vivobook 14 X1407QA (Snapdragon X X1-26-100, x1p42100 'Purwa' die)
reports DMI product_family as 'ASUS Vivobook 14' but was not matched by the
existing regex, leaving audio non-functional.
Hardware: WCD9385 codec + 2x WSA884x speakers via SoundWire + ADSP Q6APM,
identical audio topology to the other ASUS Snapdragon X devices already matched.
DMI strings:
board_vendor: ASUSTeK COMPUTER INC.
product_family: ASUS Vivobook 14
board_name: X1407QA
product_name: ASUS Vivobook 14 X1407QA_X1407QA
Tested on Fedora 44 aarch64, kernel 6.12+.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/725 Signed-off-by: pir0c0pter0 <pir0c0pter0000@gmail.com> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Le Qi [Mon, 23 Mar 2026 07:20:24 +0000 (15:20 +0800)]
ucm2: da7213: Fix mic capture in HeadphoneMic2 use case
Set Mic 2 Volume to index 4 (+18 dB) and Mixin PGA Volume to index
10 (+10.5 dB) for sufficient microphone capture gain.
Remove headphone output controls (Headphone Volume, Headphone Switch,
Mixout DAC switches) as these belong to HeadphoneEnableSeq.conf and
should not be duplicated in the capture sequence.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/730 Signed-off-by: Le Qi <le.qi@oss.qualcomm.com> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Derek Keith [Mon, 23 Mar 2026 11:11:58 +0000 (05:11 -0600)]
USB-Audio: Scarlett 18i20 fix ADAT capture channel count for Gen 1/2
The Scarlett 18i20 Gen 1 (0x800c) and Gen 2 (0x8201) have 18 capture
channels, but the ADAT Optical Input device ("Direct 2") unconditionally
maps 8 channels (indices 12-19). Channel indices 18 and 19 exceed the
available capture channels, causing WirePlumber/PipeWire to reject the
UCM profile:
spa.alsa: Error in ALSA UCM profile for _ucm0003.hw:USB,0 (Direct2):
CaptureChannel6=18 >= CaptureChannels=18
Conditionally size the ADAT capture device based on DirectCaptureChannels:
- Gen 1/2 (18 channels): 6-channel ADAT (indices 12-17)
- Gen 3+ (20+ channels): 8-channel ADAT (indices 12-19)
Tested on a Scarlett 18i20 Gen 2 (USB1235:8201) running PipeWire 1.4
with WirePlumber on CachyOS.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/731 Signed-off-by: Derek Keith <derek@codeurge.com> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Use tabs instead of spaces
Reduce files
Include simple configs using new Synthax 8
Remove duplicated Comment assignment
Update Priority values
Fix regex pattern
Val Packett [Fri, 2 Jan 2026 06:13:59 +0000 (03:13 -0300)]
ucm2: codecs: lpass-wsa-macro: disable WSA_COMP
The compander does not seem to work correctly on many of the platforms
currently in use with upstream software. Particularly some very annoying
"boominess on attacks" is heard on X Elite laptops when it's on.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/670 Signed-off-by: Val Packett <val@packett.cool> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Val Packett [Fri, 2 Jan 2026 06:03:24 +0000 (03:03 -0300)]
ucm2: codecs: lpass-rx-macro: disable RX_COMP
The compander does not seem to work correctly on many of the platforms
currently in use with upstream software. Strange effects such as quiet
sounds being panned to the left channel and some "boominess on attacks"
can be heard when it's on.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/670 Signed-off-by: Val Packett <val@packett.cool> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Val Packett [Fri, 2 Jan 2026 08:16:18 +0000 (05:16 -0300)]
ucm2: codecs: wcd938x: add enable sequence with CLS_AB_LOHIFI for laptops
Laptops have A/B class amps and using H class mode results in distortion.
Create a specific sequence variant for them.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/670 Signed-off-by: Val Packett <val@packett.cool> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Val Packett [Fri, 2 Jan 2026 07:05:45 +0000 (04:05 -0300)]
ucm2: codecs: wcd939x: Use CLS_H_LOHIFI instead of CLS_H_ULP by default
The ULP mode is too weak to drive headphones, causing distortion above
30-40% volume. Switch to LOHIFI as a more reasonable default.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/670 Signed-off-by: Val Packett <val@packett.cool> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Val Packett [Fri, 2 Jan 2026 07:07:48 +0000 (04:07 -0300)]
ucm2: codecs: wcd937x: Use CLS_H_LOHIFI instead of CLS_H_ULP by default
The ULP mode is too weak to drive headphones, causing distortion above
30-40% volume. Switch to LOHIFI as a more reasonable default.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/670 Signed-off-by: Val Packett <val@packett.cool> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Val Packett [Fri, 2 Jan 2026 07:08:07 +0000 (04:08 -0300)]
ucm2: codecs: wcd934x: Use CLS_H_LOHIFI instead of CLS_H_ULP by default
The ULP mode is too weak to drive headphones, causing distortion above
30-40% volume. Switch to LOHIFI as a more reasonable default.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/670 Signed-off-by: Val Packett <val@packett.cool> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Le Qi [Thu, 12 Feb 2026 07:16:41 +0000 (15:16 +0800)]
Qualcomm: qcs615: Remove JackControl from TALOS EVK HiFi config
The EVK board does not support headset or jack detection.
Keeping JackControl entries prevents PipeWire (wpctl) from
exposing sinks and sources correctly.
Remove JackControl from Headphones and Headset devices so
PipeWire can enumerate playback and capture nodes normally.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/704 Signed-off-by: Le Qi <le.qi@oss.qualcomm.com> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Mikael Voss [Sun, 25 Jan 2026 14:17:34 +0000 (15:17 +0100)]
USB-Audio: correct typo in Universal Audio Volt 2 config
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/696 Signed-off-by: Mikael Voss <mvs@nyantec.com> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Kevin Cox [Mon, 29 Dec 2025 21:12:41 +0000 (16:12 -0500)]
Add support for the Behringer ULM200D wireless microphones.
This is a USB receiver for two wireless microphones.
Each microphone appears on a different channel.
By default these would be detected as left and right.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/669 Signed-off-by: Kevin Cox <kevincox@kevincox.ca> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Le Qi [Wed, 7 Jan 2026 03:20:54 +0000 (11:20 +0800)]
ucm2: da7213: Add ADC switch in HeadphoneMic2 sequences
Enable and disable the ADC switch in HeadphoneMic2EnableSeq.conf and
HeadphoneMic2DisableSeq.conf to ensure headset microphone audio works
properly on Talos EVK with DA7213 codec.
Without this change, the headset mic path remains muted and capture
does not function.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/682 Fixes: 5ccdd19 ("Qualcomm: qcs615: Add TALOS EVK HiFi config") Signed-off-by: Le Qi <le.qi@oss.qualcomm.com> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Jaroslav Kysela [Wed, 14 Jan 2026 15:51:13 +0000 (16:51 +0100)]
USB-Audio: Dualsense PS5 - add direct use case
Wine games expecting 4 channel playback stream to handle
correctly audio and haptic channel arrangment.
Add direct use case and make it as first until
user selects another profile which may cause failure
for wine games.
For a permanent solution, wine should combine 4 channel
device from the sinks created using the channel split
mechanism or add pipewire protocol. In later case, the
the straight hardware device output ports should be used.
Kellerman Rivero [Sun, 14 Dec 2025 11:29:36 +0000 (12:29 +0100)]
ucm2: Qualcomm: add Asus Vivobook 16 support
Same layout as T14s, 2 speakers, hedphone jack, DMIC
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/668 Signed-off-by: Kellerman Rivero <krsloco@gmail.com> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Add a new target with extended regex string. Device is mostly
compatible with Yoga Slim7x, however features only x2 not x3 DP audio
outputs (USB Type-C). As upcoming DP audio addition will require
config separation, create a dedicated config right away.
x4 speakers, x2 DMICs, x2 DP, no headphone jack/WCD codec.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/587 Signed-off-by: Aleksandrs Vinarskis <alex@vinarskis.com> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
In most cases its not the config name (device model name) that matters
but the hardware variation of that model. To make currently supported
devices easier to re-use, document the layout. While most configs do
not yet have DP/HDMI defined, it will matter once these are getting
added.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/587 Signed-off-by: Aleksandrs Vinarskis <alex@vinarskis.com> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Maciej Strozek [Fri, 2 Jan 2026 12:03:28 +0000 (12:03 +0000)]
ucm2: sof-soundwire: cs42l45: Remove outdated DisableSequence elements
cs42l45 configs has DisableSequences elements copied over from cs42l43
configuration that are no longer needed, delete them.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/671 Fixes: f47b9418c81a ("ucm2: soundwire: cs42l45: Add support for CS42L45 codec") Signed-off-by: Maciej Strozek <mstrozek@opensource.cirrus.com> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Maciej Strozek [Fri, 2 Jan 2026 11:47:24 +0000 (11:47 +0000)]
ucm2: sof-soundwire: cs42l43: Remove outdated DisableSequence elements
cs42l43's 'Headset Microphone' and 'Microphone' devices were both used
to control mic mute LED in the past, but this was changed [1] to only
allow the built-in microphones to control the LED. Thus clean up the
DisableSequences to remove the switching off that is no longer needed.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/671 Fixes: e87dde51d689 ("sof-soundwire: Add basic support for cs42l43") Signed-off-by: Maciej Strozek <mstrozek@opensource.cirrus.com> Signed-off-by: Jaroslav Kysela <perex@perex.cz>