From: Joschi Brauchle <joschi.brauchle@tum.de>
To: alsa-devel@alsa-project.org, Takashi Iwai <tiwai@suse.de>
Subject: Re: No sound on Thinkpad T440s in Docking Station
Date: Tue, 06 May 2014 17:20:29 +0200 [thread overview]
Message-ID: <5368FDBD.2030400@tum.de> (raw)
In-Reply-To: <5368E878.90704@tum.de>
[-- Attachment #1.1: Type: text/plain, Size: 8878 bytes --]
Sorry for top posting earlier, see latest response at the bottom.
On 05/06/2014 03:49 PM, Joschi Brauchle wrote:
> Hello Takashi,
>
> thanks for the patch. I have tested it and found the following strange
> behavior: I only get sound from the dock headset port if I also plug in
> a headset to the laptop headset connector.
>
> Thus I reverted to my original kernel module + firmware patch and did
> some further testing. The results is as follows:
>
> a) Using:
> ------------------
> [codec]
> 0x10ec0292 0x17aa220c 0
>
> [pincfg]
> 0x16 0x2121101f
> 0x19 0x21a10030
> ------------------
> I get LOW VOLUME sound from the dock headphone ONLY when also laptop
> headphone connector is plugged in.
>
> b) Using:
> ------------------
> [codec]
> 0x10ec0292 0x17aa220c 0
>
> [pincfg]
> 0x16 0x2121101f
> 0x19 0x21a10030
> 0x1b 0x2121101f
> ------------------
> I get HIGH VOLUME sound from the dock headphones when no laptop
> headphones are connected, but LOW VOLUME sound when both are plugged in.
>
> The output of
> # hda-verb /dev/snd/hwC1D0 0x1b GET_PIN_SENSE 0
> nid = 0x1b, verb = 0xf09, param = 0x0
> value = 0x0
>
> stays the same for any headphone configuration (only dock, only laptop,
> both).
>
> So I do not quite understand whats happening...
>
> Joschi
>
> On 05/06/2014 11:46 AM, Takashi Iwai wrote:
>> At Fri, 02 May 2014 15:59:55 +0200,
>> Joschi Brauchle wrote:
>>>
>>>
>>>
>>> On 05/02/2014 11:27 AM, Joschi Brauchle wrote:
>>>> On 05/02/2014 11:02 AM, Joschi Brauchle wrote:
>>>>>
>>>>>
>>>>> On 05/02/2014 10:21 AM, Takashi Iwai wrote:
>>>>>> At Fri, 02 May 2014 10:16:10 +0200,
>>>>>> Joschi Brauchle wrote:
>>>>>>>
>>>>>>> On 05/02/2014 09:31 AM, Takashi Iwai wrote:
>>>>>>>> At Wed, 30 Apr 2014 19:05:24 +0200,
>>>>>>>> Joschi Brauchle wrote:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On 04/30/2014 06:43 PM, Takashi Iwai wrote:
>>>>>>>>>> At Wed, 30 Apr 2014 10:56:48 +0200,
>>>>>>>>>> Joschi Brauchle wrote:
>>>>>>>>>>>
>>>>>>>>>>> Dear all,
>>>>>>>>>>>
>>>>>>>>>>> using openSUSE 13.1 on an Thinkpad T440s, I am not getting sound
>>>>>>>>>>> once
>>>>>>>>>>> the laptop is docked to its docking station.
>>>>>>>>>>>
>>>>>>>>>>> I suspect an additional SND_PCI_QUIRK is needed for this model.
>>>>>>>>>>> "pactl list" returns
>>>>>>>>>>> ----------------
>>>>>>>>>>> alsa.mixer_name = "Realtek ALC292"
>>>>>>>>>>> alsa.components = "HDA:10ec0292,17aa220c,00100001"
>>>>>>>>>>> ----------------
>>>>>>>>>>> for the analog audio output sink in docked state.
>>>>>>>>>>>
>>>>>>>>>>> Hence I assume a new line *similar* to this
>>>>>>>>>>> ----------------
>>>>>>>>>>> SND_PCI_QUIRK(0x17aa, 0x220c, "Thinkpad T440s",
>>>>>>>>>>> ALC269_FIXUP_LENOVO_DOCK),
>>>>>>>>>>> ----------------
>>>>>>>>>>> is needed?
>>>>>>>>>>> What about the ALC292 instead of 269 Realtek chip...?
>>>>>>>>>>
>>>>>>>>>> It's a compatible chip, so the codec name doesn't matter.
>>>>>>>>>> You can try it with model=lenovo-dock option with the recent
>>>>>>>>>> kernels.
>>>>>>>>>> For Haswell, it's safer to pass twice
>>>>>>>>>> (model=lenovo-dock,lenovo-dock).
>>>>>>>>>>
>>>>>>>>>> Let us know if this works for you.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Takashi
>>>>>>>>>>
>>>>>>>>> Hi Takashi,
>>>>>>>>>
>>>>>>>>> so i have:
>>>>>>>>> ------------------ /etc/modprobe.d/50-sound.conf
>>>>>>>>> -------------------
>>>>>>>>>
>>>>>>>>> options snd-hda-intel model=lenovo-dock,lenovo-dock
>>>>>>>>> options snd slots=snd-hda-intel,snd-hda-intel
>>>>>>>>> # 3hqH.vsazS+ZIdb9:Intel Corporation
>>>>>>>>> alias snd-card-0 snd-hda-intel
>>>>>>>>> # u1Nb.8dI5aUgInHB:Intel Corporation
>>>>>>>>> alias snd-card-1 snd-hda-intel
>>>>>>>>> ------------------
>>>>>>>>> and rebooted, but still get no sound from the headphone jack on
>>>>>>>>> the
>>>>>>>>> dock, although the built-in speakers immediately mute when
>>>>>>>>> plugging in
>>>>>>>>> headphones.
>>>>>>>>
>>>>>>>> Give alsa-info.sh output with that state for further checking.
>>>>>>>>
>>>>>>>>
>>>>>>>> Takashi
>>>>>>>>
>>>>>>>
>>>>>>> Please find alsa-info attached while docking and with
>>>>>>> "model=lenovo-dock,lenovo-dock" option.
>>>>>>
>>>>>> Did you take alsa-info.sh output while you're plugging to the dock
>>>>>> headphone jack? With the setup, it's NID 0x1b, and "Dock Headphone
>>>>>> Jack" control should be "true" when properly detected.
>>>>>>
>>>>>> Maybe you'd be better to figure out which dock pin corresponds to
>>>>>> which at first. hda-jack-retask should be your help.
>>>>>>
>>>>>>
>>>>>> Takashi
>>>>>>
>>>>> Hi,
>>>>>
>>>>> yes, alsa-info.sh was created while the laptop was docked and
>>>>> headphones
>>>>> plugged in at the docking station headphone jack.
>>>>>
>>>>> I installed hda-jack-retask and played with it a little bit, but I'm
>>>>> rather lost...
>>>>>
>>>>> What exactly whould I try to do with it?
>>>>>
>>>>> Thanks, Joschi
>>>>>
>>>>
>>>> So if I override pin 0x16 with anything (i.e. type headphones) I do get
>>>> sound from the speakers connected to the docking station headphone
>>>> jack!
>>>>
>>>> Joschi
>>>>
>>>
>>> Actually, someone else has already found the correct values for the
>>> T440p.
>>> https://github.com/leoluk/thinkpad-stuff/wiki/Haswell-ThinkPad-problems#linux-docking-station-audio-compatibility
>>>
>>>
>>> I have modified the values to fit the T440s:
>>> File: /lib/firmware/hda-jack-retask.fw
>>> --------------------------------------
>>> [codec]
>>> 0x10ec0292 0x17aa220c 0
>>>
>>> [pincfg]
>>> 0x16 0x2121101f
>>> 0x19 0x21a11030
>>> --------------------------------------
>>> I tested the settings and can confirm that docking headphone + mic works
>>> correctly, but I am not sure what these values do/mean exactly.
>>>
>>> Possibly they need to be corrected...
>>
>> The values look OK. Could you try the kernel patch so that it works
>> without the firmware patching?
>>
>>
>> thanks,
>>
>> Takashi
>>
>> ---
>> diff --git a/sound/pci/hda/patch_realtek.c
>> b/sound/pci/hda/patch_realtek.c
>> index b60de0dc40d3..4dab65c0da08 100644
>> --- a/sound/pci/hda/patch_realtek.c
>> +++ b/sound/pci/hda/patch_realtek.c
>> @@ -4236,6 +4236,7 @@ enum {
>> ALC255_FIXUP_HEADSET_MODE,
>> ALC255_FIXUP_HEADSET_MODE_NO_HP_MIC,
>> ALC293_FIXUP_DELL1_MIC_NO_PRESENCE,
>> + ALC292_FIXUP_TPT440_DOCK,
>> };
>>
>> static const struct hda_fixup alc269_fixups[] = {
>> @@ -4639,6 +4640,16 @@ static const struct hda_fixup alc269_fixups[] = {
>> .chained = true,
>> .chain_id = ALC269_FIXUP_HEADSET_MODE
>> },
>> + [ALC292_FIXUP_TPT440_DOCK] = {
>> + .type = HDA_FIXUP_PINS,
>> + .v.pins = (const struct hda_pintbl[]) {
>> + { 0x16, 0x2121101f }, /* dock headphone */
>> + { 0x19, 0x21a11030 }, /* dock mic */
>> + { }
>> + },
>> + .chained = true,
>> + .chain_id = ALC269_FIXUP_LIMIT_INT_MIC_BOOST
>> + },
>> };
>>
>> static const struct snd_pci_quirk alc269_fixup_tbl[] = {
>> @@ -4803,7 +4814,7 @@ static const struct snd_pci_quirk
>> alc269_fixup_tbl[] = {
>> SND_PCI_QUIRK(0x17aa, 0x21fb, "Thinkpad T430s",
>> ALC269_FIXUP_LENOVO_DOCK),
>> SND_PCI_QUIRK(0x17aa, 0x2203, "Thinkpad X230 Tablet",
>> ALC269_FIXUP_LENOVO_DOCK),
>> SND_PCI_QUIRK(0x17aa, 0x2208, "Thinkpad T431s",
>> ALC269_FIXUP_LENOVO_DOCK),
>> - SND_PCI_QUIRK(0x17aa, 0x220c, "Thinkpad",
>> ALC269_FIXUP_LIMIT_INT_MIC_BOOST),
>> + SND_PCI_QUIRK(0x17aa, 0x220c, "Thinkpad T440s",
>> ALC292_FIXUP_TPT440_DOCK),
>> SND_PCI_QUIRK(0x17aa, 0x2212, "Thinkpad",
>> ALC269_FIXUP_LIMIT_INT_MIC_BOOST),
>> SND_PCI_QUIRK(0x17aa, 0x2214, "Thinkpad",
>> ALC269_FIXUP_LIMIT_INT_MIC_BOOST),
>> SND_PCI_QUIRK(0x17aa, 0x2215, "Thinkpad",
>> ALC269_FIXUP_LIMIT_INT_MIC_BOOST),
>> @@ -4881,6 +4892,7 @@ static const struct hda_model_fixup
>> alc269_fixup_models[] = {
>> {.id = ALC269_FIXUP_DELL2_MIC_NO_PRESENCE, .name =
>> "dell-headset-dock"},
>> {.id = ALC283_FIXUP_CHROME_BOOK, .name = "alc283-dac-wcaps"},
>> {.id = ALC283_FIXUP_SENSE_COMBO_JACK, .name =
>> "alc283-sense-combo"},
>> + {.id = ALC292_FIXUP_TPT440_DOCK, .name = "tpt440-dock"},
>> {}
>> };
>>
>>
Alright, I think I found the correct settings:
[codec]
0x10ec0292 0x17aa220c 0
[pincfg]
0x16 0x21211010
0x19 0x21a11010
If
a) no headphones plugged in anywhere, laptop speakers work
b) headphones only plugged in dock and not at laptop, dock headphones
work, laptop speakers silent
c) headphones plugged in laptop (and/or dock), only laptop headphones
work, laptop speakers and dock headphone silent
If this is the intended behavior, these values work.
Joschi
[-- Attachment #1.2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 4739 bytes --]
[-- Attachment #2: Type: text/plain, Size: 0 bytes --]
next prev parent reply other threads:[~2014-05-06 15:20 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-04-30 8:56 No sound on Thinkpad T440s in Docking Station Joschi Brauchle
2014-04-30 16:43 ` Takashi Iwai
2014-04-30 17:05 ` Joschi Brauchle
2014-05-02 7:31 ` Takashi Iwai
2014-05-02 8:16 ` Joschi Brauchle
2014-05-02 8:21 ` Takashi Iwai
2014-05-02 9:02 ` Joschi Brauchle
2014-05-02 9:27 ` Joschi Brauchle
2014-05-02 13:59 ` Joschi Brauchle
2014-05-06 9:46 ` Takashi Iwai
2014-05-06 13:49 ` Joschi Brauchle
2014-05-06 15:20 ` Joschi Brauchle [this message]
2014-05-06 15:41 ` Takashi Iwai
2014-05-07 9:28 ` Joschi Brauchle
2014-05-07 9:41 ` Takashi Iwai
2014-05-02 16:09 ` Takashi Iwai
[not found] <32716219.3.1403810435694.JavaMail.jminter@jminter>
2014-06-26 19:23 ` Jim Minter
2014-06-27 10:16 ` Takashi Iwai
-- strict thread matches above, loose matches on Subject: below --
2014-04-29 15:22 Joschi Brauchle
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5368FDBD.2030400@tum.de \
--to=joschi.brauchle@tum.de \
--cc=alsa-devel@alsa-project.org \
--cc=tiwai@suse.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox