[alsa-devel] [PATCH] ALSA: hda - Fixing speaker noise on two thinkpad machines

Takashi Iwai tiwai at suse.de
Mon Dec 7 16:06:41 CET 2015


On Mon, 07 Dec 2015 16:01:02 +0100,
Hui Wang wrote:
> 
> On 12/07/2015 10:47 PM, Takashi Iwai wrote:
> > On Mon, 07 Dec 2015 15:38:05 +0100,
> > Hui Wang wrote:
> >> On 12/07/2015 10:35 PM, Takashi Iwai wrote:
> >>> On Mon, 07 Dec 2015 15:31:52 +0100,
> >>> Hui Wang wrote:
> >>>> Disable the aamix can fix this problem.
> >>> Which codec do these machines have?
> >> Codec: Realtek ALC293
> >> Address: 0
> >> AFG Function Id: 0x1 (unsol 1)
> >> Vendor Id: 0x10ec0293
> > Hm, and only Thinkpads with this codec suffer?  I mean, there are lots
> > of TPs with ALC292.  Please give more background.
> Recently we enabled two thinkpad laptop models, both of them are based 
> on the Intel skylake platform, and both of them used alc293 to be the 
> analog audio codec. When the machine boot to the ubuntu desktop, there 
> will be a notification sound when greeter dialogue shows up, on these 
> two models, there is noise with the notification sound. By the way, we 
> have 3 SKUs for each model, all of them have this problem.

See how more information you can give instead of a single line :)

> After disable the analog audio loopback, the noise disappears.
> 
> Codec: Realtek ALC293
> Address: 0
> AFG Function Id: 0x1 (unsol 1)
> Vendor Id: 0x10ec0293
> Subsystem Id: 0x17aa2233
> Revision Id: 0x100003
> No Modem Function Group found
> 
> 
> Codec: Realtek ALC293
> Address: 0
> AFG Function Id: 0x1 (unsol 1)
> Vendor Id: 0x10ec0293
> Subsystem Id: 0x17aa504b
> Revision Id: 0x100003
> No Modem Function Group found

My main question was rather whether this fix is specific to new
models, and the old models likely don't need it.  Judging from your
description, I guess so.


Takashi

> >
> > Takashi
> >
> >>> Takashi
> >>>
> >>>> Cc: stable at vger.kernel.org
> >>>> BugLink: https://bugs.launchpad.net/bugs/1523517
> >>>> Signed-off-by: Hui Wang <hui.wang at canonical.com>
> >>>> ---
> >>>>    sound/pci/hda/patch_realtek.c | 9 +++++++++
> >>>>    1 file changed, 9 insertions(+)
> >>>>
> >>>> diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
> >>>> index ebc5362..49b1d36 100644
> >>>> --- a/sound/pci/hda/patch_realtek.c
> >>>> +++ b/sound/pci/hda/patch_realtek.c
> >>>> @@ -4596,6 +4596,7 @@ enum {
> >>>>    	ALC298_FIXUP_DELL1_MIC_NO_PRESENCE,
> >>>>    	ALC275_FIXUP_DELL_XPS,
> >>>>    	ALC256_FIXUP_DELL_XPS_13_HEADPHONE_NOISE,
> >>>> +	ALC293_FIXUP_LENOVO_SPK_NOISE,
> >>>>    };
> >>>>    
> >>>>    static const struct hda_fixup alc269_fixups[] = {
> >>>> @@ -5187,6 +5188,12 @@ static const struct hda_fixup alc269_fixups[] = {
> >>>>    		.chained = true,
> >>>>    		.chain_id = ALC255_FIXUP_DELL1_MIC_NO_PRESENCE
> >>>>    	},
> >>>> +	[ALC293_FIXUP_LENOVO_SPK_NOISE] = {
> >>>> +		.type = HDA_FIXUP_FUNC,
> >>>> +		.v.func = alc_fixup_disable_aamix,
> >>>> +		.chained = true,
> >>>> +		.chain_id = ALC269_FIXUP_THINKPAD_ACPI
> >>>> +	},
> >>>>    };
> >>>>    
> >>>>    static const struct snd_pci_quirk alc269_fixup_tbl[] = {
> >>>> @@ -5334,6 +5341,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
> >>>>    	SND_PCI_QUIRK(0x17aa, 0x2215, "Thinkpad", ALC269_FIXUP_LIMIT_INT_MIC_BOOST),
> >>>>    	SND_PCI_QUIRK(0x17aa, 0x2223, "ThinkPad T550", ALC292_FIXUP_TPT440_DOCK),
> >>>>    	SND_PCI_QUIRK(0x17aa, 0x2226, "ThinkPad X250", ALC292_FIXUP_TPT440_DOCK),
> >>>> +	SND_PCI_QUIRK(0x17aa, 0x2233, "Thinkpad", ALC293_FIXUP_LENOVO_SPK_NOISE),
> >>>>    	SND_PCI_QUIRK(0x17aa, 0x3977, "IdeaPad S210", ALC283_FIXUP_INT_MIC),
> >>>>    	SND_PCI_QUIRK(0x17aa, 0x3978, "IdeaPad Y410P", ALC269_FIXUP_NO_SHUTUP),
> >>>>    	SND_PCI_QUIRK(0x17aa, 0x5013, "Thinkpad", ALC269_FIXUP_LIMIT_INT_MIC_BOOST),
> >>>> @@ -5343,6 +5351,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
> >>>>    	SND_PCI_QUIRK(0x17aa, 0x5034, "Thinkpad T450", ALC292_FIXUP_TPT440_DOCK),
> >>>>    	SND_PCI_QUIRK(0x17aa, 0x5036, "Thinkpad T450s", ALC292_FIXUP_TPT440_DOCK),
> >>>>    	SND_PCI_QUIRK(0x17aa, 0x503c, "Thinkpad L450", ALC292_FIXUP_TPT440_DOCK),
> >>>> +	SND_PCI_QUIRK(0x17aa, 0x504b, "Thinkpad", ALC293_FIXUP_LENOVO_SPK_NOISE),
> >>>>    	SND_PCI_QUIRK(0x17aa, 0x5109, "Thinkpad", ALC269_FIXUP_LIMIT_INT_MIC_BOOST),
> >>>>    	SND_PCI_QUIRK(0x17aa, 0x3bf8, "Quanta FL1", ALC269_FIXUP_PCM_44K),
> >>>>    	SND_PCI_QUIRK(0x17aa, 0x9e54, "LENOVO NB", ALC269_FIXUP_LENOVO_EAPD),
> >>>> -- 
> >>>> 1.9.1
> >>>>
> >>> _______________________________________________
> >>> Alsa-devel mailing list
> >>> Alsa-devel at alsa-project.org
> >>> http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
> >>>
> > _______________________________________________
> > Alsa-devel mailing list
> > Alsa-devel at alsa-project.org
> > http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
> >
> 


More information about the Alsa-devel mailing list