mirror of https://gitee.com/openkylin/linux.git
ALSA: hda/realtek - Fix pop noise on Lenovo P50 & co
Some Lenovo laptops, e.g. Lenovo P50, showed the pop noise at resume or runtime resume. It turned out to be reduced by applying alc_no_shutup() just like TPT440 quirk does. Since there are many Lenovo models showing the same behavior, put this workaround in ALC269_FIXUP_THINKPAD_ACPI entry so that it's applied commonly to all such Lenovo machines. Reported-by: Hans de Goede <hdegoede@redhat.com> Tested-by: Benjamin Berg <bberg@redhat.com> Cc: <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
ce397d215c
commit
d5a6cabf02
|
@ -4995,7 +4995,6 @@ static void alc_fixup_tpt440_dock(struct hda_codec *codec,
|
|||
struct alc_spec *spec = codec->spec;
|
||||
|
||||
if (action == HDA_FIXUP_ACT_PRE_PROBE) {
|
||||
spec->shutup = alc_no_shutup; /* reduce click noise */
|
||||
spec->reboot_notify = alc_d3_at_reboot; /* reduce noise */
|
||||
spec->parse_flags = HDA_PINCFG_NO_HP_FIXUP;
|
||||
codec->power_save_node = 0; /* avoid click noises */
|
||||
|
@ -5394,6 +5393,13 @@ static void alc274_fixup_bind_dacs(struct hda_codec *codec,
|
|||
/* for hda_fixup_thinkpad_acpi() */
|
||||
#include "thinkpad_helper.c"
|
||||
|
||||
static void alc_fixup_thinkpad_acpi(struct hda_codec *codec,
|
||||
const struct hda_fixup *fix, int action)
|
||||
{
|
||||
alc_fixup_no_shutup(codec, fix, action); /* reduce click noise */
|
||||
hda_fixup_thinkpad_acpi(codec, fix, action);
|
||||
}
|
||||
|
||||
/* for dell wmi mic mute led */
|
||||
#include "dell_wmi_helper.c"
|
||||
|
||||
|
@ -5946,7 +5952,7 @@ static const struct hda_fixup alc269_fixups[] = {
|
|||
},
|
||||
[ALC269_FIXUP_THINKPAD_ACPI] = {
|
||||
.type = HDA_FIXUP_FUNC,
|
||||
.v.func = hda_fixup_thinkpad_acpi,
|
||||
.v.func = alc_fixup_thinkpad_acpi,
|
||||
.chained = true,
|
||||
.chain_id = ALC269_FIXUP_SKU_IGNORE,
|
||||
},
|
||||
|
|
Loading…
Reference in New Issue