Detailed changes v1.2.14 v1.2.15
Detailed changelog between 1.2.14 and 1.2.15 releases
Changelog between 1.2.14 and 1.2.15 releases
alsa-lib
Core
- Release v1.2.15
- include: fix typo in error.h to avoid compile error when gcc <= 2.95
Closes: https://github.com/alsa-project/alsa-lib/pull/483
- include: list.h - add list_splice() and list_splice_init() functions
- github: add coverity.yml
- doxygen: fix warnings and add missing ALSA_LIBRARY_BUILD define
BugLink: https://github.com/alsa-project/alsa-lib/pull/480
- error: add missing log_priority/interface functions to header file
- configure: bumb version to 1.2.13pre1 (for alsa-utils)
- include: remove local SNDMSG/SYSMSG defines (no longer used)
- huge correction of tabulators and whitespaces
- log: implement filter based on string configuration (env LIBASOUND_DEBUG).
Examples:
"debug" - Set global level to debug
"3" - Set global level to 3 (info)
"info,pcm:debug" - Set global to info, pcm to debug
"error,mixer:5,pcm:4" - Set global to error, mixer to 5 (trace), pcm to 4 (debug)
- error: add priority and interface strings to the log messages
- redesign the message log functions
Add priority level and interface classifiers. Define macros
for all priority level types to keep the callers more readable.
Ensure the compatibility with previous logging mechanism.
- error: do not export internal snd_err_msg variable
This variable was never intended to modify from outside (not in public
headers).
- github: fix Fedora workflow (awk package dependency)
Config API
- doxygen: fix warnings and add missing ALSA_LIBRARY_BUILD define
BugLink: https://github.com/alsa-project/alsa-lib/pull/480
- huge correction of tabulators and whitespaces
Control API
- coverity.com fixes - initial round
This commit tries to fix a bunch of issues found
by coverity.com.
- snd_tlv_convert_to_dB: Fix mute handling for MINMAX_MUTE type
Ensure the SND_CTL_TLV_DB_GAIN_MUTE value is returned when the calculated
gain equals the minimum dB value for the SNDRV_CTL_TLVT_DB_MINMAX_MUTE type.
The previous check based solely on the volume value could miss cases where
the linear calculation resulted in the minimum gain.
Closes: https://github.com/alsa-project/alsa-lib/pull/478
- doxygen: fix warnings and add missing ALSA_LIBRARY_BUILD define
BugLink: https://github.com/alsa-project/alsa-lib/pull/480
- huge correction of tabulators and whitespaces
- redesign the message log functions
Add priority level and interface classifiers. Define macros
for all priority level types to keep the callers more readable.
Ensure the compatibility with previous logging mechanism.
HWDEP API
- doxygen: fix warnings and add missing ALSA_LIBRARY_BUILD define
BugLink: https://github.com/alsa-project/alsa-lib/pull/480
Mixer API
- mixer: abst - reshuffle snd_mixer_simple_basic_register code to be more logical
- doxygen: fix warnings and add missing ALSA_LIBRARY_BUILD define
BugLink: https://github.com/alsa-project/alsa-lib/pull/480
- huge correction of tabulators and whitespaces
- mixer: bag - fix bag_del_all implementation (missing free)
The bag1_t structure must be freed, too.
Mixer Abstraction API
- huge correction of tabulators and whitespaces
PCM API
- pcm: plugin - avoid 32-bit to 64-bit return value conversions
Several functions were affected. Simplify code without
any functionality change.
- add missing return value changes for snd_config_get_string() calls
- add missing return value changes for snd_config_get_id() calls
- doxygen: fix warnings and add missing ALSA_LIBRARY_BUILD define
BugLink: https://github.com/alsa-project/alsa-lib/pull/480
- pcm route: suppress false positive warning for gcc 8+
- pcm: add a loop to snd_pcm_avail_delay() to avoid bogus delay values
snd_pcm_avail_delay() is expected to report avail and delay values
in atomic fashion. However the function does two separate syscalls
and it cannot guarantee the avail value is the same as was used
to calculate the delay. This is a problem as the reported delay is
always relative to avail frames value.
If application (like e.g. alsa_conformance_test) uses snd_pcm_avail_delay()
to estimate the effective play position, it can observe bogus delay
values (and effective play position going backwards) if
snd_pcm_avail_delay() is called during a DMA burst where hw_ptr
moves quickly.
This commit adds a loop similar to that used in snd_pcm_hw_htimestamp()
to wait until we get a stable avail reading, and only then extract
the delay. This will avoid bogus values if function is called during
DMA bursts.
Closes: https://github.com/alsa-project/alsa-lib/pull/469
Closes: https://github.com/alsa-project/alsa-lib/issues/468
Rawmidi API
- rawmidi: Fix SNDRV_RAWMIDI_INFO_STREAM_INACTIVE duplicate definition
The origin of this define is in include/alsa/sound/uapi/asound.h included from
include/local.h. Skip redefinition in the internal build.
- rawmidi: Fix the prefix of the inactive stream flag
I copied SNDRV_RAWMIDI_INFO_STREAM_INACTIVE definition as is from the
kernel uapi header, but for alsa-lib, it should have been changed to
SND_ prefix instead.
Put the correct definition while keeping the old SNDRV_ definition for
compatibility (that might be already used by applications).
Sequencer API
- seq: fix snd_seq_drain_output return value for partial drain
The processed value was not properly updated thus the partial
flush was not notified properly.
- seq: hw - notify if running mode / pversion ioctl fails
Topology API
- add missing return value changes for snd_config_get_id() calls - topology: fix nibble warning in tplg_save_quoted()
Use Case Manager API
- ucm: add ValueGlobals section to the top configuration file
BootCardGroup and BootCardSyncTime variables should not be listed
by default in _identifiers. Handle them differently using
ValueGlobals section.
- ucm: fix the DefineRegex issue where multiple variables were set to empty string
It is not required to set variables in undefined groups to empty string.
- ucm: Include directive - add optional behaviour
It may be useful to skip the include when the file does not exist
(make it optional).
- ucm: complete dependency graphs for conflicting/supported device lists
Modify verb_dev_list_check() to ensure all devices in a conflicting or
supported group reference each other. Previously, the function only
ensured bidirectional relationships. Now it ensures all devices in
the same group have complete dependency lists.
- ucm: implement DeviceVariant configuration extension
It may be useful for the channel count specification for example.
- ucm: implement ValueDefaults.BootCardGroup and define use
We need a boot synchronization for multiple UCM cards where linking
is expected like AMD ACP or Intel AVS drivers. This method is
using a timestamp file which can be created and modified during
the boot process (e.g. from the alsactl tool).
The goal is to return a valid UCM configuration for standard
applications combining multiple ALSA cards into one UCM configuration
and cover the time window when all cards have not been probed yet.
- ucm: keep original device name for logs
- ucm: sort devices by priority
- ucm: doc - add examples for device name with descriptors (colon)
- ucm: be more restrictive for device name with descriptor
- ucm: strip device index when the device type is present only one time
- ucm: add support for device names with colon (':')
The colon identifier means to automatically assign
a device index for this device.
- ucm: normalize device names
- ucm: add possibility to inline Verb configurations to the main configuration file
- ucm: add Prepend and Append block handling for If conditions (syntax 8+)
- add missing return value changes for snd_config_get_string() calls
- ucm: add missing stdbool.h include to ucm_local.h
- ucm: fix variant issue where variables or macros are overwritten
It is necessary to reset the state logic before each verb variant
is parsed. So save the original variable list and macros and
restore them before each parser iteration.
BugLink: https://github.com/alsa-project/alsa-ucm-conf/pull/633
- ucm: remove 'error: ' prefix from error messages (duplication)
- ucm: remove uc_dbg macro and callers
Those debug prints are not much useful now.
- ucm: replace uc_error with snd_error calls
- ucm: add a basic set of trace/debug log calls
- ucm: use close_range on _GNU_SOURCE
Closes: https://github.com/alsa-project/alsa-lib/pull/459
- Force to use alphasort64() sorting function for Harmony OS
Closes: https://github.com/alsa-project/alsa-lib/pull/467
- ucm: regex: fix the error message (missing argument)
Link: https://github.com/alsa-project/alsa-ucm-conf/pull/580
- Revert "ucm: do not bump syntax version to 8"
This reverts commit e51cba0973d97d8a4c3d2d5896b203d8c3628c89.
ALSA Server
- coverity.com fixes - initial round
This commit tries to fix a bunch of issues found
by coverity.com.
- huge correction of tabulators and whitespaces
- replace SNDMSG,SYSMSG,SNDERR,SYSERR with new log macros
... with interface identifiers
Async helpers
- coverity.com fixes - initial round
This commit tries to fix a bunch of issues found
by coverity.com.
- replace SNDMSG,SYSMSG,SNDERR,SYSERR with new log macros
... with interface identifiers
Configuration
- coverity.com fixes - initial round
This commit tries to fix a bunch of issues found
by coverity.com.
- add missing return value changes for snd_config_get_string() calls
- add missing return value changes for snd_config_get_id() calls
- conf/pistachio: fix syntax
It was missing closing brackets since its introduction.
Closes: https://github.com/alsa-project/alsa-lib/pull/470
- config: do not print errno in snd_config_check_hop()
- redesign the message log functions
Add priority level and interface classifiers. Define macros
for all priority level types to keep the callers more readable.
Ensure the compatibility with previous logging mechanism.
- conf: fix load_for_all_cards() - do not merge the card specific contents
- conf: fix parse_array_def - merge arrays
A tiny overlook caused wrong array merge. New compound member must be
always created.
- conf: Revert "conf: fix load_for_all_cards()"
This reverts commit ddfc32abf5697de1618b9e7ffdf57a0f97013090.
It was not a correct fix. The private values may differ (multiple
instances for e.g. USB sound cards). This fix prevents to load
private configurations for other instances.
- conf: fix parse_array_def override code path
The error may cause segmentation fault and incorrect behaviour.
Closes: https://github.com/alsa-project/alsa-lib/issues/477
- Force to use alphasort64() sorting function for Harmony OS
Closes: https://github.com/alsa-project/alsa-lib/pull/467
- conf: aliases: add hda-acpi -> HDA-Intel alias
The new snd_hda_acpi driver in Linux exposes the existing Azalia
interface to non-PCI devices advertised over ACPI. Add an alias
to the existing HDA-Intel configuration file so that devices using
this driver can be discovered properly.
Documentation
- doc: add missing include pcm_plugin.h to source files
- doxygen: fix warnings and add missing ALSA_LIBRARY_BUILD define
BugLink: https://github.com/alsa-project/alsa-lib/pull/480
Error handler
- coverity.com fixes - initial round
This commit tries to fix a bunch of issues found
by coverity.com.
- error: make prio/interface output a bit shorter in default log handler
- log: implement filter based on string configuration (env LIBASOUND_DEBUG).
Examples:
"debug" - Set global level to debug
"3" - Set global level to 3 (info)
"info,pcm:debug" - Set global to info, pcm to debug
"error,mixer:5,pcm:4" - Set global to error, mixer to 5 (trace), pcm to 4 (debug)
- error: add priority and interface strings to the log messages
- redesign the message log functions
Add priority level and interface classifiers. Define macros
for all priority level types to keep the callers more readable.
Ensure the compatibility with previous logging mechanism.
- error: do not export internal snd_err_msg variable
This variable was never intended to modify from outside (not in public
headers).
Simple Abstraction Mixer Modules
- replace SNDMSG,SYSMSG,SNDERR,SYSERR with new log macros
... with interface identifiers
Test/Example code
- test: ucm - remove old syntax configuration files (incomplete anyway)
- test: update midifile library to ANSI C
The midifile library used by the playmidi1 program dates from 1989, and
used pre-ANSI function definitions and prototypes. GCC 15 now defaults
to C23 where () means the same as (void) in prototypes, which causes
type mismatch errors.
Update the code to use ANSI function definitions and prototypes, so
it'll compile happily as anything from ANSI C to C23. This revealed that
playmidi1's do_tempo had the wrong argument type, so correct that as
well.
Closes: https://github.com/alsa-project/alsa-lib/pull/463
alsa-utils
Core
- Release v1.2.15
- configure: Allow systemd service installation without systemd.pc
If the systemdsystemunitdir got passed anyway as a variable, we don't
need the systemd.pc dependency anymore and allow building without a
systemd build-dependency.
Relevant in Alpine Linux, where we allowed systemd services to be
(sub-)packaged (e.g. for downstreams like postmarketOS), but don't have
systemd pacakged in Alpine itself, yet.
Closes: https://github.com/alsa-project/alsa-utils/pull/309
- github: coverity.yml - run at 4am on Sunday - github: add coverity.yml (coverity.com) workflow - github: CI: add awk package for Fedora to build.yml
ALSA Control (alsactl)
- alsactl: fix error message arguments (remove card)
- alsactl: fix error handling in check_control_cdev()
Closes: https://github.com/alsa-project/alsa-utils/pull/310
- alsactl: ucm: restore controls for other cards in group
When the primary card restores controls, all other cards
in the card group should do this operation, too.
- alsactl: move udev/systemd files to conf subdirectory
It is a cleanup to not mix C source code with system configuration files.
- alsactl: update state file correctly when initialization failed
There was missing continue statement to save the correct state reporting.
- alsactl: fix state restore to handle dynamic user control elements
Track user control elements separately and adjust control
count difference checking to account for dynamic user elements.
Prevents false positives in re-init detection when only user
controls have changed.
- alsactl: add systemd service to handle deferred card initialization
Add alsa-card-wait@.service to handle cards in waiting state.
Update udev rules to use --export and trigger the wait service
when ALSA_CARD_STATE=waiting. Service runs "alsactl wrestore"
for deferred card initialization.
- alsactl: ucm: add wrestore command and wait_for_card() for boot synchronization
Implement wait.c with wait_for_card() function to monitor Boot control
element and wait for card readiness using event-based polling.
Add "wrestore" command to wait for card ready state before restore.
Add FLAG_UCM_WAIT flag and move DEFAULT_SYNC_TIME to alsactl.h.
- alsactl: add -Y option to export card states as key=value pairs
Add export.c with support for exporting card states as key=value pairs.
Exports ALSA_CARD_NUMBER/ALSA_CARD_STATE for single cards, or
ALSA_CARD#_STATE for multiple cards. States: active, skip, waiting.
Add -Y (--export) option to restore command for state export.
This feature is designed for udev IMPORT{program} use.
- alsactl: ucm: implement boot parameters and card group sync infrastructure
Implement boot parameter management for multi-card synchronization.
Add boot_params.c with read/write functions for Boot control element,
card group configuration file support, and validity checking.
Extend init_ucm.c with boot/restore logic and card state handling.
Add -G (group-file) and -m (force-ucm-restore) command line options.
- alsactl: free scandir list in snd_card_clean_cfgdir - alsactl: add support for new log handler (alsa-lib 1.2.15) - alsactl: restore udev rules - fix HDA analog device check
ALSA RawMidi Utility (amidi)
- amidi: Ignore inactive MIDI ports as default at listing
When listing the devices, currently we show all MIDI ports including
inactive ones. But those inactive ports are rarely useful, and it'd
be more convenient to filter them out.
This patch introduces the filtering of inactive ports at listing
devices via amidi -l option. When user needs to scan all MIDI ports
including inactive ports, pass the new option -x in addition.
aconnect
- aconnect: add support for new log handler (alsa-lib 1.2.15)
alsamixer
- alsamixer: add support for new log handler (alsa-lib 1.2.15)
aplay/arecord
- aplay: reorganize format handling in begin_wave()
Use strictly snd_pcm_format_physical_width/snd_pcm_format_width functions
to determine the sample bit width.
- Revert "aplay: fix S24_LE wav header"
This reverts commit 9cdcbe0e932b97fac88a6195f87647159a6c7194.
It causes regression (see Link). The physical sample width is stored
in byte_p_spl.
Closes: https://github.com/alsa-project/alsa-utils/issues/308
- alsactl: add support for new log handler (alsa-lib 1.2.15)
bat (basic audio tester)
- bat: Fix buffer time configuration
By swapping time configuration some hardware constraints can be supported.
Fixes the error: Set parameter to device error: buffer time: 500000
hw:tqmtlv320aic32: Invalid argument(-22)
alsa-tools
Core
- Release v1.2.15
- envy24control: port to GTK 4
Closes: https://github.com/alsa-project/alsa-tools/pull/36
Envy24 Control
- envy24control: port to GTK 4
Closes: https://github.com/alsa-project/alsa-tools/pull/36
HDA Jack Retask
- Update hdajackretask.desktop
- adds a FR comment
- change the "genericname" to "Comment"
- adds a Icon= field (close #38 )
Closes: https://github.com/alsa-project/alsa-tools/pull/39
Closes: https://github.com/alsa-project/alsa-tools/issues/38
hdspmixer
- hdspmixer: fix null pointer dereference in HDSPMixerWindow:handler_cb
Closes: https://github.com/alsa-project/alsa-tools/pull/42
alsa-ucm-conf
Configuration
- USB-Audio: add support for conf.d configurations
It may be useful to add new or override specific hardware
configurations until they are merged to the main USB-Audio.conf file.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/654
BugLink: https://github.com/alsa-project/alsa-ucm-conf/issues/609
- USB-Audio: Steinberg UR22C - fix capture channels for older firmware
It seems that firmware version 3.20 added 4 capture channels while
previous firmware has only 2 capture channels.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/554
- USB-Audio: GoXLR: enable detection of beta firmware (25 channels)
'Syntax 8' is required (alsa-lib 1.2.15+)
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/524
Link: https://github.com/alsa-project/alsa-ucm-conf/issues/444
- USB-Audio: Add jack controls for HP Thunderbolt Dock G2
Similar to the Dell WD15/WD19, this allows for jack detection
(headphones/headset) on the HP Thunderbolt Dock G2.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/650
Link: https://lore.kernel.org/linux-sound/20251126003805.2705503-1-tasos@tasossah.com/T/
- ucm2: sof-soundwire: Update cs42l45 JackControls
Update JackControls to follow machine driver changes [1]
[1] https://lore.kernel.org/all/20251127163426.2500633-3-ckeepax@opensource.cirrus.com/
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/644
- ucm2: IO-Boards: Toradex: aquila: add support
Add support for Toradex Aquila Development board, using the WM8904 audio
codec.
This is a carrier board for the Toradex Aquila family, where any Toradex
Aquila SoM can be connected to it, therefore this is being added to the
IO-Boards instead of a specific hardware vendor.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/641
- ucm2: Qualcomm: fix indentation for TUXEDO Elite 14
- ucm2: Qualcomm: fix HDMI0 name for TUXEDO Elite 14
- ucm2: Qualcomm: add TUXEDO Elite 14 support
TUXEDO Elite 14 Gen1 Supports:
- 4 speakers
- 2 dmics
- Headset
- Display ports
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/638
- rt713: add mic led support
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/649
- USB-Audio: Add Audient iD14 MK2 support
Add UCM2 profile for Audient iD14 MK2 (USB ID 2708:0008) audio interface
with 6 playback and 12 capture channels. The device requires S32_LE format
for proper operation.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/651
- sof-soundwire: second fix for -sdca variants for multi-codec
Example variables:
MultiCodec1='rt713'
HeadsetCodec1='rt713-sdca'
Suggested-by: Shuming Fan <shumingf@realtek.com>
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/653
- common: led.conf - don't use If.0 blocks
Compounds starting with zero (and with continuous indexes)
are handled as array type. It means that they are appended
when they are parsed multiple times. Fix this.
- common: split.conf - don't use If.0 blocks
Compounds starting with zero (and with continuous indexes)
are handled as array type. It means that they are appended
when they are parsed multiple times. Fix this.
Closes: https://github.com/alsa-project/alsa-ucm-conf/issues/646
- USB-Audio: Add support for DualSense PS5 controller
The Sony DualSense wireless controller (PS5) has an internal mono
speaker and a microphone, in addition to a 3.5mm jack socket for
headphone output and headset microphone input.
Because this is a UAC1 device, it doesn't advertise any jack detection
capability. However, since kernel v6.18-rc1 the controller is able to
report HP & MIC insert events via HID, i.e. through a dedicated input
device managed by the hid-playstation driver. This is further used by a
quirk in the generic USB audio driver (added in v6.17), which creates
the Headphone Jack & Headset Mic Jack controls and receives hotplug
events from the HID driver via input handlers.
Moreover, the device provides haptic feedback functionality, which is
controlled by a pair of dedicated channels in a quadraphonic audio
stream.
Ensure proper support for audio switching between headphones/headset and
internal speaker/microphone by adding a UCM to split the 4.0 PCM stream
into 4 mono channels or a pair of stereo (FL+FR) channels, depending on
the active output device/profile.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/634
- ucm2: Add setting LED Mode in SetLED macro
Add 'Mode' argument to SetLED macro in order to allow setting a
different LED mode. This will allow mute switches with inverted
values to control the LEDs with 'follow-route' option instead of
default 'follow-mute'.
The Mode argument is optional.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/637
- sof-soundwire: fix for -sdca variants for multi-codec
The -sdca suffix should be handled like normal codec identification
for multi-codecs.
Closes: https://github.com/alsa-project/alsa-ucm-conf/issues/639
- ucm2: rt712: simplify the init settings
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/628
- ucm2: sof-soundwire: support rt713vb codec
The rt713 is the multi-function codec, so check it by MultiCodec variable.
This patch also supports the rt713VB, which integrates with DMIC function into one interface.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/628
- ucm2: soundwire: cs42l45: Add support for CS42L45 codec
cs42l45 SDCA codec includes headphone playback with headset and DMIC input.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/629
- ucm2: Add support for MT8196 Rauru Rev0 Chromebook with SOF
Add support for the Google Rauru Rev0 Chromebook, powered by MediaTek
Kompanio Ultra (MT8196). This machine uses NAU8825 as headphone codec
and NAU8318 as speaker codec.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/625
- USB-Audio: fix Steinberg UR22mkII device names
- ucm2: codecs: rx-macro: add Headset Left enable/disable
sequence
Headset L is connected as Lineout on some platforms like RB1, so add the
rx codec macro sequences required to enable Lineout on those platforms.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/621
- ucm2: codecs: pm4125: add ucm for codec
Add UCM support for Headset and Lineout mixer sequences for PM4125
codec that got merged in last cycle.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/621
- ucm2: Qualcomm: x1e80100: T14s: add USB DisplayPort playback
Add two DisplayPort (over USB) and one HDMI playback devices,
conflicting with the headset, because they use the same MultiMedia1
frontend.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/627
- Qualcomm: qcs615: Add TALOS EVK HiFi config
Add UCM2 configs for the Qualcomm Talos Board.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/631
- ucm2: Add support for Steinberg UR22mkII
This device is basically an earlier model of the UR22C that already has
a configuration. The main functional difference is that the UR22mkII
only has 2 hardware channels for the inputs. I have also changed the
names/comments in the config to mostly match the text on the device
(Input 1/Input 2).
This configuration was tested with a Steinberg UR22mkII with firmware
version 1.04.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/626
- ucm2: Qualcomm: Radxa: fix Displayport SectionDevice
for some reason this ucm endedup using DisplayPort for SectionDevice
instead of HDMI. This was resulting in below failures of any PR against
Qualcomm devices.
Run cd alsa-tests/python/ucm-validator2
./ucm.py configs --level=0 --ucmdir=../../../alsa-ucm-conf/ucm2
./Qualcomm/qcs6490/QCS6490-Radxa-Dragon-Q6A/HiFi.conf: Device name DisplayPort
/'SectionDevice'.'DisplayPort'/ is not valid
(see https://github.com/alsa-project/alsa-lib/blob/master/include/use-case.h)
total errors: 1
make: *** [Makefile:10: configs] Error 1
Error: Process completed with exit code 2.
Fix this by using known devices from use-case.h
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/624
- ucm2: Qualcomm: Add MONACO-EVK HiFi config
Add UCM2 configs for the Qualcomm MONACO-EVK Board to handle:
- I2S Speaker Amplifier
- I2S Mic
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/597
- ucm2: Qualcomm: sa8775p: Move lemans-evk hifi to sa8775p subdir
Move lemans-evk HiFi configuration files to the sa8775p subdirectory,
aligning with the kernel's use of the sa8775p folder for all Linux
firmware. So Update the UCM HiFi configuration file accordingly.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/618
- Qualcomm: Kaanapali: Add Kaanapali MTP HiFi config
Add UCM2 configs for the Qualcomm Kaanapali-MTP Board.
Tested on-board Speakers playback, on-board Microphones.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/613
- The X1E80100-EVK needs basically the same configuration as
the X1E80100-CRD. The dts upstream is already in progress.
https://lore.kernel.org/all/20250828-hamoa_initial-v8-3-c9d173072a5c@oss.qualcomm.com/
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/608
- ucm2: MediaTek: mt8391-evk: Add alsa-ucm support
Add alsa-ucm support for the MediaTek mt8391-evk platform.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/607
- Add support for RME Fireface UCX (heavily based on RME Fireface UCX II config)
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/606
- ucm2: Qualcomm: Add Microsoft Surface Pro 12in config
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/603
- ucm2: Qualcomm: x1e80100: Add X1E001DE-DEVKIT configuration
The X1E001DE Devkit needs basically the same audio configuration as the
X1E80100 CRD, so just include the HiFi.conf intended for the CRD. The only
difference is that there are no speakers connected to the pin header on the
mainboard by default, so remove the speakers from the available outputs.
If someone wants to connect speakers there they could drop the RemoveDevice
line after verifying that it works correctly for their speakers. At the
moment we do not have any way to automatically detect if there are speakers
connected or not.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/602
- ucm2: Qualcomm: add Radxa Dragon Q6A
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/601
- ucm2: sof-soundwire: add rt721 ucm support
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/600
- ucm2: Qualcomm: add Lenovo Ideapad 5 (Slim 5x / 2in1) support
Same layout as T14s, 2 speakers, hedphone jack, DMIC
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/599
- ucm2: Qualcomm: Rename qcs6490-rb3gen2 and qcs9075-iq-evk ucm2 conf
Rename the ucm2 conf for Qualcomm qcs6490-rb3gen2 and qcs9075-iq-evk.
qcs6490-rb3gen2-snd-card.conf -> QCS6490-RB3Gen2.conf
qcs9075-iq-evk-snd-card.conf -> LEMANS-EVK.conf
Removed snd-card tags from conf files and update the
mixer settings for LEMANS-EVK.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/596
- ucm2: Qualcomm: Add Dell Latitude 7455 / Inspiron 14 Plus
7441 support
(Both SKUs are identical, the codename is Thena)
This configuration is:
- 4 speakers
- 2 DMICs
- headset with mic
- DisplayPort (not yet)
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/589
- ucm2: codecs: lpass-rx-macro: move mixers that do not belong
Some of the mixers endedup in rx-macro which actually are part of WCD
codecs.
Move such mixers to their respective codecs.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/585
- UR44: Add stereo inputs to the HiFi profile, relabel the inputs and outputs
I relabeled the 'line outs' as Mix 1 and 2, because that is what is accessible to a computer.
Mix 1 and 2 are not necessarily mapped to any output.
The inputs are named after where they are on the device (Front, Back)
The device is internally complex and needs quite a bit of reverse
engineering to fully expose its functionality on linux and will
need dedicated software to be written, but this at least makes
it usable on a basic level.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/584
- Recognize one more Steinberg UR44 variant
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/584
- ucm2: sof-soundwire: add rt712+rt1320 amplifier
This patch makes SpeakerCodec could get rt712+rt1320 string from spk:rt712+rt1320 component string.
According to the control name, we will know that one or two amplifiers exist.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/580
- ucm2: MediaTek: mt8395-evk: Add support for SOF
Add support for MT8395 EVK with the SOF enabled.
Since all the features are not available yet only enable
HDMI output and headphones.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/549
- Behringer UCM204HD/404HD: Fix the macro evaluation for Syntax 7+
The behaviour was slightly changed for the Macro arguments. The substitution
is executed more early before If block evaluation.
Closes: https://github.com/alsa-project/alsa-ucm-conf/issues/564
- UCM2: Intel: sof-hda-dsp: HiFi: IPC3 mono DMIC is exposed as stereo PCM
With IPC3 the DMIC PCM is stereo even in case of a single (mono) DMIC
connection.
Make the `CaptureChannels 1` conditional to IPC4 only.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/610
Closes: https://bugzilla.redhat.com/show_bug.cgi?id=2393552
Closes: https://bugzilla.redhat.com/show_bug.cgi?id=2384324
Closes: https://github.com/thesofproject/linux/issues/5528
- codecs/hda/hdmi.conf - add support for zero device
If device is zero, driver does not append ',pcm=' string to
the mixer control.
Link: https://github.com/alsa-project/alsa-ucm-conf/pull/571
- ucm2: MediaTek: mt8365-evk: Add SOF support
Add support for MT8365 EVK with SOF enabled. When SOF is
disabled, the "HiFi" use case is used; when SOF is enabled,
the "SOF" use case is used.
The main difference compared to the UCM with SOF disabled is
the device number for playback and capture, which now uses the
PCMs for SOF instead.
Define these parameters as variables for each case (with and
without SOF), and move the common initialization to init.conf,
so the UCM can be shared by both configurations.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/583
- ucm2: USB-Audio: Add Teufel CAGE PRO
two stereo outputs: one for "game" and one for "chat".
one mono input
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/582
- add MSI MAG B850M Mortar Wifi to USB-Audio.conf
add MSI MAG B850M Mortar Wifi USB-ID for Realtek/ALC4080 to USB-Audio.conf
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/581
- ucm2: sof-soundwire: add rt712-vb device
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/573
- UCM2: Intel: sof-hda-dsp: HiFi: Fix handling of mono DMICs
When a single DMIC is present in the system we need to set the
CaptureChannels to 1 since the PCM device only supports mono, PA/PW will
reject the profile since it cannot open the DMIC PCM device.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/579
- ucm2: Qualcomm: Update the HIFI enable mixer commands for qcm6490-idp and qcs6490-rb3gen2
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/577
- ucm2: Qualcomm: Update the QCM6490 and QCS6490 hifi conf files
Rename the HiFi conf files for QCM6490-IDP and QCS6490-RB3Gen2 boards
to match with soundcard name.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/577
- Qualcomm: Add QCS9075-IQ-EVK HiFi config
Add UCM2 configs for the Qualcomm QCS9075-IQ-EVK Board to handle:
- I2S Speaker Amplifier
- I2S Mic
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/576
- Changed 'Stream Mix' channel names to match the latest Window
release
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/572
- ucm2: Qualcomm: add ASUS Vivobook S 15 support
S15 supports:
- 2 speakers.
- 2 dmics
- headset with mic.
This patch adds support to all these, however only speakers, dmic and
headset playback is tested.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/570
- USB-Audio: Added Beacn Mic and Studio Support
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/558
- USB-Audio: Solid State Labs SSL 2 - fix capture channels
Same fix as for SSL+, commit fc17ed4.
Capture configuration is the same, with 4 channels.
Capture:
Status: Stop
Interface 2
Altset 1
Format: S32_LE
Channels: 4
Endpoint: 0x81 (1 IN) (ASYNC)
Rates: 44100, 48000, 88200, 96000, 176400, 192000
Data packet interval: 125 us
Bits: 24
Channel map: FL FR FC LFE
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/566
- ucm2: IO-Boards: Toradex: smarc: add support
Add support for Toradex SMARC Development board, using the WM8904 audio
codec.
This is a carrier board for the Toradex SMARC family, where any SMARC
SoM can be connected to it, therefore this is being added to the
IO-Boards instead of a specific hardware vendor.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/562
- ucm2: USB-Audio: Behringer: Flow8: fix conflicting
devices
A recent change renamed the Line-56 and Line-78 devices but failed to
update the conflicting device lists.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/563
- ucm2: tegra: max98090: fix headphones conflicting device
A recent change renames the speaker device but failed to update the
headphones conflicting device list.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/563
- ucm2: Qualcomm: sm8650: QRD: fix headset jack hw mute
A recent change renamed the internal microphone devices but failed to
update the headset jack hw mute properties that are still using the old
names.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/563
- ucm2: Qualcomm: sc8280xp: fix internal microphones device
A recent change renamed the internal microphones device from "DMic01" to
"Mic", but the latter name is already used by the headset microphone so
this breaks the internal microphones on the Lenovo ThinkPad X13s.
Rename the headset microphone device so that the names are unique and
fix up the jack hw mute property which is still using the old name.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/563
- Fix Presonus Revelator IO44 HWChannels count
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/557
- tegra: max98089: fix cset names
Adjust configs to match Linux kernel MAX98089 codec driver change.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/556
- ucm2: Qualcomm: Add Surface Laptop 7
2 speakers, 2 dmics, combo jack, just like the T14s - reuse its
configuration
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/546
- ucm2: Qualcomm: x1e80100: Also match DMI board name
The Surface Laptop 7 only says "Microsoft Corporation" and "Surface"
in the board_vendor and product_family fields respectively. Add another
field to match on.
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/546
- USB-Audio: Solid State Labs SSL 2+ - fix capture channels
It seems that there are 4 capture channels per report in issue #552:
Capture:
Status: Stop
Interface 2
Altset 1
Format: S32_LE
Channels: 4
Endpoint: 0x81 (1 IN) (ASYNC)
Rates: 44100, 48000, 88200, 96000, 176400, 192000
Data packet interval: 125 us
Bits: 24
Channel map: FL FR FC LFE
Closes: https://github.com/alsa-project/alsa-ucm-conf/issues/552
- USB-Audio: Remove useless sections for Solid State Labs SSL 2+
- acp3x-alc5682-max98357: Fix path of HiFi.conf
Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/551
Closes: https://github.com/alsa-project/alsa-ucm-conf/issues/550
Description
- Release v1.2.15