]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
ALSA: hda - Fix Dock Headphone on Thinkpad X250 seen as a Line Out
authorDavid Henningsson <david.henningsson@canonical.com>
Wed, 24 Jun 2015 08:46:33 +0000 (10:46 +0200)
committerLuis Henriques <luis.henriques@canonical.com>
Wed, 15 Jul 2015 09:00:55 +0000 (10:00 +0100)
commit ec56af67a10a0d82b79027878a81fce08d002d50 upstream.

Thinkpad X250, when attached to a dock, has two headphone outs but
no line out. Make sure we don't try to turn this into one headphone
and one line out (since that disables the headphone amp on the dock).

Alsa-info at http://www.alsa-project.org/db/?f=36f8764e1d782397928feec715d0ef90dfddd4c1

Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
[ luis: backported to 3.16: adjusted context ]
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
sound/pci/hda/patch_realtek.c

index 9d2aedb84797dc170f1124c4c332663d5a526237..1115e8aed237aa65da2019d23d2b1d287b5a2bd9 100644 (file)
@@ -4314,6 +4314,7 @@ enum {
        ALC255_FIXUP_HEADSET_MODE_NO_HP_MIC,
        ALC293_FIXUP_DELL1_MIC_NO_PRESENCE,
        ALC292_FIXUP_TPT440_DOCK,
+       ALC292_FIXUP_TPT440_DOCK2,
 };
 
 static const struct hda_fixup alc269_fixups[] = {
@@ -4738,6 +4739,12 @@ static const struct hda_fixup alc269_fixups[] = {
                .chain_id = ALC269_FIXUP_HEADSET_MODE
        },
        [ALC292_FIXUP_TPT440_DOCK] = {
+               .type = HDA_FIXUP_FUNC,
+               .v.func = alc269_fixup_pincfg_no_hp_to_lineout,
+               .chained = true,
+               .chain_id = ALC292_FIXUP_TPT440_DOCK2
+       },
+       [ALC292_FIXUP_TPT440_DOCK2] = {
                .type = HDA_FIXUP_PINS,
                .v.pins = (const struct hda_pintbl[]) {
                        { 0x16, 0x21211010 }, /* dock headphone */