* [PATCH] ALSA: hda/conexant: Add mute LED quirk for HP ZBook 17 G3
@ 2026-10-29 17:44 ahmad baghereslami
2026-10-30 4:56 ` [PATCH v2] " ahmad baghereslami
0 siblings, 1 reply; 2+ messages in thread
From: ahmad baghereslami @ 2026-10-29 17:44 UTC (permalink / raw)
To: tiwai, perex; +Cc: linux-sound, linux-kernel, ahmad baghereslami
The HP ZBook 17 G3 (PCI SSID 103c:80d6, codec CX20724 with SSID
103c:80f8) has a speaker-mute LED wired to GPIO0 of the codec, the same
as HP's other Conexant laptops of that generation. HP's Windows driver
for this model sets EnableGPIO0MuteSignal. The mic-mute key's LED is not
connected to the codec: toggling each of GPIO0-6, the EAPD of the unused
pins 0x1d and 0x22, and the VREF of pins 0x18 and 0x1d only ever lit the
speaker-mute LED (GPIO0). CXT_FIXUP_MUTE_LED_GPIO would also register a
mic-mute LED on GPIO1, which drives nothing here, so add a fixup that
only sets up the mute LED on GPIO0.
Tested on an HP ZBook 17 G3 with Ubuntu's 7.0.0 kernel and this change
applied to its conexant.c: hda::mute follows the master mute, sound and
the microphone keep working, and the mic-mute key still mutes the mic.
The GPIO and pin tests, reading HP's driver and this patch were done with
the help of an AI coding assistant (Claude); I verified the LED behaviour
on the machine.
Signed-off-by: ahmad baghereslami <ahmad.b1995@gmail.com>
---
sound/hda/codecs/conexant.c | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/sound/hda/codecs/conexant.c b/sound/hda/codecs/conexant.c
index a141c94ee..525a6d0d1 100644
--- a/sound/hda/codecs/conexant.c
+++ b/sound/hda/codecs/conexant.c
@@ -305,6 +305,7 @@ enum {
CXT_FIXUP_ACER_ASPIRE_GO_MUTE_LED,
CXT_FIXUP_HP_ELITEONE_OUT_DIS,
CXT_FIXUP_HP_ZBOOK_MUTE_LED,
+ CXT_FIXUP_MUTE_LED_GPIO0,
CXT_FIXUP_HEADSET_MIC,
CXT_FIXUP_HP_MIC_NO_PRESENCE,
CXT_PINCFG_SWS_JS201D,
@@ -810,6 +811,13 @@ static void cxt_fixup_hp_zbook_mute_led(struct hda_codec *codec,
cxt_setup_mute_led(codec, 0x10, 0x20);
}
+static void cxt_fixup_mute_led_gpio0(struct hda_codec *codec,
+ const struct hda_fixup *fix, int action)
+{
+ if (action == HDA_FIXUP_ACT_PRE_PROBE)
+ cxt_setup_mute_led(codec, 0x01, 0);
+}
+
static void cxt_fixup_acer_aspire_go_mute_led(struct hda_codec *codec,
const struct hda_fixup *fix, int action)
{
@@ -1089,6 +1097,10 @@ static const struct hda_fixup cxt_fixups[] = {
.type = HDA_FIXUP_FUNC,
.v.func = cxt_fixup_hp_zbook_mute_led,
},
+ [CXT_FIXUP_MUTE_LED_GPIO0] = {
+ .type = HDA_FIXUP_FUNC,
+ .v.func = cxt_fixup_mute_led_gpio0,
+ },
[CXT_FIXUP_HEADSET_MIC] = {
.type = HDA_FIXUP_FUNC,
.v.func = cxt_fixup_headset_mic,
@@ -1193,6 +1205,7 @@ static const struct hda_quirk cxt5066_fixups[] = {
SND_PCI_QUIRK(0x1025, 0x1937, "Acer Aspire Go 16", CXT_FIXUP_ACER_ASPIRE_GO_MUTE_LED),
SND_PCI_QUIRK(0x103c, 0x8079, "HP EliteBook 840 G3", CXT_FIXUP_HP_DOCK),
SND_PCI_QUIRK(0x103c, 0x807C, "HP EliteBook 820 G3", CXT_FIXUP_HP_DOCK),
+ SND_PCI_QUIRK(0x103c, 0x80d6, "HP ZBook 17 G3", CXT_FIXUP_MUTE_LED_GPIO0),
SND_PCI_QUIRK(0x103c, 0x80FD, "HP ProBook 640 G2", CXT_FIXUP_HP_DOCK),
SND_PCI_QUIRK(0x103c, 0x8115, "HP Z1 Gen3", CXT_FIXUP_HP_GATE_MIC),
SND_PCI_QUIRK(0x103c, 0x814f, "HP ZBook 15u G3", CXT_FIXUP_MUTE_LED_GPIO),
--
2.53.0
^ permalink raw reply [flat|nested] 2+ messages in thread
* [PATCH v2] ALSA: hda/conexant: Add mute LED quirk for HP ZBook 17 G3
2026-10-29 17:44 [PATCH] ALSA: hda/conexant: Add mute LED quirk for HP ZBook 17 G3 ahmad baghereslami
@ 2026-10-30 4:56 ` ahmad baghereslami
0 siblings, 0 replies; 2+ messages in thread
From: ahmad baghereslami @ 2026-10-30 4:56 UTC (permalink / raw)
To: tiwai, perex; +Cc: linux-sound, linux-kernel, ahmad baghereslami
The HP ZBook 17 G3 (PCI SSID 103c:80d6, codec CX20724 with SSID
103c:80f8) has its speaker-mute LED on codec GPIO0 and its mic-mute LED
on GPIO1, both active high, like the HP ZBook 15u G3 that already uses
CXT_FIXUP_MUTE_LED_GPIO. HP's Windows driver agrees: chdrt.inf sets
EnableGPIO0MuteSignal for this model, and MicTray's MasterMute section
for SUBSYS_103C80D6/103C80F8 sets PlaybackGPIO = 0 and CaptureGPIO = 1.
Use CXT_FIXUP_MUTE_LED_GPIO for it.
Tested on an HP ZBook 17 G3 with Ubuntu's 7.0.0 kernel: with each GPIO
held high and low, GPIO0 switches only the speaker-mute LED and GPIO1
only the mic-mute LED; GPIO2-6 switch neither. With this quirk applied,
hda::mute and hda::micmute follow the speaker and mic mute, and sound
and the microphone keep working.
Finding the LEDs (the GPIO tests and reading HP's driver) and writing
this patch were done with the help of an AI coding assistant (Claude);
I checked the LEDs on the machine.
Signed-off-by: ahmad baghereslami <ahmad.b1995@gmail.com>
---
Notes:
v2: v1 said the mic-mute LED is not on the codec and added a mute-only
fixup. That was wrong: my v1 test blinked each GPIO too fast to see.
Holding each GPIO high and low shows GPIO1 is the mic-mute LED, as HP's
MicTray configuration for this model says, so v2 just uses the existing
CXT_FIXUP_MUTE_LED_GPIO. v1:
https://lore.kernel.org/all/20261029174446.1412118-1-ahmad.b1995@gmail.com/
sound/hda/codecs/conexant.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/sound/hda/codecs/conexant.c b/sound/hda/codecs/conexant.c
index a141c94ee..88651a36d 100644
--- a/sound/hda/codecs/conexant.c
+++ b/sound/hda/codecs/conexant.c
@@ -1193,6 +1193,7 @@ static const struct hda_quirk cxt5066_fixups[] = {
SND_PCI_QUIRK(0x1025, 0x1937, "Acer Aspire Go 16", CXT_FIXUP_ACER_ASPIRE_GO_MUTE_LED),
SND_PCI_QUIRK(0x103c, 0x8079, "HP EliteBook 840 G3", CXT_FIXUP_HP_DOCK),
SND_PCI_QUIRK(0x103c, 0x807C, "HP EliteBook 820 G3", CXT_FIXUP_HP_DOCK),
+ SND_PCI_QUIRK(0x103c, 0x80d6, "HP ZBook 17 G3", CXT_FIXUP_MUTE_LED_GPIO),
SND_PCI_QUIRK(0x103c, 0x80FD, "HP ProBook 640 G2", CXT_FIXUP_HP_DOCK),
SND_PCI_QUIRK(0x103c, 0x8115, "HP Z1 Gen3", CXT_FIXUP_HP_GATE_MIC),
SND_PCI_QUIRK(0x103c, 0x814f, "HP ZBook 15u G3", CXT_FIXUP_MUTE_LED_GPIO),
--
2.53.0
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-10-30 4:57 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-10-29 17:44 [PATCH] ALSA: hda/conexant: Add mute LED quirk for HP ZBook 17 G3 ahmad baghereslami
2026-10-30 4:56 ` [PATCH v2] " ahmad baghereslami
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®