Created attachment 847229 [details] debug information Description of problem: jack sense doesn't work correctly on Lenovo Thinkpad T510 resulting in speakers or headphone output being zeroed and muted for whole system run time Version-Release number of selected component (if applicable): kernel-3.12.6-300.fc20.x86_64 alsa-firmware-1.0.27-2.fc20.noarch alsa-plugins-pulseaudio-1.0.27-2.fc20.x86_64 alsa-lib-debuginfo-1.0.27.2-2.fc20.x86_64 alsa-tools-firmware-1.0.27-3.fc20.x86_64 alsa-lib-1.0.27.2-2.fc20.x86_64 kernel-3.11.10-301.fc20.x86_64 kernel-3.12.5-302.fc20.x86_64 alsa-lib-1.0.27.2-2.fc20.i686 alsa-utils-1.0.27.2-3.fc20.x86_64 How reproducible: always Steps to Reproduce: 1. download to a single directory these files: hda_{codec,mixer,proc}.py files from alsa git [1] and the hda-jack-sense-test [2] [1] http://git.alsa-project.org/?p=alsa.git;a=tree;f=hda-analyzer;hb=HEAD [2] http://mailman.alsa-project.org/pipermail/alsa-devel/2011-May/039809.html 2. cd to the directory, chmod +x hda-jack-sense-test 3. run ./hda-jack-sense-test docked and undocked 4. run "./hda-jack-sense-test -a" for all combos of port connections and laptop docked Actual results: 3. only these pins are shown in spite of dock mic+hp out jack (in)availability: Pin 0x19 (Black HP Out): present = No Pin 0x1b (Black Mic): present = No 4. [root@cihla alsa-jack]# ./hda-jack-sense-test -a # nothing connected (laptop docked) Pin 0x19 (Black HP Out): present = No Pin 0x1a (Not connected): present = No Pin 0x1b (Black Mic): present = No Pin 0x1c (Not connected): present = No Pin 0x1d (Not connected): present = No Pin 0x1e (Not connected): present = No Pin 0x1f (Internal Speaker): present = No Pin 0x20 (Not connected): present = No Pin 0x22 (Not connected): present = No Pin 0x23 (Internal Mic): present = No [root@cihla alsa-jack]# ./hda-jack-sense-test -a # HP in green jack in docking station Pin 0x19 (Black HP Out): present = No Pin 0x1a (Not connected): present = No Pin 0x1b (Black Mic): present = No Pin 0x1c (Not connected): present = Yes Pin 0x1d (Not connected): present = No Pin 0x1e (Not connected): present = No Pin 0x1f (Internal Speaker): present = No Pin 0x20 (Not connected): present = No Pin 0x22 (Not connected): present = No Pin 0x23 (Internal Mic): present = No [root@cihla alsa-jack]# ./hda-jack-sense-test -a # HP in black combo jack in laptop (laptop in dock) Pin 0x19 (Black HP Out): present = Yes Pin 0x1a (Not connected): present = No Pin 0x1b (Black Mic): present = No Pin 0x1c (Not connected): present = No Pin 0x1d (Not connected): present = No Pin 0x1e (Not connected): present = No Pin 0x1f (Internal Speaker): present = No Pin 0x20 (Not connected): present = No Pin 0x22 (Not connected): present = No Pin 0x23 (Internal Mic): present = No [root@cihla alsa-jack]# ./hda-jack-sense-test -a # HP+mic combo in black combo jack in laptop (laptop in dock) Pin 0x19 (Black HP Out): present = Yes Pin 0x1a (Not connected): present = No Pin 0x1b (Black Mic): present = Yes Pin 0x1c (Not connected): present = No Pin 0x1d (Not connected): present = No Pin 0x1e (Not connected): present = No Pin 0x1f (Internal Speaker): present = No Pin 0x20 (Not connected): present = No Pin 0x22 (Not connected): present = No Pin 0x23 (Internal Mic): present = No [root@cihla alsa-jack]# ./hda-jack-sense-test -a # HP+mic combo in black combo jack in laptop (laptop undocked) Pin 0x19 (Black HP Out): present = Yes Pin 0x1a (Not connected): present = No Pin 0x1b (Black Mic): present = Yes Pin 0x1c (Not connected): present = No Pin 0x1d (Not connected): present = No Pin 0x1e (Not connected): present = No Pin 0x1f (Internal Speaker): present = No Pin 0x20 (Not connected): present = No Pin 0x22 (Not connected): present = No Pin 0x23 (Internal Mic): present = No [root@cihla alsa-jack]# ./hda-jack-sense-test -a # HP in black combo jack in laptop (laptop undocked) Pin 0x19 (Black HP Out): present = Yes Pin 0x1a (Not connected): present = No Pin 0x1b (Black Mic): present = No Pin 0x1c (Not connected): present = No Pin 0x1d (Not connected): present = No Pin 0x1e (Not connected): present = No Pin 0x1f (Internal Speaker): present = No Pin 0x20 (Not connected): present = No Pin 0x22 (Not connected): present = No Pin 0x23 (Internal Mic): present = No [root@cihla alsa-jack]# ./hda-jack-sense-test -a # nothing connected (just internal mic+speakers; laptop undocked) Pin 0x19 (Black HP Out): present = No Pin 0x1a (Not connected): present = No Pin 0x1b (Black Mic): present = No Pin 0x1c (Not connected): present = No Pin 0x1d (Not connected): present = No Pin 0x1e (Not connected): present = No Pin 0x1f (Internal Speaker): present = No Pin 0x20 (Not connected): present = No Pin 0x22 (Not connected): present = No Pin 0x23 (Internal Mic): present = No Expected results: * dock station jacks are recognized as such (availability, color) * microphone of hp+mic combo sensing works correctly (the input gets switched correctly though so some hw switching probably is at work) Additional info: * debug info is in the attachment * the problem may be the root cause of the bug 1006791 in RHEL 6
Addendum: 1) plugging/unplugging headphones in integrated laptop jack works fine - output of speakers/headphones gets muted/unmuted and unmuted/muted respectively 2) plugging/unplugging headphones to/from dock jack has no effect in mixer 3) docking station jacks don't show up in './hda-jack-sense-test' output but in /proc/asound/card0/codec#0, they are described just fine: # grep -A 12 "Node 0x1[ac]" /proc/asound/card0/codec#0 Node 0x1a [Pin Complex] wcaps 0x400481: Stereo Control: name="Dock Mic Jack", index=0, device=0 Pincap 0x00001324: IN Detect Vref caps: HIZ 50 80 Pin Default 0x61a190f0: [N/A] Mic at Sep Rear Conn = 1/8, Color = Pink DefAssociation = 0xf, Sequence = 0x0 Pin-ctls: 0x24: IN VREF_80 Unsolicited: tag=03, enabled=1 Power states: D0 D1 D2 D3 D3cold Power: setting=D0, actual=D0 Node 0x1b [Pin Complex] wcaps 0x400581: Stereo Control: name="Mic Jack", index=0, device=0 -- Node 0x1c [Pin Complex] wcaps 0x400581: Stereo Control: name="Dock Headphone Jack", index=0, device=0 Pincap 0x00000014: OUT Detect Pin Default 0x612140f0: [N/A] HP Out at Sep Rear Conn = 1/8, Color = Green DefAssociation = 0xf, Sequence = 0x0 Pin-ctls: 0x40: OUT Unsolicited: tag=01, enabled=1 Power states: D0 D1 D2 D3 D3cold Power: setting=D0, actual=D0 Connection: 2 0x10 0x11* Node 0x1d [Pin Complex] wcaps 0x400581: Stereo
*********** MASS BUG UPDATE ************** We apologize for the inconvenience. There is a large number of bugs to go through and several of them have gone stale. Due to this, we are doing a mass bug update across all of the Fedora 20 kernel bugs. Fedora 20 has now been rebased to 3.13.4-200.fc20. Please test this kernel update and let us know if you issue has been resolved or if it is still present with the newer kernel. If you experience different issues, please open a new bug report for those.
In the 3.13 kernel, the Speakers/Headphones controls are missing so even though the underlying issue (hot-plugged physical jacks on dock not recognized as such) persists, it's user-visible part is gone. Closing as WORKSFORME because when the jack sensing is reenabled again, this bug will regres.