On Mon, 08 Oct 2018 18:07:17 +0200, Håvard wrote: > > Hi! > > On ASUS ROG G751 laptops the heaphone port is mapped to nothing, causing it > to not function at all. I propose that we add a remap of pin 0x16 to > Headphone in order to prevent this issue, and fix compability with the new > mode=asus-g751. > > I don't know how to write patches, but this is what needs adding in > sound/pci/hda/patch_realtek.c: > > [ALC668_FIXUP_ASUS_G751_PINS] = { > .type = HDA_FIXUP_PINS, > .v.pins = (const struct hda_pintbl[]) { > { 0x16, 0x0421101f }, /* HP */ > {} > }, > }, > [ALC668_FIXUP_ASUS_G751] = { > .type = HDA_FIXUP_VERBS, > .v.verbs = (const struct hda_verb[]) { > { 0x20, AC_VERB_SET_COEF_INDEX, 0xc3 }, > { 0x20, AC_VERB_SET_PROC_COEF, 0x4000 }, > {} > }, > .chained = true, > .chain_id = ALC668_FIXUP_ASUS_G751_PINS > }, > > And declaring the function earlier. Thanks. I prefer keeping the old COEF as a generic one, so let's move ALC668_FIXUP_ASUS_G751 with the pin-config fix and chain to a new one ALC668_FIXUP_MIC_COEF. The fix patch is below. Takashi -- 8< -- From: Takashi Iwai <tiwai@xxxxxxx> Subject: [PATCH] ALSA: hda - Fix headphone pin config for ASUS G751 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@xxxxxxxxx> Cc: <stable@xxxxxxxxxxxxxxx> Signed-off-by: Takashi Iwai <tiwai@xxxxxxx> --- sound/pci/hda/patch_realtek.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c index 3be7d7649525..b43149f95549 100644 --- a/sound/pci/hda/patch_realtek.c +++ b/sound/pci/hda/patch_realtek.c @@ -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, -- 2.18.0 _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel