pipewire/spa/plugins/alsa
Wim Taymans c7ca024607 alsa: ucm: Fix spurious mixer path removal on initial profile set
The code that removes the mixer path if probing fails can be called in
the path that sets a non-off device profile on hotplug *before*
card->active_profile is updated, which results in spuriously removing
the mixer path. By this point, context->ucm->active_verb would be set
to the same as the profile name, so we can use that instead to avoid
the issue.

On Apple Silicon machines with the UCM profiles in the Asahi Linux repo,
this manifests as the headphones jack having hardware volume controls
*only* if PA is started with headphones connected and until they are
disconnected. Hotplugs end up triggering the bad codepath, and it falls
back to software volume (which is particularly a problem when the
hardware volume happens to be very low or 0 at that point).

Fixes: a9cc1373e2a7 ("alsa: ucm - update the mixer path also after volume probe")
Signed-off-by: Hector Martin <marcan@marcan.st>
2023-03-20 18:35:15 +01:00
..
acp alsa: ucm: Fix spurious mixer path removal on initial profile set 2023-03-20 18:35:15 +01:00
mixer alsa-profiles: rename mappings for Xonar SE 2023-03-20 17:56:33 +01:00
90-pipewire-alsa.rules Add support for GSX 1000 v2 2023-01-13 12:19:30 +00:00
acp-tool.c treewide: use SPDX tags to specify copyright information 2023-02-16 10:54:48 +00:00
alsa-acp-device.c treewide: use SPDX tags to specify copyright information 2023-02-16 10:54:48 +00:00
alsa-compress-offload-sink.c spa: alsa: fix spa_log_trace_fp() args 2023-02-25 20:17:51 +01:00
alsa-pcm-device.c treewide: use SPDX tags to specify copyright information 2023-02-16 10:54:48 +00:00
alsa-pcm-sink.c treewide: use SPDX tags to specify copyright information 2023-02-16 10:54:48 +00:00
alsa-pcm-source.c alsa: fix uninitialized value 2023-03-16 13:02:54 +01:00
alsa-pcm.c alsa: improve target delay in ALSA 2023-03-03 14:59:38 +01:00
alsa-pcm.h alsa: improve target delay in ALSA 2023-03-03 14:59:38 +01:00
alsa-seq-bridge.c treewide: use SPDX tags to specify copyright information 2023-02-16 10:54:48 +00:00
alsa-seq.c treewide: use SPDX tags to specify copyright information 2023-02-16 10:54:48 +00:00
alsa-seq.h treewide: use SPDX tags to specify copyright information 2023-02-16 10:54:48 +00:00
alsa-udev.c treewide: use SPDX tags to specify copyright information 2023-02-16 10:54:48 +00:00
alsa.c treewide: use SPDX tags to specify copyright information 2023-02-16 10:54:48 +00:00
alsa.h treewide: use SPDX tags to specify copyright information 2023-02-16 10:54:48 +00:00
compress-offload-api.c alsa-compress-offload-sink: major sink rework 2023-02-24 14:15:13 +01:00
compress-offload-api.h alsa-compress-offload-sink: major sink rework 2023-02-24 14:15:13 +01:00
meson.build alsa-compress-offload-sink: major sink rework 2023-02-24 14:15:13 +01:00
test-hw-params.c treewide: use SPDX tags to specify copyright information 2023-02-16 10:54:48 +00:00
test-timer.c treewide: use SPDX tags to specify copyright information 2023-02-16 10:54:48 +00:00