Re: [PATCH] ALSA: hda/realtek: Fix Lenovo Yoga Slim 7 14AKP10 quirk ordering
Takashi Iwai <[email protected]>
| Newsgroups | gmane.linux.sound,gmane.linux.kernel |
|---|---|
| Message-ID | <[email protected]> |
On Mon, 17 Aug 2026 09:25:14 +0200, Zhang Heng wrote: > > > From 9ee7af1cfe25ab0000000000000000000000000 Mon Sep 17 00:00:00 2001 > From: Zhang Heng <[email protected]> > Date: Mon, 17 Aug 2026 10:00:00 +0800 > Subject: [PATCH v2] ALSA: hda/realtek: Fix Lenovo Yoga Slim 7 14AKP10 quirk > ordering > > The Yoga Slim 7 14AKP10 has a PCI SSID of 17aa:38b4 but a codec SSID of > 17aa:391a. The current quirk table contains a PCI quirk for 17aa:38b4 > (for the Legion Slim 7 16IRH8) which matches first, so the codec-specific > quirk for 17aa:391a is never applied. > > This results in the wrong fixup being used (CS35L41_I2C_2 instead of the > correct bass speaker fixup), leaving the internal speakers misconfigured > or silent. > > Remove the 17aa:391a entry from its PCI-SSID-sorted position and add it as > an HDA_CODEC_QUIRK directly before the 17aa:38b4 entry, because it must > match on the codec subsystem ID rather than the PCI SSID and it has to win > over the colliding PCI quirk for the Legion Slim 7 16IRH8. A comment is > added to explain the out-of-order placement, following the same style > already used for the 17aa:38bb and 17aa:38f9 codec-SSID overrides. > > With this change, the correct ALC287_FIXUP_YOGA9_14IAP7_BASS_SPK_PIN is > applied, restoring speaker output and auto-mute functionality. > > The original quirk added in commit e6c888202297 ("ALSA: hda/realtek: Add > quirk for Lenovo Yoga Slim 7 14AKP10") matched on the PCI SSID 17aa:391a, > but this model actually exposes PCI SSID 17aa:38b4 (shared with the Legion > Slim 7 16IRH8), so that quirk never matched and the bass speaker remained > silent. Fix it by matching on the codec SSID and placing the entry before > the colliding 17aa:38b4 PCI quirk. > > Fixes: e6c888202297 ("ALSA: hda/realtek: Add quirk for Lenovo Yoga Slim 7 14AKP10") > Cc: [email protected] > Link: https://bugzilla.kernel.org/show_bug.cgi?id=221298 > Signed-off-by: Zhang Heng <[email protected]> > --- > Changes in v2 (per review feedback from Takashi Iwai): > - Move the 17aa:391a HDA_CODEC_QUIRK to before the 17aa:38b4 entry so > that it actually takes precedence over the Legion Slim 7 16IRH8 PCI > quirk; the v1 placement (after 17aa:38b4) could never be reached. > - Add a comment explaining the unexpected, out-of-sort positioning. > - Add Fixes: e6c888202297 (the original non-matching quirk) and > Cc: [email protected] so the real fix is backported to v7.0.x. This looks like an attachment, and I suppose it's accidental. Could you resubmit properly? thanks, Takashi