Linux Sound subsystem development
 help / color / mirror / Atom feed
From: "Gonçalo Miranda" <me@goncalom.dev>
To: linux-sound@vger.kernel.org
Cc: tiwai@suse.de, perex@perex.cz, "Gonçalo Miranda" <me@goncalom.dev>
Subject: [PATCH v2] ALSA: hda/conexant: Add quirk for Acer Aspire Go 16 mic mute LED
Date: Mon, 12 Oct 2026 12:00:24 +0100	[thread overview]
Message-ID: <20261012110024.25310-1-me@goncalom.dev> (raw)

The Acer Aspire Go 16 (AG16-71P) uses a Conexant SN6180 codec
(subsystem ID 0x1025:0x1937) with the microphone mute LED wired
to GPIO4. Add a quirk entry so the kernel drives the LED in sync
with the microphone mute state.

The fixup reuses the existing cxt_setup_mute_led() helper with
mask 0x10, matching the behavior verified on the hardware.

Changes in v2:
- Moved the quirk entry to the correct position in PCI SSID sort
  order, as requested by Takashi Iwai.

Signed-off-by: Gonçalo Miranda <me@goncalom.dev>
---
 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 40da2832b..bf0321ba8 100644
--- a/sound/hda/codecs/conexant.c
+++ b/sound/hda/codecs/conexant.c
@@ -283,6 +283,7 @@ enum {
 	CXT_FIXUP_HP_SPECTRE,
 	CXT_FIXUP_HP_GATE_MIC,
 	CXT_FIXUP_MUTE_LED_GPIO,
+	CXT_FIXUP_ACER_ASPIRE_GO_MUTE_LED,
 	CXT_FIXUP_HP_ELITEONE_OUT_DIS,
 	CXT_FIXUP_HP_ZBOOK_MUTE_LED,
 	CXT_FIXUP_HEADSET_MIC,
@@ -786,6 +787,13 @@ static void cxt_fixup_hp_zbook_mute_led(struct hda_codec *codec,
 		cxt_setup_mute_led(codec, 0x10, 0x20);
 }
 
+static void cxt_fixup_acer_aspire_go_mute_led(struct hda_codec *codec,
+					      const struct hda_fixup *fix, int action)
+{
+	if (action == HDA_FIXUP_ACT_PRE_PROBE)
+		cxt_setup_mute_led(codec, 0, 0x10);
+}
+
 static void cxt_fixup_hp_a_u(struct hda_codec *codec,
 			     const struct hda_fixup *fix, int action)
 {
@@ -985,6 +993,10 @@ static const struct hda_fixup cxt_fixups[] = {
 		.type = HDA_FIXUP_FUNC,
 		.v.func = cxt_fixup_mute_led_gpio,
 	},
+	[CXT_FIXUP_ACER_ASPIRE_GO_MUTE_LED] = {
+		.type = HDA_FIXUP_FUNC,
+		.v.func = cxt_fixup_acer_aspire_go_mute_led,
+	},
 	[CXT_FIXUP_HP_ELITEONE_OUT_DIS] = {
 		.type = HDA_FIXUP_FUNC,
 		.v.func = cxt_fixup_update_pinctl,
@@ -1083,6 +1095,7 @@ static const struct hda_quirk cxt5066_fixups[] = {
 	SND_PCI_QUIRK(0x1025, 0x054c, "Acer Aspire 3830TG", CXT_FIXUP_ASPIRE_DMIC),
 	SND_PCI_QUIRK(0x1025, 0x054f, "Acer Aspire 4830T", CXT_FIXUP_ASPIRE_DMIC),
 	SND_PCI_QUIRK(0x1025, 0x136d, "Acer Swift SF314", CXT_FIXUP_ACER_SWIFT_HP),
+	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, 0x80FD, "HP ProBook 640 G2", CXT_FIXUP_HP_DOCK),
-- 
2.56.0


             reply	other threads:[~2026-10-12 11:00 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-12 11:00 Gonçalo Miranda [this message]
2026-10-12 15:05 ` [PATCH v2] ALSA: hda/conexant: Add quirk for Acer Aspire Go 16 mic mute LED Takashi Iwai

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20261012110024.25310-1-me@goncalom.dev \
    --to=me@goncalom.dev \
    --cc=linux-sound@vger.kernel.org \
    --cc=perex@perex.cz \
    --cc=tiwai@suse.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox