Re: [PATCH v2 2/3] ALSA: hda/realtek: Enable audio jacks of ASUS UX533FD with ALC294

From: Jian-Hong Pan
Date: Thu Dec 06 2018 - 22:48:49 EST


Kailang <kailang@xxxxxxxxxxx> æ 2018å12æ7æ éä äå11:32åéï
>
> Hi Jian Hong,
>
> Could I know who give you the value as below?
>
> + { 0x20, AC_VERB_SET_COEF_INDEX, 0x10 },
> + { 0x20, 0x4c4, 0x20 },
> + { 0x20, AC_VERB_SET_COEF_INDEX, 0x40 },
> + { 0x20, 0x488, 0x00 },

A module maker.

Regards,
Jian-Hong Pan

> -----Original Message-----
> From: Jian-Hong Pan <jian-hong@xxxxxxxxxxxx>
> Sent: Thursday, December 6, 2018 4:46 PM
> To: Jaroslav Kysela <perex@xxxxxxxx>; Takashi Iwai <tiwai@xxxxxxxx>; Kailang <kailang@xxxxxxxxxxx>
> Cc: Hui Wang <hui.wang@xxxxxxxxxxxxx>; alsa-devel@xxxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; linux@xxxxxxxxxxxx; Jian-Hong Pan <jian-hong@xxxxxxxxxxxx>; Daniel Drake <drake@xxxxxxxxxxxx>
> Subject: [PATCH v2 2/3] ALSA: hda/realtek: Enable audio jacks of ASUS UX533FD with ALC294
>
> The ASUS UX533FD with ALC294 cannot detect the headset MIC and output through the internal speaker and the headphone until ALC294_FIXUP_ASUS_SPK_NOISE quirk applied.
>
> Signed-off-by: Daniel Drake <drake@xxxxxxxxxxxx>
> Signed-off-by: Jian-Hong Pan <jian-hong@xxxxxxxxxxxx>
> ---
> v2:
> - Modify the HDA verbs for UX333FA support
> - Make a new ALC294_FIXUP_ASUS_HEADSET_MIC quirk for ALC294 chain
> - .chain_id = ALC256_FIXUP_ASUS_HEADSET_MODE ==> change to ALC269_FIXUP_HEADSET_MODE_NO_HP_MIC
>
> sound/pci/hda/patch_realtek.c | 25 +++++++++++++++++++++++++
> 1 file changed, 25 insertions(+)
>
> diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c index d32e50b1ed60..1525bcdf96e8 100644
> --- a/sound/pci/hda/patch_realtek.c
> +++ b/sound/pci/hda/patch_realtek.c
> @@ -5518,6 +5518,8 @@ enum {
> ALC295_FIXUP_HP_AUTO_MUTE,
> ALC286_FIXUP_ACER_AIO_MIC_NO_PRESENCE,
> ALC294_FIXUP_ASUS_MIC,
> + ALC294_FIXUP_ASUS_HEADSET_MIC,
> + ALC294_FIXUP_ASUS_SPK_NOISE,
> };
>
> static const struct hda_fixup alc269_fixups[] = { @@ -6414,6 +6416,28 @@ static const struct hda_fixup alc269_fixups[] = {
> .chained = true,
> .chain_id = ALC269_FIXUP_HEADSET_MODE_NO_HP_MIC
> },
> + [ALC294_FIXUP_ASUS_HEADSET_MIC] = {
> + .type = HDA_FIXUP_PINS,
> + .v.pins = (const struct hda_pintbl[]) {
> + { 0x19, 0x01a1113c }, /* use as headset mic, without its own jack detect */
> + { }
> + },
> + .chained = true,
> + .chain_id = ALC269_FIXUP_HEADSET_MODE_NO_HP_MIC
> + },
> + [ALC294_FIXUP_ASUS_SPK_NOISE] = {
> + .type = HDA_FIXUP_VERBS,
> + .v.verbs = (const struct hda_verb[]) {
> + /* Set EAPD high */
> + { 0x20, AC_VERB_SET_COEF_INDEX, 0x10 },
> + { 0x20, 0x4c4, 0x20 },
> + { 0x20, AC_VERB_SET_COEF_INDEX, 0x40 },
> + { 0x20, 0x488, 0x00 },
> + { }
> + },
> + .chained = true,
> + .chain_id = ALC294_FIXUP_ASUS_HEADSET_MIC
> + },
> };
>
> static const struct snd_pci_quirk alc269_fixup_tbl[] = { @@ -6556,6 +6580,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
> SND_PCI_QUIRK(0x1043, 0x12e0, "ASUS X541SA", ALC256_FIXUP_ASUS_MIC),
> SND_PCI_QUIRK(0x1043, 0x13b0, "ASUS Z550SA", ALC256_FIXUP_ASUS_MIC),
> SND_PCI_QUIRK(0x1043, 0x1427, "Asus Zenbook UX31E", ALC269VB_FIXUP_ASUS_ZENBOOK),
> + SND_PCI_QUIRK(0x1043, 0x14a1, "ASUS UX533FD",
> +ALC294_FIXUP_ASUS_SPK_NOISE),
> SND_PCI_QUIRK(0x1043, 0x1517, "Asus Zenbook UX31A", ALC269VB_FIXUP_ASUS_ZENBOOK_UX31A),
> SND_PCI_QUIRK(0x1043, 0x16e3, "ASUS UX50", ALC269_FIXUP_STEREO_DMIC),
> SND_PCI_QUIRK(0x1043, 0x1a13, "Asus G73Jw", ALC269_FIXUP_ASUS_G73JW),
> --
> 2.11.0
>