Re: [PATCH] ALSA: hda/realtek: Enable MICs of Acer SWIFT with ALC256
From: Chris Chiu
Date: Thu Feb 25 2021 - 06:12:45 EST
On Thu, Feb 25, 2021 at 5:32 PM Takashi Iwai <tiwai@xxxxxxx> wrote:
>
>
On 2021年2月25日 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?
>
Talked to Jian-Hong who was working on SF314-55, the aamix disable
does not really make difference. And we don't have to quirk 0x1a since
the internal mic connects to intel SST audio. I'll make a V2 patch and
resubmit. Thanks.
>
>
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
>
>