ALSA: hda - Fix ALC272X codec detection
authorTakashi Iwai <tiwai@suse.de>
Thu, 21 Jun 2012 13:49:33 +0000 (15:49 +0200)
committerTakashi Iwai <tiwai@suse.de>
Thu, 21 Jun 2012 13:52:57 +0000 (15:52 +0200)
The codec ALC272X is a special codec for some Dell machines, and its
detection got broken in the recent kernel because SSID check (required
by ALC272X check) was moved to the later point.  Now we need to move
this codec check to the right place, too.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/patch_realtek.c

index f8f4906e498ddd447ff27df2d33b3bf51282af86..41475ae0e7692778bc9ce2c55d74884aa1a8006b 100644 (file)
@@ -6705,6 +6705,12 @@ static int patch_alc662(struct hda_codec *codec)
 
        alc_fix_pll_init(codec, 0x20, 0x04, 15);
 
+       alc_pick_fixup(codec, alc662_fixup_models,
+                      alc662_fixup_tbl, alc662_fixups);
+       alc_apply_fixup(codec, ALC_FIXUP_ACT_PRE_PROBE);
+
+       alc_auto_parse_customize_define(codec);
+
        if ((alc_get_coef0(codec) & (1 << 14)) &&
            codec->bus->pci->subsystem_vendor == 0x1025 &&
            spec->cdefine.platform_type == 1) {
@@ -6712,12 +6718,6 @@ static int patch_alc662(struct hda_codec *codec)
                        goto error;
        }
 
-       alc_pick_fixup(codec, alc662_fixup_models,
-                      alc662_fixup_tbl, alc662_fixups);
-       alc_apply_fixup(codec, ALC_FIXUP_ACT_PRE_PROBE);
-
-       alc_auto_parse_customize_define(codec);
-
        /* automatic parse from the BIOS config */
        err = alc662_parse_auto_config(codec);
        if (err < 0)