Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ALSA: hda/realtek: Add fixup for HP Spectre x360 15-df0xxx

Fixup to enable all 4 speaker on HP Spectre x360 15-df0xxx and probably
on similar models.

0x14 pin config override is required to enable all speakers and
alc285-speaker2-to-dac1 fixup to enable volume adjustment.

BugLink: https://bugzilla.kernel.org/show_bug.cgi?id=189331
Signed-off-by: Elia Devito <eliadevito@gmail.com>
Cc: <stable@vger.kernel.org>
Link: https://lore.kernel.org/r/20210511124651.4802-1-eliadevito@gmail.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>

authored by

Elia Devito and committed by
Takashi Iwai
f2be77fe 91e02557

+12
+12
sound/pci/hda/patch_realtek.c
··· 6542 6542 ALC285_FIXUP_HP_LIMIT_INT_MIC_BOOST, 6543 6543 ALC295_FIXUP_ASUS_DACS, 6544 6544 ALC295_FIXUP_HP_OMEN, 6545 + ALC285_FIXUP_HP_SPECTRE_X360, 6545 6546 }; 6546 6547 6547 6548 static const struct hda_fixup alc269_fixups[] = { ··· 8100 8099 .chained = true, 8101 8100 .chain_id = ALC269_FIXUP_HP_LINE1_MIC1_LED, 8102 8101 }, 8102 + [ALC285_FIXUP_HP_SPECTRE_X360] = { 8103 + .type = HDA_FIXUP_PINS, 8104 + .v.pins = (const struct hda_pintbl[]) { 8105 + { 0x14, 0x90170110 }, /* enable top speaker */ 8106 + {} 8107 + }, 8108 + .chained = true, 8109 + .chain_id = ALC285_FIXUP_SPEAKER2_TO_DAC1, 8110 + }, 8103 8111 }; 8104 8112 8105 8113 static const struct snd_pci_quirk alc269_fixup_tbl[] = { ··· 8269 8259 SND_PCI_QUIRK(0x103c, 0x8497, "HP Envy x360", ALC269_FIXUP_HP_MUTE_LED_MIC3), 8270 8260 SND_PCI_QUIRK(0x103c, 0x84da, "HP OMEN dc0019-ur", ALC295_FIXUP_HP_OMEN), 8271 8261 SND_PCI_QUIRK(0x103c, 0x84e7, "HP Pavilion 15", ALC269_FIXUP_HP_MUTE_LED_MIC3), 8262 + SND_PCI_QUIRK(0x103c, 0x8519, "HP Spectre x360 15-df0xxx", ALC285_FIXUP_HP_SPECTRE_X360), 8272 8263 SND_PCI_QUIRK(0x103c, 0x869d, "HP", ALC236_FIXUP_HP_MUTE_LED), 8273 8264 SND_PCI_QUIRK(0x103c, 0x86c7, "HP Envy AiO 32", ALC274_FIXUP_HP_ENVY_GPIO), 8274 8265 SND_PCI_QUIRK(0x103c, 0x8724, "HP EliteBook 850 G7", ALC285_FIXUP_HP_GPIO_LED), ··· 8676 8665 {.id = ALC274_FIXUP_HP_MIC, .name = "alc274-hp-mic-detect"}, 8677 8666 {.id = ALC245_FIXUP_HP_X360_AMP, .name = "alc245-hp-x360-amp"}, 8678 8667 {.id = ALC295_FIXUP_HP_OMEN, .name = "alc295-hp-omen"}, 8668 + {.id = ALC285_FIXUP_HP_SPECTRE_X360, .name = "alc285-hp-spectre-x360"}, 8679 8669 {} 8680 8670 }; 8681 8671 #define ALC225_STANDARD_PINS \