[alsa-devel] [PATCH] ALSA: hda - fixup for the bass speaker on Lenovo Carbon X1 7th gen

Benjamin Poirier benjamin.poirier at gmail.com
Mon Feb 10 04:04:16 CET 2020


On 2020/02/10 11:52 +0900, Benjamin Poirier wrote:
> On 2019/11/29 15:40 +0100, Jaroslav Kysela wrote:
> > The auto-parser assigns the bass speaker to DAC3 (NID 0x06) which
> > is without the volume control. I do not see a reason to use DAC2,
> > because the shared output to all speakers produces the sufficient
> > and well balanced sound. The stereo support is enough for this
> > purpose (laptop).
> > 
> > Signed-off-by: Jaroslav Kysela <perex at perex.cz>
> > ---
> >  sound/pci/hda/patch_realtek.c | 17 +++++++++++++++++
> >  1 file changed, 17 insertions(+)
> 
> This patch is now commit d2cd795c4ece ("ALSA: hda - fixup for the bass
> speaker on Lenovo Carbon X1 7th gen"). There was then followup commit
> 86353aa70ed0 ("ALSA: hda/realtek - Add quirk for the bass speaker on
> Lenovo Yoga X1 7th gen").

Sorry, commit id 86353aa70ed0 is the backport on stable/linux-5.4.y
branch, mainline id is:
54a6a7dc107d ("ALSA: hda/realtek - Add quirk for the bass speaker on
Lenovo Yoga X1 7th gen")

> 
> As a result of those, the maximum sound output level on my laptop
> reduced to ~60% of what it used to be.
> 
> Moreover, the quirk name is inaccurate. I have a "ThinkPad X1 Carbon
> 7th" (as confirmed by dmidecode) and its audio device id is:
>         Subsystem: Lenovo Cannon Point-LP High Definition Audio Controller [17aa:2292]
> but the patches list:
> 	SND_PCI_QUIRK(0x17aa, 0x2292, "Thinkpad X1 Yoga 7th", ALC285_FIXUP_SPEAKER2_TO_DAC1),
> 	SND_PCI_QUIRK(0x17aa, 0x2293, "Thinkpad X1 Carbon 7th", ALC295_FIXUP_DISABLE_DAC3),
> (notice the mixup of id 0x2292).
> 
> Applying the following diff brings the volume back to previous levels
> and brings functional volume control:
> 
> diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
> index 68832f52c1ad..ed41e3fb5566 100644
> --- a/sound/pci/hda/patch_realtek.c
> +++ b/sound/pci/hda/patch_realtek.c
> @@ -7260,7 +7260,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_SPEAKER2_TO_DAC1),
> +	SND_PCI_QUIRK(0x17aa, 0x2292, "Thinkpad X1 Yoga 7th", ALC295_FIXUP_DISABLE_DAC3),
>  	SND_PCI_QUIRK(0x17aa, 0x2293, "Thinkpad X1 Carbon 7th", ALC285_FIXUP_SPEAKER2_TO_DAC1),
>  	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),
> 
> I can send a patch to fix the problems for my laptop but then I don't
> know what's up for other devices that built on
> ALC285_FIXUP_SPEAKER2_TO_DAC1.


More information about the Alsa-devel mailing list