Re: [PATCH] ALSA: hda/realtek: Enable MICs of Acer SWIFT with ALC256
From: Takashi Iwai
Date: Thu Feb 25 2021 - 04:36:59 EST
On Thu, 25 Feb 2021 10:21:07 +0100,
Chris Chiu wrote:
>
> The Acer SWIFT Swift SF314-54/55 with ALC256 cannot detect the headset
> microphone and suffers the noise problem in audio capture.
>
> This patch enables the headset jack sense and fixes the noise problem with
> aamix fixup.
>
> Signed-off-by: Chris Chiu <chris.chiu@xxxxxxxxxxxxx>
The patch seems broken due to the line break and cannot be applied
cleanly. Could you resubmit?
thanks,
Takashi
> ---
> sound/pci/hda/patch_realtek.c | 20 ++++++++++++++++++++
> 1 file changed, 20 insertions(+)
>
> diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
> index 290645516313..57e4dbcd76a9 100644
> --- a/sound/pci/hda/patch_realtek.c
> +++ b/sound/pci/hda/patch_realtek.c
> @@ -6372,6 +6372,8 @@ enum {
> ALC236_FIXUP_DELL_AIO_HEADSET_MIC,
> ALC282_FIXUP_ACER_DISABLE_LINEOUT,
> ALC255_FIXUP_ACER_LIMIT_INT_MIC_BOOST,
> + ALC256_FIXUP_ACER_SWIFT_NO_MIC_PRESENCE,
> + ALC256_FIXUP_ACER_SWIFT_DISABLE_AAMIX,
> };
>
> static const struct hda_fixup alc269_fixups[] = {
> @@ -7815,6 +7817,22 @@ static const struct hda_fixup alc269_fixups[] = {
> .chained = true,
> .chain_id = ALC255_FIXUP_ACER_MIC_NO_PRESENCE,
> },
> + [ALC256_FIXUP_ACER_SWIFT_NO_MIC_PRESENCE] = {
> + .type = HDA_FIXUP_PINS,
> + .v.pins = (const struct hda_pintbl[]) {
> + { 0x19, 0x02a1113c }, /* use as headset mic,
> without its own jack detect */
> + { 0x1a, 0x90a1092f }, /* use as internal mic */
> + { },
> + },
> + .chained = true,
> + .chain_id = ALC269_FIXUP_HEADSET_MODE_NO_HP_MIC
> + },
> + [ALC256_FIXUP_ACER_SWIFT_DISABLE_AAMIX] = {
> + .type = HDA_FIXUP_FUNC,
> + .v.func = alc_fixup_disable_aamix,
> + .chained = true,
> + .chain_id = ALC256_FIXUP_ACER_SWIFT_NO_MIC_PRESENCE
> + },
> };
>
> static const struct snd_pci_quirk alc269_fixup_tbl[] = {
> @@ -7841,9 +7859,11 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
> SND_PCI_QUIRK(0x1025, 0x1246, "Acer Predator Helios 500",
> ALC299_FIXUP_PREDATOR_SPK),
> SND_PCI_QUIRK(0x1025, 0x1247, "Acer vCopperbox",
> ALC269VC_FIXUP_ACER_VCOPPERBOX_PINS),
> SND_PCI_QUIRK(0x1025, 0x1248, "Acer Veriton N4660G",
> ALC269VC_FIXUP_ACER_MIC_NO_PRESENCE),
> + SND_PCI_QUIRK(0x1025, 0x1269, "Acer SWIFT SF314-54",
> ALC256_FIXUP_ACER_SWIFT_DISABLE_AAMIX),
> SND_PCI_QUIRK(0x1025, 0x128f, "Acer Veriton Z6860G",
> ALC286_FIXUP_ACER_AIO_HEADSET_MIC),
> SND_PCI_QUIRK(0x1025, 0x1290, "Acer Veriton Z4860G",
> ALC286_FIXUP_ACER_AIO_HEADSET_MIC),
> SND_PCI_QUIRK(0x1025, 0x1291, "Acer Veriton Z4660G",
> ALC286_FIXUP_ACER_AIO_HEADSET_MIC),
> + SND_PCI_QUIRK(0x1025, 0x129c, "Acer SWIFT SF314-55",
> ALC256_FIXUP_ACER_SWIFT_DISABLE_AAMIX),
> SND_PCI_QUIRK(0x1025, 0x1308, "Acer Aspire Z24-890",
> ALC286_FIXUP_ACER_AIO_HEADSET_MIC),
> SND_PCI_QUIRK(0x1025, 0x132a, "Acer TravelMate B114-21",
> ALC233_FIXUP_ACER_HEADSET_MIC),
> SND_PCI_QUIRK(0x1025, 0x1330, "Acer TravelMate X514-51T",
> ALC255_FIXUP_ACER_HEADSET_MIC),
> --
> 2.20.1
>