* [PATCH] ALSA: hda: Fix speakers on ThinkBook Plus G3 IAP
@ 2026-10-01 3:39 Zhang Heng
2026-10-03 9:48 ` Takashi Iwai
0 siblings, 1 reply; 2+ messages in thread
From: Zhang Heng @ 2026-10-01 3:39 UTC (permalink / raw)
To: tiwai, perex, david.rhodes, rf
Cc: linux-sound, linux-kernel, patches, Zhang Heng, Harry Nixon
Lenovo ThinkBook Plus G3 IAP shares PCI SSID 17aa:3891 with Yoga Pro
7 14AHP9, but has a different codec SSID (0x17aa3875). Use
HDA_CODEC_QUIRK to select ALC287_FIXUP_CS35L41_I2C_2 and add ACPI
_SUB values 17AA3845/17AA3846 to the CS35L41 property table, since
the BIOS provides no _DSD.
Reported-by: Harry Nixon <harryanixon@yahoo.com>
Closes: https://bugzilla.kernel.org/show_bug.cgi?id=222053
Tested-by: Harry Nixon <harryanixon@yahoo.com>
Signed-off-by: Zhang Heng <zhangheng@kylinos.cn>
---
sound/hda/codecs/realtek/alc269.c | 4 ++++
sound/hda/codecs/side-codecs/cs35l41_hda_property.c | 4 ++++
2 files changed, 8 insertions(+)
diff --git a/sound/hda/codecs/realtek/alc269.c b/sound/hda/codecs/realtek/alc269.c
index c6ef4fa4ee68..b31d326e5120 100644
--- a/sound/hda/codecs/realtek/alc269.c
+++ b/sound/hda/codecs/realtek/alc269.c
@@ -8354,6 +8354,10 @@ static const struct hda_quirk alc269_fixup_tbl[] = {
SND_PCI_QUIRK(0x17aa, 0x3870, "Lenovo Yoga 7 14ARB7", ALC287_FIXUP_YOGA7_14ARB7_I2C),
SND_PCI_QUIRK(0x17aa, 0x3871, "Lenovo ThinkBook 16p Gen 3 ARH", ALC287_FIXUP_YOGA7_14ARB7_I2C),
SND_PCI_QUIRK(0x17aa, 0x3874, "Legion 7i 16IAX7", ALC287_FIXUP_CS35L41_I2C_2),
+ /* Lenovo ThinkBook Plus G3 IAP shares PCI SSID 17aa:3891 with Lenovo Yoga
+ * Pro 7 14AHP9; use codec SSID to distinguish them.
+ */
+ HDA_CODEC_QUIRK(0x17aa, 0x3875, "ThinkBook Plus G3 IAP", ALC287_FIXUP_CS35L41_I2C_2),
SND_PCI_QUIRK(0x17aa, 0x3877, "Lenovo Legion 7 Slim 16ARHA7", ALC287_FIXUP_CS35L41_I2C_2),
SND_PCI_QUIRK(0x17aa, 0x3878, "Lenovo Legion 7 Slim 16ARHA7", ALC287_FIXUP_CS35L41_I2C_2),
SND_PCI_QUIRK(0x17aa, 0x387d, "Yoga S780-16 pro Quad AAC", ALC287_FIXUP_TAS2781_I2C),
diff --git a/sound/hda/codecs/side-codecs/cs35l41_hda_property.c b/sound/hda/codecs/side-codecs/cs35l41_hda_property.c
index 416d7bf3e289..bb30bf786818 100644
--- a/sound/hda/codecs/side-codecs/cs35l41_hda_property.c
+++ b/sound/hda/codecs/side-codecs/cs35l41_hda_property.c
@@ -126,6 +126,8 @@ static const struct cs35l41_config cs35l41_config_table[] = {
{ "10433A60", 2, INTERNAL, { CS35L41_LEFT, CS35L41_RIGHT, 0, 0 }, 1, 2, 0, 1000, 4500, 24 },
{ "17AA3865", 2, EXTERNAL, { CS35L41_LEFT, CS35L41_RIGHT, 0, 0 }, 0, -1, -1, 0, 0, 0 },
{ "17AA3866", 2, EXTERNAL, { CS35L41_LEFT, CS35L41_RIGHT, 0, 0 }, 0, -1, -1, 0, 0, 0 },
+ { "17AA3845", 2, EXTERNAL, { CS35L41_LEFT, CS35L41_RIGHT, 0, 0 }, 0, -1, -1, 0, 0, 0 },
+ { "17AA3846", 2, EXTERNAL, { CS35L41_LEFT, CS35L41_RIGHT, 0, 0 }, 0, -1, -1, 0, 0, 0 },
{ "17AA386E", 2, EXTERNAL, { CS35L41_LEFT, CS35L41_RIGHT, 0, 0 }, 0, 2, -1, 0, 0, 0 },
{ "17AA386F", 2, EXTERNAL, { CS35L41_LEFT, CS35L41_RIGHT, 0, 0 }, 0, -1, -1, 0, 0, 0 },
{ "17AA3874", 2, EXTERNAL, { CS35L41_LEFT, CS35L41_RIGHT, 0, 0 }, 0, -1, -1, 0, 0, 0 },
@@ -551,6 +553,8 @@ static const struct cs35l41_prop_model cs35l41_prop_model_table[] = {
{ "CSC3551", "10433A40", generic_dsd_config },
{ "CSC3551", "10433A50", generic_dsd_config },
{ "CSC3551", "10433A60", generic_dsd_config },
+ { "CSC3551", "17AA3845", generic_dsd_config },
+ { "CSC3551", "17AA3846", generic_dsd_config },
{ "CSC3551", "17AA3865", generic_dsd_config },
{ "CSC3551", "17AA3866", generic_dsd_config },
{ "CSC3551", "17AA386E", generic_dsd_config },
--
2.25.1
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH] ALSA: hda: Fix speakers on ThinkBook Plus G3 IAP
2026-10-01 3:39 [PATCH] ALSA: hda: Fix speakers on ThinkBook Plus G3 IAP Zhang Heng
@ 2026-10-03 9:48 ` Takashi Iwai
0 siblings, 0 replies; 2+ messages in thread
From: Takashi Iwai @ 2026-10-03 9:48 UTC (permalink / raw)
To: Zhang Heng
Cc: tiwai, perex, david.rhodes, rf, linux-sound, linux-kernel,
patches, Harry Nixon
On Thu, 01 Oct 2026 05:39:20 +0200,
Zhang Heng wrote:
>
> Lenovo ThinkBook Plus G3 IAP shares PCI SSID 17aa:3891 with Yoga Pro
> 7 14AHP9, but has a different codec SSID (0x17aa3875). Use
> HDA_CODEC_QUIRK to select ALC287_FIXUP_CS35L41_I2C_2 and add ACPI
> _SUB values 17AA3845/17AA3846 to the CS35L41 property table, since
> the BIOS provides no _DSD.
>
> Reported-by: Harry Nixon <harryanixon@yahoo.com>
> Closes: https://bugzilla.kernel.org/show_bug.cgi?id=222053
> Tested-by: Harry Nixon <harryanixon@yahoo.com>
> Signed-off-by: Zhang Heng <zhangheng@kylinos.cn>
Applied to for-next branch now. Thanks.
Takashi
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-10-03 9:48 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-10-01 3:39 [PATCH] ALSA: hda: Fix speakers on ThinkBook Plus G3 IAP Zhang Heng
2026-10-03 9:48 ` Takashi Iwai
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®