linux/sound
Hans de Goede 15d54840ec
ASoC: rt5640: Delay requesting IRQ until the machine-drv calls set_jack
Delay requesting the IRQ until the machine-drv calls set_jack.

The main reason for this is that the codec's IRQ is unused on some boards,
in which case we really should not call request_irq at all.

On some boards there is an IRQ listed at index 0 for the codec, but
this is not connected to the codec, but rather is directly connected
to the jack's jack-detect pin. These special setups will be handled
by the machine-driver, but the machine driver can only request the IRQ
if it is not first requested by the codec driver. Moving the request_irq
to the set_jack callback (which will not get called in this case) avoids
the codec-driver clobbering the IRQ.

Moving the request_irq also removes the need to disable the IRQ immediately
after requesting it, avoiding a small race (this could also have been fixed
by using the new IRQF_NO_AUTOEN flag when requesting the IRQ).

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Acked-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20210819190543.784415-3-hdegoede@redhat.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2021-08-19 23:27:56 +01:00
..
ac97 ALSA: ac97: fix PM reference leak in ac97_bus_remove() 2021-05-25 08:59:08 +02:00
aoa ALSA: aoa: remove unnecessary oom message 2021-06-17 17:31:38 +02:00
arm ALSA: arm: Remove unnecessary variables 2021-06-10 09:51:21 +02:00
atmel
core ASoC: Updates for v5.14 2021-07-01 08:36:12 +02:00
drivers ALSA: serial: Fix assignment in if condition 2021-06-09 17:30:34 +02:00
firewire ALSA: bebob: correct duplicated entries with TerraTec OUI 2021-07-05 19:31:12 +02:00
hda ALSA: hda: Add AlderLake-M PCI ID 2021-05-30 09:33:08 +02:00
i2c ALSA: i2c: tea6330t: Remove redundant initialization of variable err 2021-06-12 09:32:14 +02:00
isa ALSA: isa: Fix error return code in snd_cmi8330_probe() 2021-07-07 13:26:19 +02:00
mips ALSA: n64: check return value after calling platform_get_resource() 2021-06-12 09:31:13 +02:00
oss sound/oss/dmasound: Remove superfluous "break" 2021-05-27 08:24:23 +02:00
parisc ALSA: parisc: Fix assignment in if condition 2021-06-09 17:30:39 +02:00
pci ALSA: intel8x0: Fix breakage at ac97 clock measurement 2021-07-08 12:26:43 +02:00
pcmcia ALSA: pcmcia: Fix assignment in if condition 2021-06-09 17:30:28 +02:00
ppc ALSA: ppc: fix error return code in snd_pmac_probe() 2021-06-16 08:52:29 +02:00
sh
soc ASoC: rt5640: Delay requesting IRQ until the machine-drv calls set_jack 2021-08-19 23:27:56 +01:00
sparc ALSA: sparc: Fix assignment in if condition 2021-06-09 17:30:29 +02:00
spi
synth ALSA: emux: fix spelling mistakes 2021-07-05 19:34:22 +02:00
usb ALSA: usb-audio: Reduce latency at playback start, take#2 2021-07-07 16:45:33 +02:00
virtio
x86 ALSA: x86: fix spelling mistakes 2021-07-05 19:29:28 +02:00
xen
ac97_bus.c
Kconfig
last.c
Makefile
sound_core.c