Re: [PATCH 2/3] ALSA:hda: fix front speakers on Huawei MBXP.

From: ayman . bagabas
Date: Wed Oct 31 2018 - 16:08:24 EST


This patch solves bug 200501 'Only 2 of 4 speakers playing sound.'
https://bugzilla.kernel.org/show_bug.cgi?id=200501

On Wed, 2018-10-31 at 15:20 -0400, Ayman Bagabas wrote:
> This patch enables the front speakers on Huawei Matebook X Pro
> laptops.
> These laptops come with Dolby Atmos sound system and these pins
> configuration enables the front speakers.
>
> Signed-off-by: Ayman Bagabas <ayman.bagabas@xxxxxxxxx>
> ---
> sound/pci/hda/patch_realtek.c | 18 ++++++++++++++++++
> 1 file changed, 18 insertions(+)
>
> diff --git a/sound/pci/hda/patch_realtek.c
> b/sound/pci/hda/patch_realtek.c
> index 3ac7ba9b342d..4f7a39c7883c 100644
> --- a/sound/pci/hda/patch_realtek.c
> +++ b/sound/pci/hda/patch_realtek.c
> @@ -5493,6 +5493,7 @@ enum {
> ALC298_FIXUP_TPT470_DOCK,
> ALC255_FIXUP_DUMMY_LINEOUT_VERB,
> ALC255_FIXUP_DELL_HEADSET_MIC,
> + ALC256_FIXUP_HUAWEI_MBXP_PINS,
> ALC295_FIXUP_HP_X360,
> ALC221_FIXUP_HP_HEADSET_MIC,
> };
> @@ -6347,6 +6348,22 @@ static const struct hda_fixup alc269_fixups[]
> = {
> .chained = true,
> .chain_id = ALC269_FIXUP_HEADSET_MIC
> },
> + [ALC256_FIXUP_HUAWEI_MBXP_PINS] = {
> + .type = HDA_FIXUP_PINS,
> + .v.pins = (const struct hda_pintbl[]) {
> + {0x12, 0x90a60130},
> + {0x13, 0x40000000},
> + {0x14, 0x90170110},
> + {0x18, 0x411111f0},
> + {0x19, 0x04a11040},
> + {0x1a, 0x411111f0},
> + {0x1b, 0x90170112},
> + {0x1d, 0x40759a05},
> + {0x1e, 0x411111f0},
> + {0x21, 0x04211020},
> + { },
> + },
> + },
> [ALC295_FIXUP_HP_X360] = {
> .type = HDA_FIXUP_FUNC,
> .v.func = alc295_fixup_hp_top_speakers,
> @@ -6592,6 +6609,7 @@ static const struct snd_pci_quirk
> alc269_fixup_tbl[] = {
> SND_PCI_QUIRK(0x17aa, 0x5109, "Thinkpad",
> ALC269_FIXUP_LIMIT_INT_MIC_BOOST),
> SND_PCI_QUIRK(0x17aa, 0x511e, "Thinkpad",
> ALC298_FIXUP_TPT470_DOCK),
> SND_PCI_QUIRK(0x17aa, 0x511f, "Thinkpad",
> ALC298_FIXUP_TPT470_DOCK),
> + SND_PCI_QUIRK(0x19e5, 0x3204, "Huawei MBXP",
> ALC256_FIXUP_HUAWEI_MBXP_PINS),
> SND_PCI_QUIRK(0x17aa, 0x3bf8, "Quanta FL1",
> ALC269_FIXUP_PCM_44K),
> SND_PCI_QUIRK(0x17aa, 0x9e54, "LENOVO NB",
> ALC269_FIXUP_LENOVO_EAPD),
> SND_PCI_QUIRK(0x1b7d, 0xa831, "Ordissimo EVE2 ",
> ALC269VB_FIXUP_ORDISSIMO_EVE2), /* Also known as Malata PC-B1303 */