mirror-linux/sound
Matt DeVillier 6fd9f6e870 ALSA: hda/ca0132: Disable auto-detect on manual output select
Commit 778031e165 ("ALSA: hda/ca0132: Set HP/Speaker
auto-detect default from headphone pin verb") enables HP/Speaker
auto-detect by default when the headphone pin supports presence detect.

With auto-detect enabled, ca0132_select_out() and ca0132_alt_select_out()
choose the output from jack presence instead of the manual HP/Speaker
selection. This means selecting speaker output while headphones are
plugged in updates the control state, but audio still routes to the
headphones.

Treat an explicit manual output selection as a request to leave
auto-detect mode. Clear the HP/Speaker auto-detect switch before applying
the manual selection, and notify userspace so the auto-detect control
state is updated in mixers. Do this for both the normal HP/Speaker
Playback Switch and the alternate Output Select control used by desktop
cards.

This keeps auto-detect enabled by default for devices with jack presence
detection, while preserving the expected behavior that a manual output
choice takes effect immediately.

Fixes: 778031e165 ("ALSA: hda/ca0132: Set HP/Speaker auto-detect default from headphone pin verb")
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Link: https://lore.kernel.org/CAFTm+6AfeXKf=b2frG4xC5yC4jjM9TkD6c8+dOWWFw6BDjDESw@mail.gmail.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2026-05-15 11:19:48 +02:00
..
ac97
aoa ALSA: aoa: onyx: Update IEC958 sample-rate status for PCM playback 2026-04-06 10:41:00 +02:00
arm ASoC: pxa2xx-ac97: fix error handling for reset GPIO descriptor 2026-04-13 18:00:34 +01:00
atmel
core ALSA: core: Serialize deferred fasync state checks 2026-05-06 10:07:36 +02:00
drivers ALSA: pcmtest: Return -EFAULT on pattern read copy failure 2026-05-04 13:26:23 +02:00
firewire ALSA: firewire-tascam: Do not drop unread control events 2026-05-04 17:47:06 +02:00
hda ALSA: hda/ca0132: Disable auto-detect on manual output select 2026-05-15 11:19:48 +02:00
i2c ALSA: i2c: ak4xxx-adda: seed AK5365 cache with reset defaults 2026-04-09 12:01:01 +02:00
isa ALSA: sscape: Add suspend and resume support 2026-04-12 10:00:34 +02:00
mips
oss
parisc
pci ALSA: als4000: Fix capture trigger chip->mode race 2026-04-20 17:59:19 +02:00
pcmcia
ppc
sh
soc ASoC: cs35l56: Fixes for driver cleanup 2026-05-06 21:22:53 +09:00
sparc ALSA: sparc/dbri: add missing fallthrough 2026-05-06 10:09:17 +02:00
spi
synth
usb ALSA: usb-audio: qcom: Check offload mapping failures 2026-05-15 08:51:46 +02:00
virtio ALSA: virtio: drop an extaneous kernel-doc comment 2026-04-17 09:47:54 +02:00
x86
xen
Kconfig
Makefile
ac97_bus.c
last.c
sound_core.c