[PATCH AUTOSEL 6.19-6.1] ALSA: hda/realtek: Add quirk for Lenovo Yoga Pro 7 14IAH10

From: Sasha Levin

Date: Tue Apr 14 2026 - 07:28:49 EST


From: songxiebing <songxiebing@xxxxxxxxxx>

[ Upstream commit f0541edb2e7333f320642c7b491a67912c1f65db ]

The bass speakers are not working, and add the following entry
in /etc/modprobe.d/snd.conf:
options snd-sof-intel-hda-generic hda_model=alc287-yoga9-bass-spk-pin
Fixes the bass speakers.

So add the quick ALC287_FIXUP_YOGA9_14IAP7_BASS_SPK_PIN here.

Reported-by: Fernando Garcia Corona <fgarcor@xxxxxxxxx>
Closes: https://bugzilla.kernel.org/show_bug.cgi?id=221317
Signed-off-by: songxiebing <songxiebing@xxxxxxxxxx>
Link: https://patch.msgid.link/20260405012651.133838-1-songxiebing@xxxxxxxxxx
Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>
Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>
---

LLM Generated explanations, may be completely bogus:

The fixup `ALC287_FIXUP_YOGA9_14IAP7_BASS_SPK_PIN` was introduced in
v6.0-rc1, so it exists in all active stable trees (6.1.y, 6.6.y, 6.12.y,
etc.).

Record: [Fixup function exists since v6.0, present in all active stable
trees. Clean apply expected — this is a simple table entry addition.]

## PHASE 7: SUBSYSTEM AND MAINTAINER CONTEXT

- **Subsystem:** ALSA/HDA — audio codec driver (IMPORTANT category —
affects laptop users)
- **Maintainer:** Takashi Iwai (signed off) — the ALSA subsystem
maintainer himself accepted this
- **Activity:** Very active — constant stream of quirk additions

Record: [ALSA/HDA, IMPORTANT criticality, accepted by subsystem
maintainer]

## PHASE 8: IMPACT AND RISK ASSESSMENT

### Step 8.1: WHO IS AFFECTED
Users of Lenovo Yoga Pro 7 14IAH10 laptops running Linux.

### Step 8.2: TRIGGER CONDITIONS
Every boot — bass speakers simply don't work without this quirk.

### Step 8.3: FAILURE MODE SEVERITY
Without the quirk: bass speakers are non-functional. This is a hardware
enablement issue.
Severity: MEDIUM (hardware not working, but has a workaround via
modprobe.d).

### Step 8.4: RISK-BENEFIT RATIO
- **Benefit:** HIGH — makes bass speakers work automatically for all
users of this laptop
- **Risk:** ESSENTIALLY ZERO — 1-line table entry, only affects matching
PCI SSID, uses proven fixup function
- **Ratio:** Excellent — high benefit, near-zero risk

Record: [High benefit, zero risk, clear positive ratio]

## PHASE 9: FINAL SYNTHESIS

### Step 9.1: COMPILE THE EVIDENCE
**FOR backporting:**
- Hardware quirk addition — explicit exception category for stable
- 1 line change, zero regression risk
- Uses well-tested fixup already applied to 7+ other Lenovo models
- Real user report with bugzilla entry
- Accepted by ALSA subsystem maintainer Takashi Iwai
- Fixup function exists in all active stable trees (since v6.0)
- Fixes non-working hardware for real users

**AGAINST backporting:**
- (None identified)

### Step 9.2: STABLE RULES CHECKLIST
1. Obviously correct and tested? **YES** — identical pattern to many
existing entries, user-confirmed workaround
2. Fixes a real bug? **YES** — bass speakers don't work
3. Important issue? **YES** — hardware doesn't function properly
4. Small and contained? **YES** — 1 line
5. No new features or APIs? **YES** — just a table entry
6. Can apply to stable? **YES** — the fixup function exists since v6.0

### Step 9.3: EXCEPTION CATEGORIES
This falls into the **Audio Codec Quirk** exception category —
`SND_PCI_QUIRK` entries for specific laptop models. These are explicitly
listed as automatic YES for stable.

## Verification

- [Phase 1] Parsed tags: Reported-by real user, Closes bugzilla link,
maintainer SOB (Takashi Iwai)
- [Phase 2] Diff analysis: +1 line SND_PCI_QUIRK table entry in
alc269_fixup_tbl[]
- [Phase 3] git log -S: ALC287_FIXUP_YOGA9_14IAP7_BASS_SPK_PIN
introduced in commit 3790a3d6dbbc4 (v6.0-rc1)
- [Phase 3] Grep: fixup used by 7+ other Lenovo devices (lines 7571,
7591, 7604, 7607, 7614, 7643, 7927)
- [Phase 3] Recent file history: constant stream of similar quirk
additions
- [Phase 6] Fixup exists since v6.0, present in all active stable trees
(6.1.y, 6.6.y, 6.12.y)
- [Phase 7] Accepted by ALSA maintainer Takashi Iwai
- [Phase 8] Failure mode: non-functional bass speakers, severity MEDIUM,
zero regression risk

This is a textbook stable backport candidate — a single-line hardware
quirk addition to an existing driver, using an already-proven fixup
function, fixing real hardware for real users, with zero regression
risk.

**YES**

sound/hda/codecs/realtek/alc269.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/sound/hda/codecs/realtek/alc269.c b/sound/hda/codecs/realtek/alc269.c
index cb39054bfe79c..c023ca273b6d9 100644
--- a/sound/hda/codecs/realtek/alc269.c
+++ b/sound/hda/codecs/realtek/alc269.c
@@ -7641,6 +7641,7 @@ static const struct hda_quirk alc269_fixup_tbl[] = {
SND_PCI_QUIRK(0x17aa, 0x38fd, "ThinkBook plus Gen5 Hybrid", ALC287_FIXUP_TAS2781_I2C),
SND_PCI_QUIRK(0x17aa, 0x3902, "Lenovo E50-80", ALC269_FIXUP_DMIC_THINKPAD_ACPI),
SND_PCI_QUIRK(0x17aa, 0x390d, "Lenovo Yoga Pro 7 14ASP10", ALC287_FIXUP_YOGA9_14IAP7_BASS_SPK_PIN),
+ SND_PCI_QUIRK(0x17aa, 0x3911, "Lenovo Yoga Pro 7 14IAH10", ALC287_FIXUP_YOGA9_14IAP7_BASS_SPK_PIN),
SND_PCI_QUIRK(0x17aa, 0x3913, "Lenovo 145", ALC236_FIXUP_LENOVO_INV_DMIC),
SND_PCI_QUIRK(0x17aa, 0x391f, "Yoga S990-16 pro Quad YC Quad", ALC287_FIXUP_TXNW2781_I2C),
SND_PCI_QUIRK(0x17aa, 0x3920, "Yoga S990-16 pro Quad VECO Quad", ALC287_FIXUP_TXNW2781_I2C),
--
2.53.0