linux/include/sound
Charles Keepax bf1b7821f8
ASoC: SDCA: Move kcontrol search out of IRQ
Now that the IRQs are always registered after all the ALSA
controls are created it is possible to search for the control
at the point the IRQ is requested. Move the control search out
of the IRQ handler and do it at IRQ request time.

This also fixes a potential issue when the card was torn down
and reprobed without destroying the codec device, the kctl
pointer stored by the IRQ handler would not be updated to the
new control on the second probe.

Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Link: https://patch.msgid.link/20260721143636.361814-8-ckeepax@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2026-07-27 18:47:09 +01:00
..
ac97 ASoC: arm: pxa2xx: remove platform_data processing 2026-05-06 10:14:42 +09:00
sof ASoC: SOF: ipc4: sof_ipc4_module_init_ext_init structs and macros 2026-01-12 11:48:38 +00: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
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
asound.h
asoundef.h ALSA: Add definitions for the bits in IEC958 subframe 2025-09-29 09:46:03 +08:00
compress_driver.h ALSA: compress_offload: Add 64-bit safe timestamp infrastructure 2025-09-08 09:33:24 +02:00
control.h Merge branch 'topic/control-lookup-rwlock' into for-next 2024-08-09 14:25:24 +02:00
core.h ALSA: core: Use the new helper for the power refcount 2026-06-11 09:34:09 +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: Increase pm_runtime autosuspend delay 2026-06-09 17:13:41 +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
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: dmaengine_pcm: Add port_window_size to DAI dma data struct 2025-08-10 21:09:12 +01:00
emu10k1_synth.h
emu10k1.h ALSA: emu10k1: Use guard() for emu1010 FPGA locking 2025-09-01 13:52:40 +02:00
emu8000_reg.h
emu8000.h
emux_legacy.h
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 Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (headers) 2026-07-03 07:38: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
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-mlink/lnl: Convert offload enable functions to void 2026-05-22 00:16:31 +01:00
hda-sdw-bpt.h ASoC: SOF: Intel: export hda_sdw_bpt_get_buf_size_aligment 2025-12-08 12:37:26 +05:30
hdaudio_ext.h ASoC: Intel: avs: Read HW capabilities when possible 2025-04-07 14:39:57 +01:00
hdaudio.h ALSA: hda/core: Add include defining struct hda_device_id 2026-07-03 07:38:15 +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
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 USB/Thunderbolt changes for 6.16-rc1 2025-06-06 12:45:35 -07:00
madera-pdata.h
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
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
pcm_params.h ALSA: hda: Upgrade stream-format infrastructure 2023-11-27 17:27:41 +01:00
pcm-indirect.h
pcm.h ALSA: pcm: oss: use proper stream lock for runtime->state access 2026-03-16 18:05:55 +01: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: Make tied_device=0 as default / unknown 2025-01-14 16:52:07 +01: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: Add PDE verification reusable helper 2026-05-07 17:18:37 +09:00
sdca_fdl.h ASoC: SDCA: Remove devm from primary IRQ cleanup 2026-07-27 18:47:05 +01:00
sdca_function.h ASoC: SDCA: Remove sdca_function_data duplication 2026-05-04 22:24:41 +09:00
sdca_hid.h ASoC: SDCA: Add HID button IRQ 2025-10-27 15:31:29 +00: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: Support devices with multiple functions of identical type 2026-05-04 22:24:42 +09:00
sdw.h
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
sh_dac_audio.h
sh_fsi.h
simple_card_utils.h ASoC: simple-card-utils: add sysclk ordering support 2026-02-22 23:52:23 +00: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: sdw_utils: add soc_sdw_es9356 2026-05-14 09:52:46 +09: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 / SOF: Add best_effort flag to get_function_tplg_files op 2025-12-15 23:08:35 +09: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: Add a component fixup_controls callback 2026-07-27 18:47:07 +01:00
soc-dai.h ASoC: update auto format selection method 2026-06-12 18:57:58 +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-core: remove card->dmi_longname 2026-06-04 11:23:46 +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: Updates for v6.18 2025-09-20 08:38:17 +02: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 ASoC: tas2781: Update default register address to TAS2563 2026-06-25 14:19:11 +01: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
tlv320aic32x4.h ASoC: codec: tlv320aic32x4: Drop aic32x4_pdata usage 2025-07-13 22:36:54 +01:00
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: seq: Notify UMP EP and FB changes 2025-01-12 13:12:21 +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: get platform data from DT 2025-03-20 12:42:29 +00: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