Skip to content
/ linux Public

Commit 9745c25

Browse files
crazo7924Sasha Levin
authored andcommitted
ALSA: hda/realtek: add HP Victus 16-e0xxx mute LED quirk
[ Upstream commit 72919c5 ] 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> Signed-off-by: Sasha Levin <sashal@kernel.org>
1 parent c626a9b commit 9745c25

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed

sound/hda/codecs/realtek/alc269.c

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1551,6 +1551,22 @@ static void alc245_fixup_hp_mute_led_v1_coefbit(struct hda_codec *codec,
15511551
}
15521552
}
15531553

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+
15541570
/* turn on/off mic-mute LED per capture hook by coef bit */
15551571
static int coef_micmute_led_set(struct led_classdev *led_cdev,
15561572
enum led_brightness brightness)
@@ -3719,6 +3735,7 @@ enum {
37193735
ALC287_FIXUP_YOGA7_14ARB7_I2C,
37203736
ALC245_FIXUP_HP_MUTE_LED_COEFBIT,
37213737
ALC245_FIXUP_HP_MUTE_LED_V1_COEFBIT,
3738+
ALC245_FIXUP_HP_MUTE_LED_V2_COEFBIT,
37223739
ALC245_FIXUP_HP_X360_MUTE_LEDS,
37233740
ALC287_FIXUP_THINKPAD_I2S_SPK,
37243741
ALC287_FIXUP_MG_RTKC_CSAMP_CS35L41_I2C_THINKPAD,
@@ -6047,6 +6064,10 @@ static const struct hda_fixup alc269_fixups[] = {
60476064
.type = HDA_FIXUP_FUNC,
60486065
.v.func = alc245_fixup_hp_mute_led_v1_coefbit,
60496066
},
6067+
[ALC245_FIXUP_HP_MUTE_LED_V2_COEFBIT] = {
6068+
.type = HDA_FIXUP_FUNC,
6069+
.v.func = alc245_fixup_hp_mute_led_v2_coefbit,
6070+
},
60506071
[ALC245_FIXUP_HP_X360_MUTE_LEDS] = {
60516072
.type = HDA_FIXUP_FUNC,
60526073
.v.func = alc245_fixup_hp_mute_led_coefbit,
@@ -6520,6 +6541,7 @@ static const struct hda_quirk alc269_fixup_tbl[] = {
65206541
SND_PCI_QUIRK(0x103c, 0x8898, "HP EliteBook 845 G8 Notebook PC", ALC285_FIXUP_HP_LIMIT_INT_MIC_BOOST),
65216542
SND_PCI_QUIRK(0x103c, 0x88d0, "HP Pavilion 15-eh1xxx (mainboard 88D0)", ALC287_FIXUP_HP_GPIO_LED),
65226543
SND_PCI_QUIRK(0x103c, 0x88dd, "HP Pavilion 15z-ec200", ALC285_FIXUP_HP_MUTE_LED),
6544+
SND_PCI_QUIRK(0x103c, 0x88eb, "HP Victus 16-e0xxx", ALC245_FIXUP_HP_MUTE_LED_V2_COEFBIT),
65236545
SND_PCI_QUIRK(0x103c, 0x8902, "HP OMEN 16", ALC285_FIXUP_HP_MUTE_LED),
65246546
SND_PCI_QUIRK(0x103c, 0x890e, "HP 255 G8 Notebook PC", ALC236_FIXUP_HP_MUTE_LED_COEFBIT2),
65256547
SND_PCI_QUIRK(0x103c, 0x8919, "HP Pavilion Aero Laptop 13-be0xxx", ALC287_FIXUP_HP_GPIO_LED),

0 commit comments

Comments
 (0)