[alsa-devel] Microphone detected, but no output for all ASUS G751xx with ALC668 chipset

Håvard hovardslill at gmail.com
Fri Oct 5 12:31:37 CEST 2018


Thank you so much!

Will this work for all G751 models, and will this be in the 4.19 kernel?

I am very thankful for all your hard work!!

-Håvard

Den fre. 5. okt. 2018 kl. 12:29 skrev Takashi Iwai <tiwai at suse.de>:

> On Fri, 05 Oct 2018 12:10:52 +0200,
> Håvard wrote:
> >
> > I'll try to answer your previous email first.
> >
> > Everything seems identical to how it was in the 4.18-gentoo kernel when
> not
> > setting the model=alc668-headset option
> >
> > And using the trick we found:
> >
> > ./hda-verb /dev/snd/hwC0D0 0x20 0x500 0xc3
> > ./hda-verb /dev/snd/hwC0D0 0x20 0x440 0x00
>
> OK, then the following patch may work.  Give it a try.
>
>
> > Made it so loopback worked perfectly fine for both earpieces.
> >
> > One curiosity however (this is just a small thing) is that the "base" mic
> > level is far lower than when the "Mic" option in alsamixer is set to
> 100. I
> > don't know if it was this way in 4.18-gentoo, but that's the only thing
> > that doesnt seem correct.
> > Here is a screenshot explaining it:
> > http://i.imgur.com/dKPELX6.png
>
> The Mic volume is only for analog loopback, so it can be normal.
>
>
> Takashi
>
> ---
> --- 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_ASUS_G751,
>         ALC891_FIXUP_HEADSET_MODE,
>         ALC891_FIXUP_DELL_MIC_NO_PRESENCE,
>         ALC662_FIXUP_ACER_VERITON,
> @@ -8007,6 +8008,14 @@ static const struct hda_fixup alc662_fixups[] = {
>                 .chained = true,
>                 .chain_id = ALC668_FIXUP_ASUS_Nx51_HEADSET_MODE,
>         },
> +       [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 },
> +                       {}
> +               },
> +       },
>         [ALC891_FIXUP_HEADSET_MODE] = {
>                 .type = HDA_FIXUP_FUNC,
>                 .v.func = alc_fixup_headset_mode,
> @@ -8080,6 +8089,7 @@ static const struct snd_pci_quirk alc662_fixup_tbl[]
> = {
>         SND_PCI_QUIRK(0x1043, 0x11cd, "Asus N550", ALC662_FIXUP_ASUS_Nx50),
>         SND_PCI_QUIRK(0x1043, 0x13df, "Asus N550JX", ALC662_FIXUP_BASS_1A),
>         SND_PCI_QUIRK(0x1043, 0x129d, "Asus N750", ALC662_FIXUP_ASUS_Nx50),
> +       SND_PCI_QUIRK(0x1043, 0x12ff, "ASUS G751", ALC668_FIXUP_ASUS_G751),
>         SND_PCI_QUIRK(0x1043, 0x1477, "ASUS N56VZ",
> ALC662_FIXUP_BASS_MODE4_CHMAP),
>         SND_PCI_QUIRK(0x1043, 0x15a7, "ASUS UX51VZH",
> ALC662_FIXUP_BASS_16),
>         SND_PCI_QUIRK(0x1043, 0x177d, "ASUS N551", ALC668_FIXUP_ASUS_Nx51),
> @@ -8184,6 +8194,7 @@ static const struct hda_model_fixup
> alc662_fixup_models[] = {
>         {.id = ALC668_FIXUP_DELL_XPS13, .name = "dell-xps13"},
>         {.id = ALC662_FIXUP_ASUS_Nx50, .name = "asus-nx50"},
>         {.id = ALC668_FIXUP_ASUS_Nx51, .name = "asus-nx51"},
> +       {.id = ALC668_FIXUP_ASUS_G751, .name = "asus-g751"},
>         {.id = ALC891_FIXUP_HEADSET_MODE, .name = "alc891-headset"},
>         {.id = ALC891_FIXUP_DELL_MIC_NO_PRESENCE, .name =
> "alc891-headset-multi"},
>         {.id = ALC662_FIXUP_ACER_VERITON, .name = "acer-veriton"},
>


More information about the Alsa-devel mailing list