[alsa-devel] No sound from Headphone Jack over Lenovo Docking Station with T440p Laptop

Bernhard Kirchen schlimmchen at yahoo.de
Thu Feb 20 12:34:44 CET 2014


Hey Raymond!

Sorry for the late reply!
I had trouble following your input as I am not experienced with this. 
"HD-Audio.txt" helped a lot!

To make a 5 hour story short, this is my result:
Using early patching, everything works to my linking:
0x16 0x2121101f # dock headphones
0x19 0x21a11030 # dock mic

Thank you very much for your help!

I guess that building a patch á la ALC269_FIXUP_LENOVO_DOCK is not a big 
deal, but not my business.
If wanted, I can do testing, as soon as I learn how to properly compile 
and install a custom kernel.

I'll post something on 
https://github.com/leoluk/thinkpad-stuff/wiki/Haswell-ThinkPad-problems 
to tell other people how to fix this right away.

More to my story:
I found /sys/class/sound/hwC1D0, which is a Realtek ALC292 device.
The NID (what does it stand for?) of interest for the jack's output is 
indeed 0x16.

When headphones plugged into docking station jack:
$ sudo hda-verb /dev/snd/hwC1D0 0x16 GET_PIN_SENSE 0
nid = 0x16, verb = 0xf09, param = 0x0
value = 0x80000000

When not plugged:
$ sudo hda-verb /dev/snd/hwC1D0 0x16 GET_PIN_SENSE 0
nid = 0x16, verb = 0xf09, param = 0x0
value = 0x0

GET_PIN_SENSE for 0x19 is 0x80000000 when headset with mic is plugged 
into dock.
Pin sense of 0x19 does not change to 0x80000000 when only plugging 3pole 
speaker cable.
Therefore, I assumed that 0x19 is the dock mic input (turned out later 
to be true).

I installed alsa-tools-gui and used hdajackretast to override the pin 
config.
It took a while to find out that not all changes are immediate (early 
patching and restart required).

Using the early patching values from above, the sound is being 
redirected from the internal speakers to the dock jack, when headphones 
are connected.
[When connecting an additional speaker to the left jack on the notebook, 
the sound is output to both dock and notebook jack.]
When connecting a mic to dock, the dock mic shows up as input and is 
used as such.
When only connecting a headset without mic, the internal mic stays 
functional.

Best,
Bernhard

On 02/13/2014 03:15 AM, Raymond Yau wrote:
> 2014-02-13 5:01 GMT+08:00 Bernhard <schlimmchen at yahoo.de 
> <mailto:schlimmchen at yahoo.de>>:
>
>     Raymond Yau <superquad.vortex2 <at> gmail.com <http://gmail.com>>
>     writes:
>     >
>     > Post the output of alsa-info.sh when thinkpad is docked and not
>     docked with
>     > headphone pluggedd and unplugged
>     >
>
>     I created the output you requested (Lenovo ThinkPad T440p in
>     UltraDock, no
>     sound when docked via dock jack but notebook speakers are also mute).
>
>     not docked: http://pastebin.com/MFQT3R9S
>     docked, no headphones: http://pastebin.com/8UN1sHSM
>     docked, headphones plugged in dock: http://pastebin.com/7XauZLZz
>     docked, headphones plugged in notebook: http://pastebin.com/xfL5qkge
>
>     Based on that, can you help us getting sound to work on the dock?
>
>
> the headphone is at node 0x15
>
>         control.16 {
>                 iface CARD
>                 name 'Headphone Jack'
>                 value true
>                 comment {
>                         access read
>                         type BOOLEAN
>                         count 1
>                 }
>         }
>
> you need to use hda_jack_sense_test.py which require python and hda 
> codec parser of hda-analyzer to find out
>
> https://bugzilla.kernel.org/show_bug.cgi?id=66621#c39
>
> pd=1 when plugged and pd=0 when unplugged
>
> or hda-verb GET_PIN_SENSE
>
> https://git.kernel.org/cgit/linux/kernel/git/tiwai/sound.git/plain/Documentation/sound/alsa/HD-Audio.txt
>
> 1) the node of the headphone of the dock headset
>
> node 0x16 , 0x18 and 0x19 which pincap support output
>
> try hdajackretask or early patching to fix the pin default to dock 
> headphone
>
> 2) for the dock headset mic , you need to find by trial and error from 
> the remaining unconnected nodes which pincap support input
>
> node 0x13, 0x19, 0x1b, 0x1d
>
>
> https://git.kernel.org/cgit/linux/kernel/git/tiwai/sound.git/log/sound/pci/hda/patch_realtek.c?qt=grep&q=dock
>
>  0x21a11000  /* dock-mic */
>
> need to set bit 8 if dock headset mic use jack detection of headphone 
> instead of jack detection of its own pin compex
>
>  0x2121103f  /* dock-HP */
>  0x21440100  /* dock SPDIF out */
>
> you need to clear bit 8 if pincap of node 0x1e support DETECT
>
>
>
>
>
>
>



More information about the Alsa-devel mailing list