]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
ALSA: hda - Fix headphone pin config for ASUS G751
authorTakashi Iwai <tiwai@suse.de>
Tue, 9 Oct 2018 12:20:17 +0000 (14:20 +0200)
committerTakashi Iwai <tiwai@suse.de>
Tue, 9 Oct 2018 14:22:21 +0000 (16:22 +0200)
BIOS on ASUS G751 doesn't seem to map the headphone pin (NID 0x16)
correctly.  Add a quirk to address it, as well as chaining to the
previous fix for the microphone.

Reported-by: HÃ¥vard <hovardslill@gmail.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/patch_realtek.c

index 3be7d764952594b27c073196a17e27c095fff947..6262d7b070996050965cd44a61bbef41a5642b8f 100644 (file)
@@ -7738,6 +7738,7 @@ enum {
        ALC662_FIXUP_ASUS_Nx50,
        ALC668_FIXUP_ASUS_Nx51_HEADSET_MODE,
        ALC668_FIXUP_ASUS_Nx51,
+       ALC668_FIXUP_MIC_COEF,
        ALC668_FIXUP_ASUS_G751,
        ALC891_FIXUP_HEADSET_MODE,
        ALC891_FIXUP_DELL_MIC_NO_PRESENCE,
@@ -8008,7 +8009,7 @@ static const struct hda_fixup alc662_fixups[] = {
                .chained = true,
                .chain_id = ALC668_FIXUP_ASUS_Nx51_HEADSET_MODE,
        },
-       [ALC668_FIXUP_ASUS_G751] = {
+       [ALC668_FIXUP_MIC_COEF] = {
                .type = HDA_FIXUP_VERBS,
                .v.verbs = (const struct hda_verb[]) {
                        { 0x20, AC_VERB_SET_COEF_INDEX, 0xc3 },
@@ -8016,6 +8017,15 @@ static const struct hda_fixup alc662_fixups[] = {
                        {}
                },
        },
+       [ALC668_FIXUP_ASUS_G751] = {
+               .type = HDA_FIXUP_PINS,
+               .v.pins = (const struct hda_pintbl[]) {
+                       { 0x16, 0x0421101f }, /* HP */
+                       {}
+               },
+               .chained = true,
+               .chain_id = ALC668_FIXUP_MIC_COEF
+       },
        [ALC891_FIXUP_HEADSET_MODE] = {
                .type = HDA_FIXUP_FUNC,
                .v.func = alc_fixup_headset_mode,