<feed xmlns='http://www.w3.org/2005/Atom'>
<title>wireguard-linux/sound, branch devel</title>
<subtitle>WireGuard for the Linux kernel</subtitle>
<id>https://git.zx2c4.com/wireguard-linux/atom/sound?h=devel</id>
<link rel='self' href='https://git.zx2c4.com/wireguard-linux/atom/sound?h=devel'/>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/'/>
<updated>2026-04-29T05:51:17Z</updated>
<entry>
<title>ALSA: hda/tas2781: Fix incorrect bit update for non-book-zero or book 0 pages &gt;1</title>
<updated>2026-04-29T05:51:17Z</updated>
<author>
<name>Shenghao Ding</name>
<email>shenghao-ding@ti.com</email>
</author>
<published>2026-04-29T05:42:06Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=e052a1f7199260eda4d6ca08a59c3b98738f8491'/>
<id>urn:sha1:e052a1f7199260eda4d6ca08a59c3b98738f8491</id>
<content type='text'>
In TAS2781 SPI mode, when accessing non-book-zero or page numbers greater
than 1 in book 0, an additional byte must be read. The first byte in such
cases is a dummy byte and should be ignored.

Fixes: 9fa6a693ad8d ("ALSA: hda/tas2781: Remove tas2781_spi_fwlib.c and leverage SND_SOC_TAS2781_FMWLIB")
Signed-off-by: Shenghao Ding &lt;shenghao-ding@ti.com&gt;
Link: https://patch.msgid.link/20260429054206.429-1-shenghao-ding@ti.com
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>ALSA: hda: cs35l56: Fix uninitialized value in cs35l56_hda_read_acpi()</title>
<updated>2026-04-29T05:50:16Z</updated>
<author>
<name>Richard Fitzgerald</name>
<email>rf@opensource.cirrus.com</email>
</author>
<published>2026-04-28T13:05:31Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=90df4957a3271adf391b3432cd76a40887cf3273'/>
<id>urn:sha1:90df4957a3271adf391b3432cd76a40887cf3273</id>
<content type='text'>
Eliminate the uninitialized 'nval' in cs35l56_hda_read_acpi() if a
system-specific quirk overrides processing of the dev-index property.
The value is now stored in a new 'num_amps' member of struct cs35l56_hda
so that the quirk handler can set the value.

The quirk for the Lenovo Yoga Book 9i GenX  replaces the values from the
dev-index property with hardcoded indexes. So cs35l56_hda_read_acpi() would
then skip reading the property. But this left the 'nval' local variable
uninitialized when it is later passed to cirrus_scodec_get_speaker_id().

Fixes: 40b1c2f9b299 ("ALSA: hda/cs35l56: Workaround bad dev-index on Lenovo Yoga Book 9i GenX")
Reported-by: Dan Carpenter &lt;error27@gmail.com&gt;
Closes: https://lore.kernel.org/linux-sound/aenFesLAStjrVNy8@stanley.mountain/T/#u
Signed-off-by: Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;
Link: https://patch.msgid.link/20260428130531.169600-1-rf@opensource.cirrus.com
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>ALSA: hda/conexant: Fix missing error check for jack detection</title>
<updated>2026-04-29T05:49:44Z</updated>
<author>
<name>wangdicheng</name>
<email>wangdicheng@kylinos.cn</email>
</author>
<published>2026-04-28T08:04:50Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=b0e2333a231107adedd38c6fcfe1adc6162716fc'/>
<id>urn:sha1:b0e2333a231107adedd38c6fcfe1adc6162716fc</id>
<content type='text'>
In cx_probe(), the return value of snd_hda_jack_detect_enable_callback()
is ignored. This function returns a pointer, and if it fails (e.g., due
to memory allocation failure), it returns an error pointer which must
be checked using IS_ERR().

If the registration fails, the driver continues to probe, but the jack
detection callback will not be registered. This can lead to a kernel
crash later when the driver attempts to handle jack events or accesses
the uninitialized structure.

Check the return value using IS_ERR() and propagate the error via
PTR_ERR() to the probe caller.

Fixes: 7aeb25908648 ("ALSA: hda/conexant: Fix headset auto detect fail in cx8070 and SN6140")
Signed-off-by: wangdicheng &lt;wangdicheng@kylinos.cn&gt;
Link: https://patch.msgid.link/20260428080450.108801-1-wangdich9700@163.com
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>ALSA: hda: Avoid WARN_ON() for HDMI chmap slot checks</title>
<updated>2026-04-29T05:49:09Z</updated>
<author>
<name>Takashi Iwai</name>
<email>tiwai@suse.de</email>
</author>
<published>2026-04-28T06:17:56Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=077c593dacf7ee33511468e4f29417d795cf07a4'/>
<id>urn:sha1:077c593dacf7ee33511468e4f29417d795cf07a4</id>
<content type='text'>
At parsing the channel mapping for HDMI, the current code may spew
WARN_ON() unnecessarily for the case where only invalid (zero) channel
maps are given from the hardware.  Drop WARN_ON() and reorganize the
code a bit for avoiding the hdmi_slot over the array size.

Closes: https://bugzilla.kernel.org/show_bug.cgi?id=221390
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Link: https://patch.msgid.link/20260428061800.80527-1-tiwai@suse.de
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>ALSA: usb-audio: Fix quirk entry placement for PreSonus AudioBox USB</title>
<updated>2026-04-29T05:46:54Z</updated>
<author>
<name>Abhinav Mahadevan</name>
<email>abhi220204@gmail.com</email>
</author>
<published>2026-04-28T15:50:00Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=2d80392a97cf205a766d75539b4c814a4f5e7490'/>
<id>urn:sha1:2d80392a97cf205a766d75539b4c814a4f5e7490</id>
<content type='text'>
The quirk entry for PreSonus AudioBox USB was mistakenly placed inside
a disabled #if 0 block. Move it to the correct position after the

Fixes: 34fe4a9df247 ("ALSA: usb-audio: Add quirk for PreSonus AudioBox USB")
Signed-off-by: Abhinav Mahadevan &lt;abhi220204@gmail.com&gt;
Link: https://patch.msgid.link/20260428155117.5170-1-abhi220204@gmail.com
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
</content>
</entry>
<entry>
<title>Merge tag 'asoc-fix-v7.1-rc1' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus</title>
<updated>2026-04-29T05:46:33Z</updated>
<author>
<name>Takashi Iwai</name>
<email>tiwai@suse.de</email>
</author>
<published>2026-04-29T05:46:33Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=a7b75a11c6f16c049a2ea17cf9d1aaaa57201cf3'/>
<id>urn:sha1:a7b75a11c6f16c049a2ea17cf9d1aaaa57201cf3</id>
<content type='text'>
ASoC: Fixes for v7.1

We've had quite a lot of fixes come in this past week, all driver stuff
rather than any broad systematic issue.  All quite routine stuff.
</content>
</entry>
<entry>
<title>ASoC: spacemit: adjust FIFO trigger threshold to half FIFO size</title>
<updated>2026-04-29T02:41:32Z</updated>
<author>
<name>Troy Mitchell</name>
<email>troy.mitchell@linux.spacemit.com</email>
</author>
<published>2026-04-29T01:38:48Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=03dcb5b68a96b51157ec2d17042fa2f0106828ae'/>
<id>urn:sha1:03dcb5b68a96b51157ec2d17042fa2f0106828ae</id>
<content type='text'>
Set both TX and RX FIFO trigger thresholds (TFT/RFT) to 0xF (half of
the 32-entry FIFO) instead of 5. This provides better DMA efficiency
by allowing more data to accumulate before triggering a DMA request,
reducing the number of DMA transactions needed.

Signed-off-by: Troy Mitchell &lt;troy.mitchell@linux.spacemit.com&gt;
Link: https://patch.msgid.link/20260429-k3-i2s-v1-3-2fe99db11ecb@linux.spacemit.com
Signed-off-by: Mark Brown &lt;broonie@kernel.org&gt;
</content>
</entry>
<entry>
<title>ASoC: spacemit: move hw constraints from hw_params to startup</title>
<updated>2026-04-29T02:41:32Z</updated>
<author>
<name>Troy Mitchell</name>
<email>troy.mitchell@linux.spacemit.com</email>
</author>
<published>2026-04-29T01:38:47Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=6b4afbaaa342eaa52172e0be5ef8d1fcbf9ff460'/>
<id>urn:sha1:6b4afbaaa342eaa52172e0be5ef8d1fcbf9ff460</id>
<content type='text'>
Hardware constraints should be applied in the startup callback rather
than hw_params, as hw_params may be called too late for the constraints
to take effect properly.

Move the channel count and format constraints for I2S and DSP_A/DSP_B
modes into a new startup callback. This also tightens the I2S mode
channel constraint from 1-2 to exactly 2, matching the actual hardware
behavior.

Signed-off-by: Troy Mitchell &lt;troy.mitchell@linux.spacemit.com&gt;
Link: https://patch.msgid.link/20260429-k3-i2s-v1-2-2fe99db11ecb@linux.spacemit.com
Signed-off-by: Mark Brown &lt;broonie@kernel.org&gt;
</content>
</entry>
<entry>
<title>ASoC: codecs: ab8500: Fix casting of private data</title>
<updated>2026-04-29T00:47:39Z</updated>
<author>
<name>Christian A. Ehrhardt</name>
<email>christian.ehrhardt@codasip.com</email>
</author>
<published>2026-04-28T19:22:49Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=a201aef1a88b675e9eb8487e27d14e2eef3cef80'/>
<id>urn:sha1:a201aef1a88b675e9eb8487e27d14e2eef3cef80</id>
<content type='text'>
ab8500_filter_controls[i].private_value is initialized using

	.private_value = (unsigned long)&amp;(struct filter_control)
		{.count = xcount, .min = xmin, .max = xmax}

thus it's a pointer to a struct filter_control casted to unsigned long.

So to get back that pointer .private_data must be cast back, not its
address.

Fixes: 679d7abdc754 ("ASoC: codecs: Add AB8500 codec-driver")
Signed-off-by: Christian A. Ehrhardt &lt;christian.ehrhardt@codasip.com&gt;
Signed-off-by: Uwe Kleine-König (The Capable Hub) &lt;u.kleine-koenig@baylibre.com&gt;
Link: https://patch.msgid.link/20260428192255.2294705-2-u.kleine-koenig@baylibre.com
Signed-off-by: Mark Brown &lt;broonie@kernel.org&gt;
</content>
</entry>
<entry>
<title>ASoC: cs35l56: Fix illegal writes to OTP_MEM registers</title>
<updated>2026-04-28T23:41:14Z</updated>
<author>
<name>Richard Fitzgerald</name>
<email>rf@opensource.cirrus.com</email>
</author>
<published>2026-04-28T11:52:28Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=be102efb832ef7e30e4cd4c2edf22bbf64ddf35a'/>
<id>urn:sha1:be102efb832ef7e30e4cd4c2edf22bbf64ddf35a</id>
<content type='text'>
Mark the OTP_MEM registers as volatile so that regcache_sync() will not
attempt to write to them.

These registers hold a constant, and originally they were marked as
readable non-volatile so that this value would be read into the regmap
cache. The problem with this is regcache_sync() issues a write for any
cached register that does not have a reg_default.

Though these registers are constants and writing them in normal use
cannot change OTP, it is illegal for the host to write to them.

Fixes: e1830f66f6c6 ("ASoC: cs35l56: Add helper functions for amp calibration")
Signed-off-by: Richard Fitzgerald &lt;rf@opensource.cirrus.com&gt;
Link: https://patch.msgid.link/20260428115228.158252-1-rf@opensource.cirrus.com
Signed-off-by: Mark Brown &lt;broonie@kernel.org&gt;
</content>
</entry>
</feed>
