Message ID | 20200703080005.8942-2-benjamin.poirier@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Fix Lenovo ThinkPad X1 Carbon 7th gen bass volume | expand |
On Fri, 03 Jul 2020 10:00:04 +0200, Benjamin Poirier wrote: > > 1) > In snd_hda_pick_fixup(), quirks are first matched by PCI SSID and then, if > there is no match, by codec SSID. The Lenovo "ThinkPad X1 Carbon 7th" has > an audio chip with PCI SSID 0x2292 and codec SSID 0x2293[1]. Therefore, fix > the quirk meant for that device to match on .subdevice == 0x2292. > > 2) > The "Thinkpad X1 Yoga 7th" does not exist. The companion product to the > Carbon 7th is the Yoga 4th. That device has an audio chip with PCI SSID > 0x2292 and codec SSID 0x2292[2]. Given the behavior of > snd_hda_pick_fixup(), it is not possible to have a separate quirk for the > Yoga based on SSID. Therefore, merge the quirks meant for the Carbon and > Yoga. This preserves the current behavior for the Yoga. > > [1] This is the case on my own machine and can also be checked here > https://github.com/linuxhw/LsPCI/tree/master/Notebook/Lenovo/ThinkPad > https://gist.github.com/hamidzr/dd81e429dc86f4327ded7a2030e7d7d9#gistcomment-3225701 > [2] > https://github.com/linuxhw/LsPCI/tree/master/Convertible/Lenovo/ThinkPad > https://gist.github.com/hamidzr/dd81e429dc86f4327ded7a2030e7d7d9#gistcomment-3176355 > > Fixes: d2cd795c4ece ("ALSA: hda - fixup for the bass speaker on Lenovo Carbon X1 7th gen") > Fixes: 54a6a7dc107d ("ALSA: hda/realtek - Add quirk for the bass speaker on Lenovo Yoga X1 7th gen") > Cc: Jaroslav Kysela <perex@perex.cz> > Cc: Kailang Yang <kailang@realtek.com> > Tested-by: Vincent Bernat <vincent@bernat.ch> > Tested-by: Even Brenden <evenbrenden@gmail.com> > Signed-off-by: Benjamin Poirier <benjamin.poirier@gmail.com> Applied this one alone for now. Let me check the second patch later. thanks, Takashi
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c index 5a11ac2d446d..16696694da91 100644 --- a/sound/pci/hda/patch_realtek.c +++ b/sound/pci/hda/patch_realtek.c @@ -7559,8 +7559,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = { SND_PCI_QUIRK(0x17aa, 0x224c, "Thinkpad", ALC298_FIXUP_TPT470_DOCK), SND_PCI_QUIRK(0x17aa, 0x224d, "Thinkpad", ALC298_FIXUP_TPT470_DOCK), SND_PCI_QUIRK(0x17aa, 0x225d, "Thinkpad T480", ALC269_FIXUP_LIMIT_INT_MIC_BOOST), - SND_PCI_QUIRK(0x17aa, 0x2292, "Thinkpad X1 Yoga 7th", ALC285_FIXUP_THINKPAD_HEADSET_JACK), - SND_PCI_QUIRK(0x17aa, 0x2293, "Thinkpad X1 Carbon 7th", ALC285_FIXUP_THINKPAD_HEADSET_JACK), + SND_PCI_QUIRK(0x17aa, 0x2292, "Thinkpad X1 Carbon 7th", ALC285_FIXUP_THINKPAD_HEADSET_JACK), SND_PCI_QUIRK(0x17aa, 0x22be, "Thinkpad X1 Carbon 8th", ALC285_FIXUP_THINKPAD_HEADSET_JACK), SND_PCI_QUIRK(0x17aa, 0x30bb, "ThinkCentre AIO", ALC233_FIXUP_LENOVO_LINE2_MIC_HOTKEY), SND_PCI_QUIRK(0x17aa, 0x30e2, "ThinkCentre AIO", ALC233_FIXUP_LENOVO_LINE2_MIC_HOTKEY),