[PATCH AUTOSEL 6.19-6.6] ALSA: hda/conexant: Add headset mic fix for MECHREVO Wujie 15X Pro

Sasha Levin
2026-02-14T01:06:48Z

From: gongqi <550230171hxy@gmail.com>

[ Upstream commit f2581ea2d9f30844c437e348a462027ea25c12e9 ]

The headset microphone on the MECHREVO Wujie 15X Pro requires the
CXT_FIXUP_HEADSET_MIC quirk to function properly. Add the PCI SSID
(0x1d05:0x3012) to the quirk table.

Signed-off-by: gongqi <550230171hxy@gmail.com>
Link: https://patch.msgid.link/20260122155501.376199-5-550230171hxy@gmail.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---

LLM Generated explanations, may be completely bogus:

## Analysis

### Commit Message Analysis

This commit adds a hardware quirk (`CXT_FIXUP_HEADSET_MIC`) for the
MECHREVO Wujie 15X Pro laptop, identified by PCI SSID `0x1d05:0x3012`.
The headset microphone does not function without this quirk entry. This
is a straightforward audio codec quirk addition.

### Code Change Analysis

The change is a single line addition:
```c
SND_PCI_QUIRK(0x1d05, 0x3012, "MECHREVO Wujie 15X Pro",
CXT_FIXUP_HEADSET_MIC),
```

This adds a PCI SSID entry to the `cxt5066_fixups[]` quirk table in the
Conexant HDA codec driver. The `CXT_FIXUP_HEADSET_MIC` fixup already
exists in the driver — this just associates a new device's PCI subsystem
ID with that existing fixup.

### Classification

This falls squarely into the **hardware quirk** exception category. As
documented in the stable kernel rules analysis:

- **Audio codec quirks** (`SND_PCI_QUIRK` entries for specific laptop
models) are explicitly listed as YES for stable
- The quirk type (`CXT_FIXUP_HEADSET_MIC`) already exists in the driver
- Only the device identification (PCI SSID) is new
- This fixes a real user-facing problem: the headset microphone doesn't
work at all without it

### Scope and Risk Assessment

- **Lines changed**: 1 (single line addition)
- **Files changed**: 1 (`sound/hda/codecs/conexant.c`)
- **Risk**: Essentially zero. The `SND_PCI_QUIRK` macro only matches the
specific PCI SSID `0x1d05:0x3012`. It cannot affect any other
hardware.
- **Dependencies**: None. The `CXT_FIXUP_HEADSET_MIC` fixup code already
exists in the driver.

### User Impact

Without this quirk, the headset microphone on the MECHREVO Wujie 15X Pro
laptop is completely non-functional. This is a real hardware enablement
issue affecting actual users of this specific laptop model. Audio input
is a basic expected functionality.

### Stability Indicators

- Accepted by Takashi Iwai, the ALSA subsystem maintainer
- The pattern is identical to dozens of other quirk entries in the same
table
- The fixup mechanism (`CXT_FIXUP_HEADSET_MIC`) is well-tested and used
for other devices

### Conclusion

This is a textbook example of a stable-worthy hardware quirk addition: a
single-line `SND_PCI_QUIRK` entry that enables existing functionality
for a specific device. Zero risk of regression, fixes a real hardware
issue, trivially small, and completely self-contained.

**YES**

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 5fcbc1312c697..2384e64eada36 100644
--- a/sound/hda/codecs/conexant.c
+++ b/sound/hda/codecs/conexant.c
@@ -1123,6 +1123,7 @@ static const struct hda_quirk cxt5066_fixups[] = {
SND_PCI_QUIRK_VENDOR(0x17aa, "Thinkpad/Ideapad", CXT_FIXUP_LENOVO_XPAD_ACPI),
SND_PCI_QUIRK(0x1c06, 0x2011, "Lemote A1004", CXT_PINCFG_LEMOTE_A1004),
SND_PCI_QUIRK(0x1c06, 0x2012, "Lemote A1205", CXT_PINCFG_LEMOTE_A1205),
+ SND_PCI_QUIRK(0x1d05, 0x3012, "MECHREVO Wujie 15X Pro", CXT_FIXUP_HEADSET_MIC),
HDA_CODEC_QUIRK(0x2782, 0x12c3, "Sirius Gen1", CXT_PINCFG_TOP_SPEAKER),
HDA_CODEC_QUIRK(0x2782, 0x12c5, "Sirius Gen2", CXT_PINCFG_TOP_SPEAKER),
{}
--
2.51.0