linux/include/sound
Linus Torvalds e9954f3fbd sound fixes for 7.4-rc1
A collection of fixes across the sound subsystem since the initial
 7.4 PR.  Nothing particularly stands out, mostly driver- and
 device-specific fixes along with a few race / UAF fixes and cleanups.
 Here are some highlights:
 
 * ALSA core:
 - Fix potential race in PCM proc handling at disconnection
 - Fix potential race in UMP sequencer callback at releasing
 
 * HD-audio:
 - Reject codec reset/reconfig on ASoC buses to prevent deadlock
 - Force MSI for Hygon H34M51A board
 - Usual Realtek quirks for ASUS and HP laptops/AiO
 
 * USB-audio:
 - Bound packet copies by PCM buffer size in generic and ua101 drivers
 - Rate-limit URB submission errors at stream start
 - Skip redundant probe-time interface setup on MSI ALC4080
 - Device quirks for Novation UltraNova, MOTU MicroBook II, and RYDZ
   Headphone
 
 * ASoC:
 - Fixes for runtime PM and IRQ handling in hdac_hda and SDCA
 - SOF: Fix potential UAF at release, fix for Kconfig dependency
 - Qualcomm: Fixes for sm8250 and q6apm/q6afe
 - NXP / i.MX: Fix for pending work in hw_free
 - Xilinx: Fix read-modify-write of AUD_CTRL in formatter_pcm
 - Intel: Arrow Lake SoundWire match table additions (RT712, RT713 +
   dual RT1320)
 - AMD: DMI quirk for HP Laptop 14-em0xxx and memory leak fix in Raven
   DMA close
 - Various codec fixes for midas_wm1811, wm8994, cs35l56, cs42l56,
   WSA881x/883x/884x, es8326/es8375/es9356,  rt721/rt722, and
   tlv320aic32x4
 
 * Misc:
 - OPL3: Fix races in timer initialization, shutdown, and voice cleanup
 - Bounds checks and string helpers for AC97 and emu10k1
 - Fix spu_memset() stride in legacy SH AICA driver
 - Parameter handling fixes in pcmtest virtual driver
 -----BEGIN PGP SIGNATURE-----
 
 iQJCBAABCAAsFiEEIXTw5fNLNI7mMiVaLtJE4w1nLE8FAmrmFsAOHHRpd2FpQHN1
 c2UuZGUACgkQLtJE4w1nLE8DzA//WKBXzuHaYoQCel0Ky0qbTjOsLJaI63D1+w6r
 2SeeEjKIRhRVSGSuGvtMLKQ2IEFq9njhVCjnv9FK+bY2x4jrc6auSixOmXZNgplj
 f39DlJjy4ZZ6N1M9LclbiHFPR7UuRlbgXqS6UR83ijapHGqTf5eWcL1RIHmiUZ3k
 Xr6Yd2Q58u7sMRdwLIoXYum7VD/46iSTS/SQT5Iq8eQij7YVlVTglxUPTouCVWI7
 rNm9TZe5VggJ77ADI2Fo3VRI+QhQU/BohZ7R155fpqroCvGKLmWppypkCqpxtc/u
 DnVGI7Cq/TDoBh2u4GrtBhx+voyt84X2N1epJ6vZzp5VZc6cjBnKFynvsxuGH4ox
 0hb9Syu70rUAtulJwefRuftXv/gl0coZJCS1NoPsoKy3pEBGHExjgBoCZv7oCNH9
 chk4n7XFEb7yktN5bd6MG7yhdF1U6jwkpFyDphBTb992eaB0KTylx/JcmOzwxSun
 MKcAq8jsigvoxfvjGhE1OugtOg0qgdNgW9vCD1xXwSaNRXFEGNoBHWE33Y4nq3GW
 e5PqUkYI6k2cAVyosxS3N9h9H/5FfCQynC1VZECl7gdFKvhNgHVAFuVLzbQ/Hn8K
 vYitKNrVdC07EubPuOyOiDqEMCqvtAv7acH11ABMkKdnqwbbi0MzZB15s1lt1vzh
 er1a04E=
 =zbju
 -----END PGP SIGNATURE-----

Merge tag 'sound-fix-7.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound

Pull sound fixes from Takashi Iwai:
 "A collection of fixes across the sound subsystem. Nothing particularly
  stands out, mostly driver- and device-specific fixes along with a few
  race / UAF fixes and cleanups. Here are some highlights:

  ALSA core:
   - Fix potential race in PCM proc handling at disconnection
   - Fix potential race in UMP sequencer callback at releasing

  HD-audio:
   - Reject codec reset/reconfig on ASoC buses to prevent deadlock
   - Force MSI for Hygon H34M51A board
   - Usual Realtek quirks for ASUS and HP laptops/AiO

  USB-audio:
   - Bound packet copies by PCM buffer size in generic and ua101 drivers
   - Rate-limit URB submission errors at stream start
   - Skip redundant probe-time interface setup on MSI ALC4080
   - Device quirks for Novation UltraNova, MOTU MicroBook II, and RYDZ
     Headphone

  ASoC:
   - Fixes for runtime PM and IRQ handling in hdac_hda and SDCA
   - SOF: Fix potential UAF at release, fix for Kconfig dependency
   - Qualcomm: Fixes for sm8250 and q6apm/q6afe
   - NXP / i.MX: Fix for pending work in hw_free
   - Xilinx: Fix read-modify-write of AUD_CTRL in formatter_pcm
   - Intel: Arrow Lake SoundWire match table additions (RT712, RT713 +
     dual RT1320)
   - AMD: DMI quirk for HP Laptop 14-em0xxx and memory leak fix in Raven
     DMA close
   - Various codec fixes for midas_wm1811, wm8994, cs35l56, cs42l56,
     WSA881x/883x/884x, es8326/es8375/es9356, rt721/rt722, and
     tlv320aic32x4

  Misc:
   - OPL3: Fix races in timer initialization, shutdown, and voice
     cleanup
   - Bounds checks and string helpers for AC97 and emu10k1
   - Fix spu_memset() stride in legacy SH AICA driver
   - Parameter handling fixes in pcmtest virtual driver"

* tag 'sound-fix-7.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (71 commits)
  ASoC: SOF: Intel: hda: Stop the controller before freeing its DMA buffers
  ASoC: imx-pcm-rpmsg: Flush pending work in hw_free
  ASoC: xilinx: formatter_pcm: Fix read-modify-write of AUD_CTRL in hw_params
  ASoC: hdac_hda: Keep runtime PM state in sync across codec remove/probe
  ASoC: rt721: Remove invalid register defaults
  ASoC: hdac_hda: Balance the runtime PM disable in codec remove
  ASoC: hdac_hda: Restore the codec device type on unbind
  ASoC: hdac_hda: Allocate the private data at codec driver bind
  ASoC: qcom: sm8250: Limit RX digital gain to 0 dB
  ALSA: hda: Reject codec reset on ASoC (ext_ops) buses
  ALSA: usb-audio: add quirk for Novation UltraNova (1235:0011)
  ALSA: usb-audio: Add correct datainterval in the quirks-table for Microbook II
  ALSA: usb-audio: Skip probe-time interface setup for MSI MAG X570S ALC4080
  ALSA: hda/realtek: Extend quirk for HP Pavilion All-in-One 27-ca1xxx
  ALSA: pcmtest: Honor the enable parameter
  ALSA: ua101: Bound packet copies by the PCM buffer size
  ALSA: usb-audio: Bound packet copies by the PCM buffer size
  ASoC: SDCA: re-enable IRQ on pm_runtime_force_suspend failure
  ASoC: SDCA: drop pm_runtime reference on probe failure path
  ASoC: SDCA: propagate sdw_slave_read_prop() failure in class_read_prop
  ...
2026-10-31 12:30:31 -07:00
..
ac97 ALSA: ac97: use struct keyword for kernel-doc comments 2026-07-14 08:00:43 +02:00
sof ASoC: SOF: ipc4: Handle compressed drain done notification from firmware 2026-10-07 13:16:49 +02:00
ac97_codec.h ALSA: mark all struct bus_type as const 2023-12-30 10:10:41 +01:00
aci.h ALSA: opti9xx: Use standard print API 2024-08-08 07:49:45 +02:00
acp7x_chip_offset_byte.h include: sound: add register header file for acp7.x series 2026-05-22 00:15:00 +01:00
acp63_chip_offset_byte.h ASoC: amd: update ps platform acp header file 2023-02-03 12:04:02 +00:00
ad1816a.h
ad1843.h
ak4xxx-adda.h
ak4113.h
ak4114.h
ak4117.h
ak4531_codec.h ALSA: ens137x: Replace with DEFINE_SIMPLE_DEV_PM_OPS() 2024-02-12 11:50:24 +01:00
alc5623.h
asequencer.h ALSA: seq: Drop the dead struct snd_seq_event_bounce 2026-08-12 16:39:11 +02:00
asound.h
asoundef.h ALSA: Add definitions for the bits in IEC958 subframe 2025-09-29 09:46:03 +08:00
aw88399.h ASoC: aw88399: pass firmware name as argument 2026-10-19 20:00:53 +02:00
compress_driver.h ALSA: compress: stop active streams on disconnect 2026-10-07 13:16:48 +02:00
control.h ALSA: vmaster: Serialize hook registration with control callbacks 2026-10-14 08:14:46 +02:00
core.h ALSA: oss: Keep emulation modules loaded until object teardown 2026-10-19 10:08:47 +02:00
cs-amp-lib.h ASoC: cs-amp-lib: Support Dell SSIDExV2 UEFI variable 2026-01-21 13:41:20 +00:00
cs35l33.h
cs35l34.h
cs35l35.h
cs35l36.h
cs35l41.h ALSA: hda: cs35l41: Add support for center channel in CS35L41 HDA 2025-06-13 10:19:34 +02:00
cs35l56.h ASoC: cs35l56: Wait for firmware timer expiry before system suspend 2026-10-20 15:54:26 +01:00
cs42l42.h ASoC: cs42l42: Remove redundant delays in suspend(). 2024-02-19 17:02:18 +00:00
cs42l43.h ASoC: cs42l43: Add support for the cs42l43 2023-08-18 23:41:54 +01:00
cs48l32_registers.h ASoC: cs48l32: Add driver for Cirrus Logic CS48L32 audio DSP 2025-04-15 13:58:43 +01:00
cs48l32.h ASoC: cs48l32: Add driver for Cirrus Logic CS48L32 audio DSP 2025-04-15 13:58:43 +01:00
cs4231-regs.h
cs4271.h ASoC: cs4271: Convert to GPIO descriptors 2023-12-01 16:59:21 +00:00
cs8403.h
cs8427.h
da7213.h
da7218.h
da7219-aad.h ASoC: da7219: Add Jack insertion detection polarity 2023-05-23 18:49:36 +01:00
da7219.h
da9055.h
designware_i2s.h ASoC: dwc: i2s: Add StarFive JH7110 SoC support 2023-08-23 13:56:40 +01:00
dmaengine_pcm.h ASoC: soc-generic-dmaengine-pcm: use snd_soc_register_component() 2026-08-05 00:39:33 +01:00
emu10k1_synth.h
emu10k1.h ALSA: emu10k1: fix typos in comments 2026-09-15 12:07:42 +02:00
emu8000_reg.h
emu8000.h
emux_legacy.h ALSA: emux: fix typos in comments 2026-09-15 12:07:42 +02:00
emux_synth.h ALSA: seq: Use flexible array for MIDI channels 2026-05-15 08:52:44 +02:00
es1688.h ALSA: es1688: Use standard print API 2024-08-08 07:47:24 +02:00
graph_card.h ASoC: simple_card_utils.h: convert not to use asoc_xxx() 2023-09-25 14:16:14 +02:00
gus.h ALSA: gus: add shared GF1 suspend and resume helpers 2026-04-06 11:08:35 +02:00
hda_chmap.h
hda_codec.h ALSA: hda: Use linked list for jack table 2026-10-08 08:48:16 +02:00
hda_component.h
hda_hwdep.h
hda_i915.h ALSA: hda: i915: Remove extra argument from snd_hdac_i915_init 2023-10-19 14:56:25 +02:00
hda_register.h ALSA: hda: Fix all stream interrupts definition 2024-10-14 12:00:52 +02:00
hda_regmap.h ALSA: hda: regmap: fix all kernel-doc warnings 2026-07-14 08:00:43 +02:00
hda_verbs.h ALSA: hda: Add missing SET_GPI_* and SET_GPO_* verb definitions 2026-03-28 14:44:20 +01:00
hda-mlink.h ASoC: SOF: Intel: hda: Avoid ACE2+ link DMA stream allocation hazards 2026-07-31 20:57:16 +01:00
hda-sdw-bpt.h ASoC/soundwire: Intel: reset the PCMSyCM registers in hda_sdw_bpt_close 2026-07-31 13:23:10 +01:00
hdaudio_ext.h ASoC: Intel: avs: Read HW capabilities when possible 2025-04-07 14:39:57 +01:00
hdaudio.h ALSA: hda: Make hdac_device.registered a plain bool 2026-10-08 08:49:14 +02:00
hdmi-codec.h ASoC: hdmi-codec: allow to refine formats actually supported 2025-01-26 14:01:12 +02:00
hwdep.h ALSA: hwdep: Don't embed device 2023-08-17 09:24:01 +02:00
i2c.h
info.h ALSA: pcm: Drain proc callbacks at device disconnect 2026-10-23 21:34:09 +02:00
initval.h
intel-dsp-config.h
intel-nhlt.h ALSA: hda: intel-nhlt: add intel_nhlt_ssp_device_type() function 2024-03-22 12:40:46 +01:00
jack.h ALSA: jack: Expose injection debugfs at device register phase 2026-10-16 18:20:38 +02:00
madera-pdata.h ASoC: madera: Replace kernel.h with the necessary inclusions 2022-07-05 13:00:49 +01:00
max9768.h ASoC: max9768: Convert to use GPIO descriptors 2023-09-11 12:50:05 +01:00
max98088.h
max98090.h
max98095.h
memalloc.h ALSA: memalloc: Let IOMMU handle S/G primarily 2024-08-01 12:45:49 +02:00
minors.h
mixer_oss.h
mpu401.h
omap-hdmi-audio.h drm/omap: Report HDMI hotplug events to the ASoC HDMI codec 2026-08-21 12:44:00 +03:00
opl3.h ALSA: opl3: Replace with __packed attribute 2023-10-26 09:43:15 +02:00
opl4.h
pcm_drm_eld.h ALSA: hda/hdmi: extract common interface for ELD handling 2025-02-05 13:04:00 +01:00
pcm_iec958.h
pcm_oss.h ALSA: oss: Keep emulation modules loaded until object teardown 2026-10-19 10:08:47 +02:00
pcm_params.h ALSA: pcm: Drop __force casts 2026-08-13 16:43:27 +02:00
pcm-indirect.h ALSA: pcm: Improved XRUN handling for indirect PCM helpers 2023-03-24 14:52:58 +01:00
pcm.h ALSA: pcm: Add refcount for races between drain and unlink 2026-10-15 12:26:09 +02:00
pt2258.h
pxa2xx-lib.h ASoC: pxa: integrate sound/arm/pxa2xx into sound/soc/pxa2xx 2026-05-06 10:14:43 +09:00
q6usboffload.h ASoC: qcom: qdsp6: Add USB backend ASoC driver for Q6 2025-04-11 13:02:32 +02:00
rawmidi.h ALSA: rawmidi: Add a proper disconnect handling 2026-09-03 18:06:18 +02:00
rt286.h
rt298.h
rt1015.h
rt1318.h ASoC: rt1318: Add RT1318 audio amplifier driver 2024-06-19 14:50:34 +01:00
rt5514.h
rt5659.h
rt5660.h
rt5663.h
rt5665.h ASoC: rt5665: Convert to use GPIO descriptors 2023-08-17 15:10:11 +01:00
rt5668.h ASoC: rt5668: Convert to use GPIO descriptors 2023-08-17 15:10:12 +01:00
rt5682.h ASoC: rt5682: Convert to use GPIO descriptors 2023-08-17 15:10:13 +01:00
rt5682s.h ASoC: rt5682s: Add LDO output selection for dacref 2023-11-14 17:39:27 +00:00
sb.h ALSA: als4000: Replace with DEFINE_SIMPLE_DEV_PM_OPS() 2024-02-12 11:50:24 +01:00
sb16_csp.h
sdca_asoc.h ASoC: SDCA: Remove unused dev pointer argument 2026-08-06 13:41:29 +01:00
sdca_class.h ASoC: SDCA: add class_ops with populate_function 2026-09-29 12:50:04 +01:00
sdca_fdl.h ASoC: SOF: ipc4-topology: Pipeline params improvements 2026-08-04 17:31:03 +01:00
sdca_function.h ASoC: SDCA: correct enum names and add a missing struct field 2026-08-06 17:15:17 +01:00
sdca_hid.h ASoC: SDCA: Add missing destroy for HID device 2026-08-06 13:41:38 +01:00
sdca_interrupts.h ASoC: SDCA: Populate IRQ data earlier 2026-07-27 18:47:06 +01:00
sdca_jack.h ASoC: SDCA: Move kcontrol search out of IRQ 2026-07-27 18:47:09 +01:00
sdca_regmap.h ASoC: SDCA: Add helper to write initialization writes 2025-11-20 17:22:58 +00:00
sdca_ump.h ASoC: SDCA: Add UMP timeout handling for FDL 2025-10-27 15:31:27 +00:00
sdca.h ASoC: SDCA: allow building without ACPI 2026-09-29 12:50:01 +01:00
sdw.h sound: sdw: Add hw_params to SoundWire config helper function 2022-11-28 13:04:24 +00:00
seq_device.h ALSA: seq: Use flexible array for device arguments 2026-06-01 11:28:32 +02:00
seq_kernel.h ALSA: seq: Remove unused declarations 2024-08-17 16:32:31 +02:00
seq_midi_emul.h ALSA: seq: Use flexible array for MIDI channels 2026-05-15 08:52:44 +02:00
seq_midi_event.h
seq_oss_legacy.h
seq_oss.h
seq_virmidi.h ALSA: seq: Use RCU for the virmidi file list 2026-08-10 17:44:34 +02:00
sh_dac_audio.h
sh_fsi.h
simple_card_utils.h ASoC: audio-graph-card: Free jack GPIOs on card remove 2026-09-15 17:35:03 +01:00
simple_card.h sh: roll back Ecovec24/7724se Sound support 2026-06-10 12:00:23 +01:00
snd_wavefront.h ALSA: wavefront: add suspend and resume support 2026-04-29 07:52:22 +02:00
soc_sdw_utils.h ASoC: Add support for Airoha AN7581 2026-09-18 23:24:30 +02:00
soc-acpi-intel-match.h ASoC: Intel: soc-acpi: add NVL match tables 2025-11-17 12:04:28 +01:00
soc-acpi-intel-ssp-common.h ASoC: Intel: ti-common: support tas2563 amplifier 2025-12-17 12:04:27 +00:00
soc-acpi.h ASoC: soc-acpi: fix all kernel-doc warnings 2026-08-06 17:15:18 +01:00
soc-card.h ASoC: soc-card: add snd_soc_card_set_topology_name() 2026-05-28 12:18:29 +01:00
soc-component.h ASoC: soc-component: move snd_soc_component_xxx() to soc-component.c 2026-10-15 23:13:23 +01:00
soc-dai.h ASoC: soc-dai: rename snd_soc_dai_action() to snd_soc_dai_active_update() 2026-09-28 13:33:42 +01:00
soc-dapm.h ASoC: soc-core: Add core support for ignoring suspend on selected DAPM widgets 2026-05-25 13:37:18 +01:00
soc-dpcm.h ASoC: remove dpcm_process_paths() 2025-02-16 23:51:06 +00:00
soc-jack.h ASoC: soc-jack: Get rid of legacy GPIO support 2024-03-26 17:13:45 +00:00
soc-link.h
soc-topology.h ASoC: topology: Constify an argument of snd_soc_tplg_component_load() 2024-05-27 01:31:15 +01:00
soc-usb.h ASoC: usb: Fetch ASoC card and pcm device information 2025-04-11 13:02:31 +02:00
soc.h ASoC: soc-component: move snd_soc_component_xxx() to soc-component.c 2026-10-15 23:13:23 +01:00
sof.h ASoC: SOF: Add support for on-demand DSP boot 2025-12-15 23:07:41 +09:00
soundfont.h ALSA: synth: Use guard() for preset locks 2025-09-01 13:54:27 +02:00
spear_dma.h
spear_spdif.h
sta32x.h
sta350.h
tas2x20-tlv.h ASoC: tas2781: Add tas2118, tas2x20, tas5825 support 2025-09-09 08:42:50 +02:00
tas2552-plat.h
tas2563-tlv.h ASoC: tas2781: mark const variables tas2563_dvc_table as __maybe_unused 2024-08-22 13:34:12 +01:00
tas2770-tlv.h ALSA: hda: Fix the wrong register was used for DVC of TAS2770 2025-07-29 17:48:29 +02:00
tas2781-comlib-i2c.h ALSA: hda/tas2781: Remove tas2781_spi_fwlib.c and leverage SND_SOC_TAS2781_FMWLIB 2025-04-30 07:36:25 +02:00
tas2781-dsp.h ASoC: tas2781: Add TAS2573 calibration support 2026-09-29 16:22:58 +01:00
tas2781-tlv.h ALSA: hda/tas2781: Add name prefix tas2781 for tas2781's dvc_tlv and amp_vol_tlv 2025-08-18 11:10:57 +02:00
tas2781.h Revert "ALSA: hda/tas2781: Enable bass speakers support" 2026-10-14 07:54:18 +02:00
tas5086.h
tas5825-tlv.h ALSA: hda: Add TAS5825 support 2025-08-11 09:13:42 +02:00
tea6330t.h ALSA: tea6330t: add mixer state restore helper 2026-04-08 09:55:03 +02:00
timer.h ALSA: timer: Manage timer object with kref 2026-06-10 09:36:28 +02:00
tlv.h
ump_convert.h ALSA: ump: Fix buffer overflow at UMP SysEx message conversion 2025-04-29 14:52:06 +02:00
ump_msg.h ALSA: ump: Fix a typo of snd_ump_stream_msg_device_info 2025-05-11 16:27:55 +02:00
ump.h ALSA: ump: Drain sequencer callbacks before freeing their client 2026-10-25 08:55:04 +01:00
util_mem.h
vx_core.h ALSA: vx_core: Drop unused dev field 2024-08-08 07:47:23 +02:00
wavefront.h ALSA: wavefront: Drop obsoleted comments and definitions 2023-10-26 09:43:24 +02:00
wm0010.h ASoC: wm0010: Convert to GPIO descriptors 2023-12-08 14:31:57 +00:00
wm2000.h
wm2200.h ASoC: wm2200: Convert to GPIO descriptors 2023-12-08 14:31:59 +00:00
wm5100.h ASoC: wm5100: Convert to GPIO descriptors 2023-12-08 14:31:59 +00:00
wm8903.h
wm8904.h ASoC: wm8904: don't use "/**" for non-kernel-doc comments 2026-08-06 17:15:19 +01:00
wm8955.h
wm8960.h
wm8962.h
wm8993.h
wm8996.h ASoC: wm8996: Convert to GPIO descriptors 2023-12-08 14:32:00 +00:00
wm9081.h
wm9090.h
wss.h