mirror of
https://github.com/torvalds/linux.git
synced 2026-06-10 07:32:29 +02:00
ALSA: hda/realtek - Fix detection of ALC271X codec
commit9f720bb940upstream. In commitaf741c1("ALSA: hda/realtek - Call alc_auto_parse_customize_define() always after fixup"), alc_auto_parse_customize_define was moved after detection of ALC271X. The problem is that detection of ALC271X relies on spec->cdefine.platform_type, and it's set on alc_auto_parse_customize_define. Move the alc_auto_parse_customize_define and its required fixup setup before the block doing the ALC271X and other codec setup. BugLink: https://bugs.launchpad.net/bugs/1006690 Signed-off-by: Herton Ronaldo Krzesinski <herton.krzesinski@canonical.com> Reviewed-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
4ca1a84f73
commit
c8ab5d973c
|
|
@ -6307,6 +6307,12 @@ static int patch_alc269(struct hda_codec *codec)
|
|||
if (err < 0)
|
||||
goto error;
|
||||
|
||||
alc_pick_fixup(codec, alc269_fixup_models,
|
||||
alc269_fixup_tbl, alc269_fixups);
|
||||
alc_apply_fixup(codec, ALC_FIXUP_ACT_PRE_PROBE);
|
||||
|
||||
alc_auto_parse_customize_define(codec);
|
||||
|
||||
if (codec->vendor_id == 0x10ec0269) {
|
||||
spec->codec_variant = ALC269_TYPE_ALC269VA;
|
||||
switch (alc_get_coef0(codec) & 0x00f0) {
|
||||
|
|
@ -6331,12 +6337,6 @@ static int patch_alc269(struct hda_codec *codec)
|
|||
alc269_fill_coef(codec);
|
||||
}
|
||||
|
||||
alc_pick_fixup(codec, alc269_fixup_models,
|
||||
alc269_fixup_tbl, alc269_fixups);
|
||||
alc_apply_fixup(codec, ALC_FIXUP_ACT_PRE_PROBE);
|
||||
|
||||
alc_auto_parse_customize_define(codec);
|
||||
|
||||
/* automatic parse from the BIOS config */
|
||||
err = alc269_parse_auto_config(codec);
|
||||
if (err < 0)
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user