  <?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.alsa-project.org/main/index.php?action=history&amp;feed=atom&amp;title=AlsaProject%3ADetailed_changes_v1.2.11_v1.2.12</id>
	<title>AlsaProject:Detailed changes v1.2.11 v1.2.12 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://www.alsa-project.org/main/index.php?action=history&amp;feed=atom&amp;title=AlsaProject%3ADetailed_changes_v1.2.11_v1.2.12"/>
	<link rel="alternate" type="text/html" href="https://www.alsa-project.org/main/index.php?title=AlsaProject:Detailed_changes_v1.2.11_v1.2.12&amp;action=history"/>
	<updated>2026-04-06T04:00:55Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.0</generator>
	<entry>
		<id>https://www.alsa-project.org/main/index.php?title=AlsaProject:Detailed_changes_v1.2.11_v1.2.12&amp;diff=9798&amp;oldid=prev</id>
		<title>Perex: 1 revision imported</title>
		<link rel="alternate" type="text/html" href="https://www.alsa-project.org/main/index.php?title=AlsaProject:Detailed_changes_v1.2.11_v1.2.12&amp;diff=9798&amp;oldid=prev"/>
		<updated>2024-06-11T12:14:41Z</updated>

		<summary type="html">&lt;p&gt;1 revision imported&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 12:14, 11 June 2024&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Perex</name></author>
	</entry>
	<entry>
		<id>https://www.alsa-project.org/main/index.php?title=AlsaProject:Detailed_changes_v1.2.11_v1.2.12&amp;diff=9797&amp;oldid=prev</id>
		<title>alsa&gt;Perex at 12:14, 11 June 2024</title>
		<link rel="alternate" type="text/html" href="https://www.alsa-project.org/main/index.php?title=AlsaProject:Detailed_changes_v1.2.11_v1.2.12&amp;diff=9797&amp;oldid=prev"/>
		<updated>2024-06-11T12:14:41Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&lt;br /&gt;
{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
=Detailed changelog between 1.2.7 and 1.2.12 releases=&lt;br /&gt;
=Changelog between 1.2.11 and 1.2.12 releases=&lt;br /&gt;
==alsa-python==&lt;br /&gt;
===Core===&lt;br /&gt;
- Release v1.2.12&lt;br /&gt;
- hcontrol,mixer: improve callback GIL state handling&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Link: https://github.com/alsa-project/alsa-python/issues/11&lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-python/pull/12&amp;lt;/code&amp;gt;&lt;br /&gt;
- setup.py: fix symlinks for test programs for python 3&lt;br /&gt;
- setup.py: licence -&amp;amp;gt; license&lt;br /&gt;
===pyalsa.alsahcontrol module===&lt;br /&gt;
- hcontrol,mixer: improve callback GIL state handling&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Link: https://github.com/alsa-project/alsa-python/issues/11&lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-python/pull/12&amp;lt;/code&amp;gt;&lt;br /&gt;
===pyalsa.alsamixer module===&lt;br /&gt;
- hcontrol,mixer: improve callback GIL state handling&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Link: https://github.com/alsa-project/alsa-python/issues/11&lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-python/pull/12&amp;lt;/code&amp;gt;&lt;br /&gt;
===pyalsa.alsaseq module===&lt;br /&gt;
- alsaseq: fix seg. fault when accessing `ConstantObject` extra&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-python/pull/10&amp;lt;/code&amp;gt;&lt;br /&gt;
=Detailed changelog between 1.2.6 and 1.2.12 releases=&lt;br /&gt;
=Changelog between 1.2.11 and 1.2.12 releases=&lt;br /&gt;
==alsa-plugins==&lt;br /&gt;
===Core===&lt;br /&gt;
- Release v1.2.12&lt;br /&gt;
- disable -ldl check for *BSDs, find &amp;amp;lt;soundcard.h&amp;amp;gt; path&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-plugins/pull/48&amp;lt;/code&amp;gt;&lt;br /&gt;
- Release v1.2.7.1&lt;br /&gt;
===A52 Output plugin===&lt;br /&gt;
- a52 plugin: add support for FFMPEG 7.0&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 channel_layout has been replace with ch_layout&lt;br /&gt;
 &lt;br /&gt;
 avcodec_close has been deprecated in favor of avcodec_free_context&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-plugins/pull/58&amp;lt;/code&amp;gt;&lt;br /&gt;
- ESTRPIPE not defined, use ESPIPE (not EPIPE)&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-plugins/pull/48&amp;lt;/code&amp;gt;&lt;br /&gt;
- use EPIPE and EBADF when ESTRPIPE and EBADFD unsupported&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-plugins/pull/48&amp;lt;/code&amp;gt;&lt;br /&gt;
===Arcam AV control plugin===&lt;br /&gt;
- arcam_av.c: Include missing string.h&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 bzero() function needs this header to be included&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-plugins/pull/47&amp;lt;/code&amp;gt;&lt;br /&gt;
===Jack PCM plugin===&lt;br /&gt;
- program_invocation_short_name: __linux__ -&amp;amp;gt; _GNU_SOURCE&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-plugins/pull/48&amp;lt;/code&amp;gt;&lt;br /&gt;
- remove unused &amp;amp;lt;byteswap.h&amp;amp;gt;, use getprogname() for *BSDs&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-plugins/pull/48&amp;lt;/code&amp;gt;&lt;br /&gt;
- jack: use program_invocation_short_name&lt;br /&gt;
- jack: implement pcm operation sw_params&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Alsa-lib commit 88e4ae27 introduced a dynamic recalculation of the avail_min&lt;br /&gt;
 value on the underlaying slave devices.&lt;br /&gt;
 This updated avail_min value is not reaching the alsa-jack plugin due to lack&lt;br /&gt;
 of the sw_params operation.&lt;br /&gt;
 This patch adds this missing operation to correctly apply an updated avail_min&lt;br /&gt;
 setting during runtime.&amp;lt;/code&amp;gt;&lt;br /&gt;
===OSS Mixer -&amp;amp;gt; ALSA Control plugin===&lt;br /&gt;
- use &amp;amp;lt;linux/soundcard.h&amp;amp;gt;, &amp;amp;lt;sys/soundcard.h&amp;amp;gt; or&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-plugins/pull/48&amp;lt;/code&amp;gt;&lt;br /&gt;
===PulseAudio -&amp;amp;gt; ALSA plugin===&lt;br /&gt;
- use EPIPE and EBADF when ESTRPIPE and EBADFD unsupported&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-plugins/pull/48&amp;lt;/code&amp;gt;&lt;br /&gt;
===Rate Converter plugins===&lt;br /&gt;
- samplerate: Make LGPL-only&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 As libsamplerate itself was already relicensed to 2-Clause BSD&lt;br /&gt;
 license, there is no need for restriction of GPL license for&lt;br /&gt;
 samplerate plugin, too.&lt;br /&gt;
 &lt;br /&gt;
 Let's switch to LGPL-only for relaxing the use.&lt;br /&gt;
 &lt;br /&gt;
 Luckily, I am the sole author of this piece of code, so it should be&lt;br /&gt;
 no legal problem for immediate relicensing.&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-plugins/issues/54&amp;lt;/code&amp;gt;&lt;br /&gt;
===USB stream plugin===&lt;br /&gt;
- remove unused &amp;amp;lt;byteswap.h&amp;amp;gt;, use getprogname() for *BSDs&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-plugins/pull/48&amp;lt;/code&amp;gt;&lt;br /&gt;
===libavcodec's resampler===&lt;br /&gt;
- a52 plugin: add support for FFMPEG 7.0&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 channel_layout has been replace with ch_layout&lt;br /&gt;
 &lt;br /&gt;
 avcodec_close has been deprecated in favor of avcodec_free_context&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-plugins/pull/58&amp;lt;/code&amp;gt;&lt;br /&gt;
=Detailed changelog between 1.2.11 and 1.2.12 releases=&lt;br /&gt;
=Changelog between 1.2.11 and 1.2.12 releases=&lt;br /&gt;
==alsa-lib==&lt;br /&gt;
===Core===&lt;br /&gt;
- Release v1.2.12&lt;br /&gt;
- GitHub Actions: Use actions/checkout@v4&lt;br /&gt;
- pcm: plug - add automatic conversion for iec958 subframe samples&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 As Pavel noted, a possibility to automatically convert standard&lt;br /&gt;
 linear samples to iec958 subframe format would be handy for latest&lt;br /&gt;
 Raspberry HDMI driver.&lt;br /&gt;
 &lt;br /&gt;
 Link: https://lore.kernel.org/alsa-devel/81b0be0a-5ab7-db91-21cb-0c59a55291e9@ivitera.com/&lt;br /&gt;
 Suggested-by: Pavel Hofman &amp;amp;lt;pavel.hofman@ivitera.com&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
===PCM API===&lt;br /&gt;
- pcm: extend doc for snd_pcm_hw_params_get_sbits()&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Try to explain more the output value and its relation between&lt;br /&gt;
 format and sample bits defined by the format.&lt;br /&gt;
 &lt;br /&gt;
 Link: https://github.com/larsimmisch/pyalsaaudio/pull/146&amp;lt;/code&amp;gt;&lt;br /&gt;
- pcm: clarify and fix default sbits (msbits) value for all formats&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 As described in the kernel patch (link bellow), the significant (resolution)&lt;br /&gt;
 bits should be related to the usable sample bits not the physical sample bits.&lt;br /&gt;
 &lt;br /&gt;
 Link: https://lore.kernel.org/linux-sound/20240222173649.1447549-1-perex@perex.cz/&lt;br /&gt;
 Link: https://github.com/larsimmisch/pyalsaaudio/pull/146&amp;lt;/code&amp;gt;&lt;br /&gt;
- pcm: ladspa - Skip missing ladspa directories&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-lib/pull/385&amp;lt;/code&amp;gt;&lt;br /&gt;
- pcm: snd_pcm_(physical_)format_width() - change documentation&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 The word &amp;quot;nominal&amp;quot; is not so correct here. Use similar&lt;br /&gt;
 wording as we use in the kernel space (the bit-width of the format).&lt;br /&gt;
 &lt;br /&gt;
 Link: https://github.com/larsimmisch/pyalsaaudio/pull/146&amp;lt;/code&amp;gt;&lt;br /&gt;
- pcm: plug - add automatic conversion for iec958 subframe samples&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 As Pavel noted, a possibility to automatically convert standard&lt;br /&gt;
 linear samples to iec958 subframe format would be handy for latest&lt;br /&gt;
 Raspberry HDMI driver.&lt;br /&gt;
 &lt;br /&gt;
 Link: https://lore.kernel.org/alsa-devel/81b0be0a-5ab7-db91-21cb-0c59a55291e9@ivitera.com/&lt;br /&gt;
 Suggested-by: Pavel Hofman &amp;amp;lt;pavel.hofman@ivitera.com&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
===PCM Plugin API===&lt;br /&gt;
- pcm: plug - add automatic conversion for iec958 subframe samples&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 As Pavel noted, a possibility to automatically convert standard&lt;br /&gt;
 linear samples to iec958 subframe format would be handy for latest&lt;br /&gt;
 Raspberry HDMI driver.&lt;br /&gt;
 &lt;br /&gt;
 Link: https://lore.kernel.org/alsa-devel/81b0be0a-5ab7-db91-21cb-0c59a55291e9@ivitera.com/&lt;br /&gt;
 Suggested-by: Pavel Hofman &amp;amp;lt;pavel.hofman@ivitera.com&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
===Topology API===&lt;br /&gt;
- topology: correct version script path&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 contrary to libasound, version script for libatopology is a regular&lt;br /&gt;
 source file. while it's often the case that $(builddir) and $(srcdir)&lt;br /&gt;
 point to the same directory, they don't always have to. therefore path&lt;br /&gt;
 needs to point explicitly to $(srcdir) for Versions script in topology&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-lib/pull/383&amp;lt;/code&amp;gt;&lt;br /&gt;
===Use Case Manager API===&lt;br /&gt;
- use-case.h: add DisplayPort to HDMI device description&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Link: https://github.com/alsa-project/alsa-ucm-conf/pull/423&amp;lt;/code&amp;gt;&lt;br /&gt;
- ucm: doc - add Variant and Macro to the evaluation order&lt;br /&gt;
- ucm: define and describe Syntax 7&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 - for new macro argument substitution&lt;br /&gt;
 - for new Path condition fields substitutions&lt;br /&gt;
 &lt;br /&gt;
 Link: https://github.com/alsa-project/alsa-ucm-conf/pull/411&lt;br /&gt;
 Link: https://github.com/alsa-project/alsa-lib/issues/395&amp;lt;/code&amp;gt;&lt;br /&gt;
- ucm: raise error when macro argument is already defined (used)&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Link: https://github.com/alsa-project/alsa-ucm-conf/pull/411&amp;lt;/code&amp;gt;&lt;br /&gt;
- ucm: do argument value substitution for Macros&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Link: https://github.com/alsa-project/alsa-ucm-conf/pull/411&amp;lt;/code&amp;gt;&lt;br /&gt;
- ucm: fix Path condition - substitute Path&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Use the appropriate variable for access/eaccess call.&amp;lt;/code&amp;gt;&lt;br /&gt;
- ucm: fix Path condition - substitute Path and Mode fields&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 The Path and Mode fields should be also substituted for&lt;br /&gt;
 the runtime evaluation. See Fixes.&amp;lt;/code&amp;gt;&lt;br /&gt;
===Async helpers===&lt;br /&gt;
- async: snd_async_del_handler - move clear signal using sigaction as last&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Improve the shutdown order for the asynchronous users. There may be&lt;br /&gt;
 unhandled signals, because the signal is reset before signal deactivation&lt;br /&gt;
 using fnctl (O_ASYNC).&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-lib/issues/394&amp;lt;/code&amp;gt;&lt;br /&gt;
===Configuration===&lt;br /&gt;
- conf: aliases: hdmi: Include unconditionally the&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 The hdmi.conf contains the high level macro to be used by cards to create&lt;br /&gt;
 the hdmi: device.&lt;br /&gt;
 Instead of including it in different config files, include it in the main&lt;br /&gt;
 aliases.conf and remove it's inclusion by other config files.&lt;br /&gt;
 &lt;br /&gt;
 This change is needed to add support for the hdmi: device mapping via UCM.&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-lib/pull/393&lt;br /&gt;
 Suggested-by: Jaroslav Kysela &amp;amp;lt;perex@perex.cz&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
- conf: USB-Audio: Add Corsair HS60 Pro to the IEC958 blacklist&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 This device is just an external USB soundcard with a female 3.5mm jack&lt;br /&gt;
 for a headset, no S/PDIF | IEC958 connector. Add it to the blacklist to&lt;br /&gt;
 prevent it being opened.&lt;br /&gt;
 &lt;br /&gt;
 Link: https://lore.kernel.org/alsa-devel/ZeWGbxZIc7AF96h0@m.b4.vu/&amp;lt;/code&amp;gt;&lt;br /&gt;
- conf: USB-Audio: Add more Scarlett devices to the IEC958 blacklist&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 The Scarlett Solo and 2i2 don't have S/PDIF outputs.&lt;br /&gt;
 &lt;br /&gt;
 Link: https://lore.kernel.org/alsa-devel/ZeWGbxZIc7AF96h0@m.b4.vu/&amp;lt;/code&amp;gt;&lt;br /&gt;
===Test/Example code===&lt;br /&gt;
- tests: latency.c - fix copy-n-paste typos (sw -&amp;amp;gt; hw params) in error messages&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-lib/pull/384&amp;lt;/code&amp;gt;&lt;br /&gt;
==alsa-utils==&lt;br /&gt;
===Core===&lt;br /&gt;
- Release v1.2.12&lt;br /&gt;
- aseqsend: initial version&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 aseqsend is a command-line utility which allows one to send SysEx&lt;br /&gt;
 (system exclusive) data to ALSA MIDI seqencer port. It can also send&lt;br /&gt;
 any other MIDI commands.&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-utils/pull/257&amp;lt;/code&amp;gt;&lt;br /&gt;
- chore: Use actions/checkout@v4&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-utils/pull/259&amp;lt;/code&amp;gt;&lt;br /&gt;
===/seq/Makefile.am===&lt;br /&gt;
- aseqsend: initial version&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 aseqsend is a command-line utility which allows one to send SysEx&lt;br /&gt;
 (system exclusive) data to ALSA MIDI seqencer port. It can also send&lt;br /&gt;
 any other MIDI commands.&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-utils/pull/257&amp;lt;/code&amp;gt;&lt;br /&gt;
===ALSA Control (alsactl)===&lt;br /&gt;
- alsactl: don't free a card pointing NULL&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 alsactl distributed as part of Fedora 40 got a SEGV:&lt;br /&gt;
 &lt;br /&gt;
     # journalctl&lt;br /&gt;
     ...&lt;br /&gt;
     May 17 00:55:58 dev64.localdomain kernel: alsactl[1923]: segfault at 28 ip 00005600705b3373 sp 00007ffd9712bef0 error 4 in alsactl[5600705af000+13000] likely on CPU 5 (core 8, socket 0)&lt;br /&gt;
     ...&lt;br /&gt;
 &lt;br /&gt;
 As the following output of the debug session, card_free() tried a card&lt;br /&gt;
 pointing NULL:&lt;br /&gt;
 &lt;br /&gt;
     $ sudo coredumpctl debug alsactl&lt;br /&gt;
                PID: 1923 (alsactl)&lt;br /&gt;
                UID: 0 (root)&lt;br /&gt;
                GID: 0 (root)&lt;br /&gt;
             Signal: 11 (SEGV)&lt;br /&gt;
          Timestamp: Fri 2024-05-17 00:55:58 JST (3h 34min ago)&lt;br /&gt;
       Command Line: /usr/sbin/alsactl -s -n 19 -c -E ALSA_CONFIG_PATH=/etc/alsa/alsactl.conf --initfile=/lib/alsa/init/00main rdaemon&lt;br /&gt;
         Executable: /usr/sbin/alsactl&lt;br /&gt;
      Control Group: /system.slice/alsa-state.service&lt;br /&gt;
               Unit: alsa-state.service&lt;br /&gt;
              Slice: system.slice&lt;br /&gt;
            Boot ID: 241b5a2ef86f4940bb3d340583c80d88&lt;br /&gt;
         Machine ID: 437365709a8c488c9481ee4b6651c2ec&lt;br /&gt;
           Hostname: dev64.localdomain&lt;br /&gt;
            Storage: /var/lib/systemd/coredump/core.alsactl.0.241b5a2ef86f4940bb3d340583c80d88.1923.1715874958000000.zst (present)&lt;br /&gt;
       Size on Disk: 81.7K&lt;br /&gt;
            Package: alsa-utils/1.2.11-1.fc40&lt;br /&gt;
           build-id: 3b6fec58b3566d666d6e9fd48e8fcf04f03f0152&lt;br /&gt;
            Message: Process 1923 (alsactl) of user 0 dumped core.&lt;br /&gt;
 &lt;br /&gt;
                     Module libasound.so.2 from rpm alsa-lib-1.2.11-2.fc40.x86_64&lt;br /&gt;
                     Module alsactl from rpm alsa-utils-1.2.11-1.fc40.x86_64&lt;br /&gt;
                     Stack trace of thread 1923:&lt;br /&gt;
                     #0  0x00005600705b3373 card_free (alsactl + 0xa373)&lt;br /&gt;
                     #1  0x00005600705c0e54 state_daemon (alsactl + 0x17e54)&lt;br /&gt;
                     #2  0x00005600705b2339 main (alsactl + 0x9339)&lt;br /&gt;
                     #3  0x00007f4c0b9b7088 __libc_start_call_main (libc.so.6 + 0x2a088)&lt;br /&gt;
                     #4  0x00007f4c0b9b714b __libc_start_main_impl (libc.so.6 + 0x2a14b)&lt;br /&gt;
                     #5  0x00005600705b2df5 _start (alsactl + 0x9df5)&lt;br /&gt;
                     ELF object binary architecture: AMD x86-64&lt;br /&gt;
 &lt;br /&gt;
     GNU gdb (Fedora Linux) 14.2-1.fc40&lt;br /&gt;
     Copyright (C) 2023 Free Software Foundation, Inc.&lt;br /&gt;
     License GPLv3+: GNU GPL version 3 or later &amp;amp;lt;http://gnu.org/licenses/gpl.html&amp;amp;gt;&lt;br /&gt;
     This is free software: you are free to change and redistribute it.&lt;br /&gt;
     There is NO WARRANTY, to the extent permitted by law.&lt;br /&gt;
     Type &amp;quot;show copying&amp;quot; and &amp;quot;show warranty&amp;quot; for details.&lt;br /&gt;
     This GDB was configured as &amp;quot;x86_64-redhat-linux-gnu&amp;quot;.&lt;br /&gt;
     Type &amp;quot;show configuration&amp;quot; for configuration details.&lt;br /&gt;
     For bug reporting instructions, please see:&lt;br /&gt;
     &amp;amp;lt;https://www.gnu.org/software/gdb/bugs/&amp;amp;gt;.&lt;br /&gt;
     Find the GDB manual and other documentation resources online at:&lt;br /&gt;
         &amp;amp;lt;http://www.gnu.org/software/gdb/documentation/&amp;amp;gt;.&lt;br /&gt;
 &lt;br /&gt;
     For help, type &amp;quot;help&amp;quot;.&lt;br /&gt;
     Type &amp;quot;apropos word&amp;quot; to search for commands related to &amp;quot;word&amp;quot;...&lt;br /&gt;
     Reading symbols from /usr/sbin/alsactl...&lt;br /&gt;
     Reading symbols from /usr/lib/debug/usr/sbin/alsactl-1.2.11-1.fc40.x86_64.debug...&lt;br /&gt;
     [New LWP 1923]&lt;br /&gt;
     [Thread debugging using libthread_db enabled]&lt;br /&gt;
     Using host libthread_db library &amp;quot;/lib64/libthread_db.so.1&amp;quot;.&lt;br /&gt;
     Core was generated by `/usr/sbin/alsactl -s -n 19 -c -E ALSA_CONFIG_PATH=/etc/alsa/alsactl.conf --init'.&lt;br /&gt;
     Program terminated with signal SIGSEGV, Segmentation fault.&lt;br /&gt;
     #0  free_list (list=0x20) at /usr/src/debug/alsa-utils-1.2.11-1.fc40.x86_64/alsactl/daemon.c:73&lt;br /&gt;
     73          for (i = 0; i &amp;amp;lt; list-&amp;amp;gt;size; i++)&lt;br /&gt;
     (gdb) where&lt;br /&gt;
     #0  free_list (list=0x20) at /usr/src/debug/alsa-utils-1.2.11-1.fc40.x86_64/alsactl/daemon.c:73&lt;br /&gt;
     #1  card_free (card=card@entry=0x5600707455f0) at /usr/src/debug/alsa-utils-1.2.11-1.fc40.x86_64/alsactl/daemon.c:82&lt;br /&gt;
     #2  0x00005600705c0e54 in state_daemon (file=file@entry=0x5600705c31a1 &amp;quot;/var/lib/alsa/asound.state&amp;quot;, cardname=cardname@entry=0x0, period=period@entry=300,&lt;br /&gt;
         pidfile=pidfile@entry=0x5600705c3170 &amp;quot;/var/run/alsactl.pid&amp;quot;) at /usr/src/debug/alsa-utils-1.2.11-1.fc40.x86_64/alsactl/daemon.c:455&lt;br /&gt;
     #3  0x00005600705b2339 in main (argc=&amp;amp;lt;optimized out&amp;amp;gt;, argv=&amp;amp;lt;optimized out&amp;amp;gt;) at /usr/src/debug/alsa-utils-1.2.11-1.fc40.x86_64/alsactl/alsactl.c:459&lt;br /&gt;
     (gdb) list&lt;br /&gt;
     68&lt;br /&gt;
     69  static void free_list(struct id_list *list)&lt;br /&gt;
     70  {&lt;br /&gt;
     71          int i;&lt;br /&gt;
     72&lt;br /&gt;
     73          for (i = 0; i &amp;amp;lt; list-&amp;amp;gt;size; i++)&lt;br /&gt;
     74                  free(list-&amp;amp;gt;list[i]);&lt;br /&gt;
     75          free(list-&amp;amp;gt;list);&lt;br /&gt;
     76  }&lt;br /&gt;
     77&lt;br /&gt;
     (gdb) up&lt;br /&gt;
     #1  card_free (card=card@entry=0x5600707455f0) at /usr/src/debug/alsa-utils-1.2.11-1.fc40.x86_64/alsactl/daemon.c:82&lt;br /&gt;
     82          free_list(&amp;amp;c-&amp;amp;gt;blacklist);&lt;br /&gt;
     (gdb) p c&lt;br /&gt;
     $1 = (struct card *) 0x0&lt;br /&gt;
     (gdb)&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-utils/pull/267&amp;lt;/code&amp;gt;&lt;br /&gt;
===alsa-info.sh===&lt;br /&gt;
- alsa-info.sh: log SoundWire devices reported in ACPI&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Track SoundWire devices reported in ACPI, this will help detect&lt;br /&gt;
 missing or invalid configurations.&lt;br /&gt;
 &lt;br /&gt;
 For now we only filter information from Realtek, Cirrus Logic and TI,&lt;br /&gt;
 based on the manufacturer ID of their devices.&lt;br /&gt;
 &lt;br /&gt;
 Example log for the classic RT711/RT1316x2/RT714 configuration.&lt;br /&gt;
 &lt;br /&gt;
 !!ACPI SoundWire Device Status Information&lt;br /&gt;
 !!---------------&lt;br /&gt;
 &lt;br /&gt;
 Realtek 0x000030025d071101&lt;br /&gt;
 Realtek 0x000331025d131601&lt;br /&gt;
 Realtek 0x000230025d131601&lt;br /&gt;
 Realtek 0x000130025d071401&lt;br /&gt;
 &lt;br /&gt;
 As noted by reviewers, the script reports everything exposed in&lt;br /&gt;
 ACPI. In practice some of the devices listed may not be physically&lt;br /&gt;
 populated in hardware, or be listed as attached on a link that's&lt;br /&gt;
 disabled by the manager. The drivers can cope with this case, it's not&lt;br /&gt;
 technically an error.&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-utils/pull/264&amp;lt;/code&amp;gt;&lt;br /&gt;
===alsamixer===&lt;br /&gt;
- alsamixer: fix calculation in set_normalized_volume (overflow)&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Lowering volume below 0 causes overflow spike to 100% volume (volume goes&lt;br /&gt;
 below 0 and back to 100 repeatedly). 0 overflows past infinity when holding&lt;br /&gt;
 down z,x,c.&lt;br /&gt;
 &lt;br /&gt;
 &amp;amp;gt; value = lrint_dir(6000.0 * log10(volume), dir) + max;&lt;br /&gt;
    (where volume = 0 , and dir = -1 . min = -9999999 , and max = -6)&lt;br /&gt;
 &amp;amp;gt; log10(0) is negative infinity = error&amp;lt;/code&amp;gt;&lt;br /&gt;
===alsatplg (topology)===&lt;br /&gt;
- topology: nhlt: Intel: Improve all error prints&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Many error prints had obsolete function name written in them, use&lt;br /&gt;
 __func__ everywhere and add problematic value to the print if its&lt;br /&gt;
 available.&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-utils/pull/254&amp;lt;/code&amp;gt;&lt;br /&gt;
- topology: nhlt: Intel: Clear DMIC BFTH bits for version&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 The former Burst Fifo ThresHold bits 20-23 in output register are&lt;br /&gt;
 specified as reserved bits starting from driver version 4.&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-utils/pull/254&amp;lt;/code&amp;gt;&lt;br /&gt;
- topology: nhlt: Intel: Add check for DMIC version&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Error if the version passed from topology is not known. Also fix the&lt;br /&gt;
 dmic_set_params() error prints for to show the correct function name.&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-utils/pull/254&amp;lt;/code&amp;gt;&lt;br /&gt;
===aplay/arecord===&lt;br /&gt;
- aplay: fix S24_LE wav header&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 S24_LE is 32 bits in width storing 24 bits of data and 8 bits of padding&lt;br /&gt;
 So wav header needs to be 32 bits not 24&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-utils/pull/260&amp;lt;/code&amp;gt;&lt;br /&gt;
===aseqdump===&lt;br /&gt;
- aseqdump: Add dump for UMP Utility and System messages&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Add the dump functions for UMP Type 0 (Utility) and Type 1 (System)&lt;br /&gt;
 messages.&amp;lt;/code&amp;gt;&lt;br /&gt;
===aseqsend===&lt;br /&gt;
- aseqsend: initial version&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 aseqsend is a command-line utility which allows one to send SysEx&lt;br /&gt;
 (system exclusive) data to ALSA MIDI seqencer port. It can also send&lt;br /&gt;
 any other MIDI commands.&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-utils/pull/257&amp;lt;/code&amp;gt;&lt;br /&gt;
==alsa-ucm-conf==&lt;br /&gt;
===Configuration===&lt;br /&gt;
- sof-soundwire: fix missing MultiCodec1 initialization and Empty condition&lt;br /&gt;
- UCM2: Intel: sof-hda-dsp: Control SOF processing from UCM&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 This patch adds to Intel/sof-hda-dsp/HiFi.conf inclusion of&lt;br /&gt;
 HiFi-sof.conf that by redefine of headphone and speaker handling&lt;br /&gt;
 adds to UCM control of DRC and EQ SOF processing components.&lt;br /&gt;
 &lt;br /&gt;
 The modified setting are applied in case of SOF processing&lt;br /&gt;
 components' controls are detected. There is no change to operation&lt;br /&gt;
 if no controls are present e.g. with legacy SOF topology.&lt;br /&gt;
 &lt;br /&gt;
 If DRC control is found, it is assumed that also FIR and IIR&lt;br /&gt;
 also exist. If there is no DRC but FIR is found, then it is assumed&lt;br /&gt;
 that IIR also exists. This matches SOF FW builds for IPC3 (FIR, IIR)&lt;br /&gt;
 and IPC4 (DRC, FIR, IIR). The controls names are different in IPC3&lt;br /&gt;
 and IPC4 topologies. Also the configuration blobs differ.&lt;br /&gt;
 &lt;br /&gt;
 The speaker mode is by default set up with 100 Hz high-pass IIR. The&lt;br /&gt;
 DRC is set to a default speaker setting that boosts playback loudness.&lt;br /&gt;
 The FIR is bypassed.&lt;br /&gt;
 &lt;br /&gt;
 In the headphone mode all the processing is set to bypass and DRC&lt;br /&gt;
 switch is set off.&lt;br /&gt;
 &lt;br /&gt;
 The processing can be customized for products with UCM scripts placed&lt;br /&gt;
 into blobs/sof/product_configs. The file path should be&lt;br /&gt;
 &amp;amp;lt;sys_vendor&amp;amp;gt;/&amp;amp;lt;product_name&amp;amp;gt;.conf from DMI ID. An user configuration can&lt;br /&gt;
 be similarly placed into blobs/sof/user_configs directory to e.g. avoid&lt;br /&gt;
 it being overwritten by distribution.&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/419&amp;lt;/code&amp;gt;&lt;br /&gt;
- UCM2: SOF: Add example blobs customization for AAEON&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 This example shows how to define IIR, FIR, and DRC processing for&lt;br /&gt;
 speaker and headphone endpoints.&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/419&amp;lt;/code&amp;gt;&lt;br /&gt;
- UCM2: Add sample SOF processing configuration blobs&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 The example set contains passthrough configuration blobs with SOF IPC3&lt;br /&gt;
 and IPC4 headers for DRC, FIR, and IIR. A few high-pass configurations&lt;br /&gt;
 are added for IIR to be used e.g. for speakers. A DRC blob is added&lt;br /&gt;
 that can be used to boost speaker playback loudness.&lt;br /&gt;
 &lt;br /&gt;
 The blobs are all in binary format.&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/419&amp;lt;/code&amp;gt;&lt;br /&gt;
- codecs: qcom-lpass/tx-macro: Move TX1 MODE ctrl to&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 The tx-macro is a common interface for WCD937x and wcd938x and&lt;br /&gt;
 also the TX1 MODE setting is not applicable for WCD937x codec.&lt;br /&gt;
 &lt;br /&gt;
 The TX1 MODE mixer controller is derived in WCD938x codec driver,&lt;br /&gt;
 So move TX1 MODE mixer control to wcd938x.&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/421&amp;lt;/code&amp;gt;&lt;br /&gt;
- ucm2: codecs: wcd937x: add codec sequences&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Add default, enable/disable codec sequence for Headphone and Mic on&lt;br /&gt;
 WCD937x codec&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/421&amp;lt;/code&amp;gt;&lt;br /&gt;
- ucm2: soundwire: add rt722 SDCA device&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Add support of ucm to rt722 SDCA.&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/409&amp;lt;/code&amp;gt;&lt;br /&gt;
- ucm2: Qualcomm: x1e80100: add recording via DMIC01&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Add support for Digital Microphones DMIC01 on Qualcomm X1E80100 CRD&lt;br /&gt;
 board.&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/414&amp;lt;/code&amp;gt;&lt;br /&gt;
- ucm2: sof-soundwire: Create ALSA config file for hdmi:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 If the HDMI PCM index (3-5) is found in iec61937-pcm list of the card's&lt;br /&gt;
 components list then use the HdmiPCM/HdmiPCMSave macros to create the&lt;br /&gt;
 configuration file.&lt;br /&gt;
 &lt;br /&gt;
 The PCMs that will be created are:&lt;br /&gt;
 aplay -L | grep hdmi&lt;br /&gt;
 &lt;br /&gt;
 hdmi:CARD=sofsoundwire,DEV=0&lt;br /&gt;
 hdmi:CARD=sofsoundwire,DEV=1&lt;br /&gt;
 hdmi:CARD=sofsoundwire,DEV=2&lt;br /&gt;
 &lt;br /&gt;
 Audio servers (Pulseaudio, Pipewrire) or applications then can use these for&lt;br /&gt;
 bytestream passthrough, for example:&lt;br /&gt;
 mplayer -ao alsa:device=hdmi=sofsoundwire,DEV=0 -ac hwdts &amp;amp;lt;video with dts&amp;amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/411&amp;lt;/code&amp;gt;&lt;br /&gt;
- ucm2: Intel/sof-hda-dsp: Create ALSA config file for&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 If the HDMI PCM index (3-5) is found in iec61937-pcm list of the card's&lt;br /&gt;
 components list then use the HdmiPCM/HdmiPCMSave macros to create the&lt;br /&gt;
 configuration file.&lt;br /&gt;
 &lt;br /&gt;
 The PCMs that will be created are:&lt;br /&gt;
 aplay -L | grep hdmi&lt;br /&gt;
 &lt;br /&gt;
 hdmi:CARD=sofhdadsp,DEV=0&lt;br /&gt;
 hdmi:CARD=sofhdadsp,DEV=1&lt;br /&gt;
 hdmi:CARD=sofhdadsp,DEV=2&lt;br /&gt;
 &lt;br /&gt;
 Audio servers (Pulseaudio, Pipewrire) or applications then can use these for&lt;br /&gt;
 bytestream passthrough, for example:&lt;br /&gt;
 mplayer -ao alsa:device=hdmi=sofhdadsp,DEV=0 -ac hwdts &amp;amp;lt;video with dts&amp;amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/411&amp;lt;/code&amp;gt;&lt;br /&gt;
- ucm2: common: pcm: Add hdmi.conf to handle the creation&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 User space expect to see hdmi: PCM devices to be able to use bytestream&lt;br /&gt;
 passthrough.&lt;br /&gt;
 &lt;br /&gt;
 The common/pcm/hdmi.conf provides two macros:&lt;br /&gt;
 HdmiPCM: to generate an ALSA conf section for an hdmi: PCM device&lt;br /&gt;
 HdmiPCMSave: to save the generated config&lt;br /&gt;
 &lt;br /&gt;
 Example of use (sof-hda-dsp card with hardware HDMI PCMs: 3-5):&lt;br /&gt;
 Macro.0.HdmiPCM { Device 3 Index 0 }&lt;br /&gt;
 Macro.1.HdmiPCM { Device 4 Index 1 }&lt;br /&gt;
 Macro.2.HdmiPCM { Device 5 Index 2 }&lt;br /&gt;
 Macro.3.HdmiPCMSave { }&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/411&amp;lt;/code&amp;gt;&lt;br /&gt;
- sof-soundwire: Add basic support for cs42l43's speaker&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Previous support was added for the mics and headset on cs42l43, expand&lt;br /&gt;
 this support with additional configuration for the speaker output.&lt;br /&gt;
 &lt;br /&gt;
 Link: https://lore.kernel.org/alsa-devel/20240423154305.2782347-1-ckeepax@opensource.cirrus.com/&amp;lt;/code&amp;gt;&lt;br /&gt;
- qcom: sdm845: MM1: enable jack detection&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 This has been added to kernel recently, so make use of it here.&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/408&amp;lt;/code&amp;gt;&lt;br /&gt;
- qcom: sdm845: MM1: use analog volume controls instead of&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Besides the improvement by using analog volume control, it also makes&lt;br /&gt;
 volume levels normal instead of insanely high levels reached by this&lt;br /&gt;
 digital mixer.&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/408&amp;lt;/code&amp;gt;&lt;br /&gt;
- ucm2: Qualcomm: x1e80100: correct headphones&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Fix wireplumber warnings:&lt;br /&gt;
 &lt;br /&gt;
   Path HP Digital is not a volume or mute control&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/396&amp;lt;/code&amp;gt;&lt;br /&gt;
- ucm2: Qualcomm: x1e80100: add number of channels&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Describe number of playback channels for speakers (where it is not&lt;br /&gt;
 obvious: 4 channels) and headphones.&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/396&amp;lt;/code&amp;gt;&lt;br /&gt;
- Add support for Coachz with HDMI disabled&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/403&amp;lt;/code&amp;gt;&lt;br /&gt;
- USB-Audio: ALC4080: Add support for MSI MEG Z790 Ace&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/405&amp;lt;/code&amp;gt;&lt;br /&gt;
- ucm2: MediaTek: mt8195-sof: Add support for Tomato RT5682s&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 A later revision of the MT8195 Cherry Tomato Chromebook (Acer Chromebook&lt;br /&gt;
 Spin 513 CP513-2H, Revision 3 and 4) are using the RT5682s codec instead&lt;br /&gt;
 of RT5682i.&lt;br /&gt;
 &lt;br /&gt;
 The differences are only about a couple of missing switches, where the&lt;br /&gt;
 'i' variant had a switch for the L/R Headphone output and a configurable&lt;br /&gt;
 DAC L/R Mux, while the 's' one misses the mux control and solely relies&lt;br /&gt;
 on the main Headphone Switch.&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/406&amp;lt;/code&amp;gt;&lt;br /&gt;
- sof-soundwire: rt1316/rt1318 - fix channel selection for one amp&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Like in commit 9e29f9e27f4e27dce40d8d6803031bb4f7be3c48, use L-R&lt;br /&gt;
 channel selection when single amp is present.&amp;lt;/code&amp;gt;&lt;br /&gt;
- sof-soundwire: rt1308: Fix single amp configuration&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 If the device have single rt1308 amp then the codec's Channel Select should&lt;br /&gt;
 be set to &amp;quot;LR&amp;quot; and not to &amp;quot;LL&amp;quot;. &amp;quot;LL&amp;quot; is only valid if we have 2 amps, in&lt;br /&gt;
 that case one is the Left and the other is the Right channel.&lt;br /&gt;
 &lt;br /&gt;
 This fixes for example Dell Latitude 9520 which only played on the Left&lt;br /&gt;
 speaker, Right is silent.&lt;br /&gt;
 &lt;br /&gt;
 Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/402&lt;br /&gt;
 Suggested-by: Jaroslav Kysela &amp;amp;lt;perex@perex.cz&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
- sof-soundwire: fix rt1318 config copy-n-paste error in rt1318spk macro&lt;br /&gt;
- sof-soundwire: fix rt1318 config typo in rt1318spk macro&lt;br /&gt;
- USB-Audio: ALC4080: add 0b05:1af1 ASUS ROG Strix Z790-A Gaming Wifi II&lt;br /&gt;
===Description===&lt;br /&gt;
- Release v1.2.12&lt;br /&gt;
&lt;/div&gt;</summary>
		<author><name>alsa&gt;Perex</name></author>
	</entry>
</feed>