From 22cd65efc81cf9c4a20d6ed153b38fdcaf6af9e8 Mon Sep 17 00:00:00 2001 From: Hui Wang Date: Thu, 10 Dec 2020 15:36:40 +0800 Subject: alsa-mixer: disable the Auto-Mute once the system has speaker With the Auto-Mute enabled, if the headphone jack is plugged, the alsa hda driver will mute the speaker and set pinctl of the speaker to Hi-Z state, after this happens, even the pulseaudio unmute the speaker, the speaker still couldn't output sound because the pinctl is in Hi-Z state. We found this issue on a Dell machine which has multi-function audio jack, after the headphone is plugged in, the speaker's availability is still unknown, users could select speaker from gnome-sound-setting, but even the speaker is selected to be the active device, it couldn't output sound. The Auto-Mute is not useful if the pulseaudio is running since pa could mute/unmute devices according to active port change, the ucm for sof+hda already disabled the Auto-Mute, let us disable it for hda audio if the machine has the internal speaker. Signed-off-by: Hui Wang --- src/modules/alsa/mixer/paths/analog-output-speaker.conf | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/modules/alsa/mixer/paths/analog-output-speaker.conf b/src/modules/alsa/mixer/paths/analog-output-speaker.conf index 1610b9a05..91a4bc163 100644 --- a/src/modules/alsa/mixer/paths/analog-output-speaker.conf +++ b/src/modules/alsa/mixer/paths/analog-output-speaker.conf @@ -88,6 +88,13 @@ override-map.2 = all-left,all-right switch = off volume = off +; Make sure the internal speakers are not auto-muted once the system has speakers +[Element Auto-Mute Mode] +enumeration = select + +[Option Auto-Mute Mode:Disabled] +name = analog-output-speaker + ; This profile path is intended to control the speaker, let's mute headphones ; else there will be a spike when plugging in headphones [Element Headphone] -- cgit v1.2.1