[alsa-devel] Plugged in headphones ignored
Tanu Kaskinen
tanuk at iki.fi
Sat Jul 27 09:03:39 CEST 2019
On Fri, 2019-07-26 at 14:57 +0200, Paul Menzel wrote:
> Dear Linux folks,
>
>
> On 6/27/19 1:02 PM, Paul Menzel wrote:
>
> > On a Dell OptiPlex 5040 with Linux 5.2-rc6 plugging in a
> > head phone into the front case connector, it is detected
> > just fine and Xfce shows a notification.
> >
> > Then logging out, turning off the monitor connected over
> > DisplayPort at the end of the day, and turning the monitor
> > back on the next morning, logging in, the state is
> > forgotten. I need to unplug the head phone and plug it
> > back in.
>
> This is still happening in Linux 5.3-rc1. Additionally, the
> problem also shows up, when starting the (powered-off)
> system with the headphones plugged in. No sound is played.
> After unplugging the headphones, the internal speaker
> outputs the sound. Plugging the headphones back in, sound
> comes over the headphones.
>
> Here is the difference in of the states.
>
> ```
> > diff -u alsa-info-1.txt alsa-info-2.txt
> --- alsa-info-1.txt 2019-07-26 14:44:06.156811664 +0200
> +++ alsa-info-2.txt 2019-07-26 14:44:19.901891301 +0200
> @@ -3,7 +3,7 @@
> !!ALSA Information Script v 0.4.64
> !!################################
>
> -!!Script ran on: Fri Jul 26 12:44:05 UTC 2019
> +!!Script ran on: Fri Jul 26 12:44:19 UTC 2019
>
>
> !!Linux Distribution
> @@ -208,7 +208,7 @@
> Control: name="Speaker Playback Volume", index=0, device=0
> ControlAmp: chs=3, dir=Out, idx=0, ofs=0
> Amp-Out caps: ofs=0x57, nsteps=0x57, stepsize=0x02, mute=0
> - Amp-Out vals: [0x57 0x57]
> + Amp-Out vals: [0x00 0x00]
> Converter: stream=1, channel=0
> PCM:
> rates [0x60]: 44100 48000
> @@ -221,7 +221,7 @@
> ControlAmp: chs=3, dir=Out, idx=0, ofs=0
> Device: name="ALC3234 Analog", type="Audio", device=0
> Amp-Out caps: ofs=0x57, nsteps=0x57, stepsize=0x02, mute=0
> - Amp-Out vals: [0x00 0x00]
> + Amp-Out vals: [0x57 0x57]
> Converter: stream=1, channel=0
> PCM:
> rates [0x60]: 44100 48000
> @@ -326,7 +326,7 @@
> Control: name="Speaker Playback Switch", index=0, device=0
> ControlAmp: chs=3, dir=Out, idx=0, ofs=0
> Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
> - Amp-Out vals: [0x00 0x00]
> + Amp-Out vals: [0x80 0x80]
> Pincap 0x00010014: OUT EAPD Detect
> EAPD 0x2: EAPD
> Pin Default 0x90170110: [Fixed] Speaker at Int N/A
> @@ -444,7 +444,7 @@
> Control: name="Headphone Playback Switch", index=0, device=0
> ControlAmp: chs=3, dir=Out, idx=0, ofs=0
> Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
> - Amp-Out vals: [0x80 0x80]
> + Amp-Out vals: [0x00 0x00]
> Pincap 0x0001001c: OUT HP EAPD Detect
> EAPD 0x2: EAPD
> Pin Default 0x0221101f: [Jack] HP Out at Ext Front
> @@ -587,8 +587,8 @@
> Capabilities: pswitch
> Playback channels: Front Left - Front Right
> Mono:
> - Front Left: Playback [off]
> - Front Right: Playback [off]
> + Front Left: Playback [on]
> + Front Right: Playback [on]
> Simple mixer control 'Headphone Mic',0
> Capabilities: pvolume pswitch
> Playback channels: Front Left - Front Right
> @@ -608,15 +608,15 @@
> Playback channels: Front Left - Front Right
> Limits: Playback 0 - 87
> Mono:
> - Front Left: Playback 0 [0%] [-65.25dB]
> - Front Right: Playback 0 [0%] [-65.25dB]
> + Front Left: Playback 87 [100%] [0.00dB]
> + Front Right: Playback 87 [100%] [0.00dB]
> Simple mixer control 'Speaker',0
> Capabilities: pvolume pswitch
> Playback channels: Front Left - Front Right
> Limits: Playback 0 - 87
> Mono:
> - Front Left: Playback 87 [100%] [0.00dB] [on]
> - Front Right: Playback 87 [100%] [0.00dB] [on]
> + Front Left: Playback 0 [0%] [-65.25dB] [off]
> + Front Right: Playback 0 [0%] [-65.25dB] [off]
> Simple mixer control 'PCM',0
> Capabilities: pvolume
> Playback channels: Front Left - Front Right
> @@ -698,8 +698,8 @@
> control.1 {
> iface MIXER
> name 'Headphone+LO Playback Volume'
> - value.0 0
> - value.1 0
> + value.0 87
> + value.1 87
> comment {
> access 'read write'
> type INTEGER
> @@ -707,8 +707,8 @@
> range '0 - 87'
> dbmin -6525
> dbmax 0
> - dbvalue.0 -6525
> - dbvalue.1 -6525
> + dbvalue.0 0
> + dbvalue.1 0
> }
> }
> control.2 {
> @@ -725,8 +725,8 @@
> control.3 {
> iface MIXER
> name 'Headphone Playback Switch'
> - value.0 false
> - value.1 false
> + value.0 true
> + value.1 true
> comment {
> access 'read write'
> type BOOLEAN
> @@ -736,8 +736,8 @@
> control.4 {
> iface MIXER
> name 'Speaker Playback Volume'
> - value.0 87
> - value.1 87
> + value.0 0
> + value.1 0
> comment {
> access 'read write'
> type INTEGER
> @@ -745,15 +745,15 @@
> range '0 - 87'
> dbmin -6525
> dbmax 0
> - dbvalue.0 0
> - dbvalue.1 0
> + dbvalue.0 -6525
> + dbvalue.1 -6525
> }
> }
> control.5 {
> iface MIXER
> name 'Speaker Playback Switch'
> - value.0 true
> - value.1 true
> + value.0 false
> + value.1 false
> comment {
> access 'read write'
> type BOOLEAN
> ```
>
> Is
>
> ```
> - Front Left: Playback [off]
> - Front Right: Playback [off]
> + Front Left: Playback [on]
> + Front Right: Playback [on]
> ```
>
> the cause?
>
> > Please find the output alsa-config.sh for the non-working
> > (1) and replugged (2) situations attached.
> >
> > Is that a Linux kernel problem, or a user space issue?
It looks more like a user space issue. If the kernel reports the
headphone status as unplugged when they're not, then that's a kernel
issue, but I didn't spot any jack status differences in the diff you
posted. You could report[1] a bug on PulseAudio (if you're using it),
and include a "pactl lsit" diff between working and not-working state.
[1] https://gitlab.freedesktop.org/pulseaudio/pulseaudio/issues/new
--
Tanu
https://www.patreon.com/tanuk
https://liberapay.com/tanuk
More information about the Alsa-devel
mailing list