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

Configure Feed

Select the types of activity you want to include in your feed.

ALSA: hda/realtek: add HP Victus 16-e0xxx mute LED quirk

HP Victus 16-e0xxx with ALC245 codec does not handle the toggling of
the mute LED.
This patch adds a quirk entry for subsystem ID 0x88eb using a new
ALC245_FIXUP_HP_MUTE_LED_V2_COEFBIT fixup, enabling correct mute LED
behavior.

Signed-off-by: Bharat Dev Burman <bharat.singh7924@gmail.com>
Link: https://patch.msgid.link/20260112184253.33376-1-bharat.singh7924@gmail.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>

authored by

Bharat Dev Burman and committed by
Takashi Iwai
72919c57 0924c6bb

+22
+22
sound/hda/codecs/realtek/alc269.c
··· 1551 1551 } 1552 1552 } 1553 1553 1554 + static void alc245_fixup_hp_mute_led_v2_coefbit(struct hda_codec *codec, 1555 + const struct hda_fixup *fix, 1556 + int action) 1557 + { 1558 + struct alc_spec *spec = codec->spec; 1559 + 1560 + if (action == HDA_FIXUP_ACT_PRE_PROBE) { 1561 + spec->mute_led_polarity = 0; 1562 + spec->mute_led_coef.idx = 0x0b; 1563 + spec->mute_led_coef.mask = 1 << 3; 1564 + spec->mute_led_coef.on = 1 << 3; 1565 + spec->mute_led_coef.off = 0; 1566 + snd_hda_gen_add_mute_led_cdev(codec, coef_mute_led_set); 1567 + } 1568 + } 1569 + 1554 1570 /* turn on/off mic-mute LED per capture hook by coef bit */ 1555 1571 static int coef_micmute_led_set(struct led_classdev *led_cdev, 1556 1572 enum led_brightness brightness) ··· 3832 3816 ALC287_FIXUP_YOGA7_14ARB7_I2C, 3833 3817 ALC245_FIXUP_HP_MUTE_LED_COEFBIT, 3834 3818 ALC245_FIXUP_HP_MUTE_LED_V1_COEFBIT, 3819 + ALC245_FIXUP_HP_MUTE_LED_V2_COEFBIT, 3835 3820 ALC245_FIXUP_HP_X360_MUTE_LEDS, 3836 3821 ALC287_FIXUP_THINKPAD_I2S_SPK, 3837 3822 ALC287_FIXUP_MG_RTKC_CSAMP_CS35L41_I2C_THINKPAD, ··· 6149 6132 .type = HDA_FIXUP_FUNC, 6150 6133 .v.func = alc245_fixup_hp_mute_led_v1_coefbit, 6151 6134 }, 6135 + [ALC245_FIXUP_HP_MUTE_LED_V2_COEFBIT] = { 6136 + .type = HDA_FIXUP_FUNC, 6137 + .v.func = alc245_fixup_hp_mute_led_v2_coefbit, 6138 + }, 6152 6139 [ALC245_FIXUP_HP_X360_MUTE_LEDS] = { 6153 6140 .type = HDA_FIXUP_FUNC, 6154 6141 .v.func = alc245_fixup_hp_mute_led_coefbit, ··· 6641 6620 SND_PCI_QUIRK(0x103c, 0x8898, "HP EliteBook 845 G8 Notebook PC", ALC285_FIXUP_HP_LIMIT_INT_MIC_BOOST), 6642 6621 SND_PCI_QUIRK(0x103c, 0x88d0, "HP Pavilion 15-eh1xxx (mainboard 88D0)", ALC287_FIXUP_HP_GPIO_LED), 6643 6622 SND_PCI_QUIRK(0x103c, 0x88dd, "HP Pavilion 15z-ec200", ALC285_FIXUP_HP_MUTE_LED), 6623 + SND_PCI_QUIRK(0x103c, 0x88eb, "HP Victus 16-e0xxx", ALC245_FIXUP_HP_MUTE_LED_V2_COEFBIT), 6644 6624 SND_PCI_QUIRK(0x103c, 0x8902, "HP OMEN 16", ALC285_FIXUP_HP_MUTE_LED), 6645 6625 SND_PCI_QUIRK(0x103c, 0x890e, "HP 255 G8 Notebook PC", ALC236_FIXUP_HP_MUTE_LED_COEFBIT2), 6646 6626 SND_PCI_QUIRK(0x103c, 0x8919, "HP Pavilion Aero Laptop 13-be0xxx", ALC287_FIXUP_HP_GPIO_LED),