ALSA: hda - Add fixup-call in init callback
authorTakashi Iwai <tiwai@suse.de>
Thu, 13 Jan 2011 14:41:45 +0000 (15:41 +0100)
committerTakashi Iwai <tiwai@suse.de>
Thu, 13 Jan 2011 14:42:53 +0000 (15:42 +0100)
In some cases, the fix-up is required in the init callback to be called
both at the first initialization and at the resume.  The new action type
ALC_FIXUP_ACT_INIT is used for this case.

So far, only ALC275_FIXUP_SONY_HWEQ uses this.

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

index a06c9437cdeb0225ada665d516f49741e668f49b..b445ae989421553372c12f62ce571146a7ac17bd 100644 (file)
@@ -1714,6 +1714,7 @@ enum {
 enum {
        ALC_FIXUP_ACT_PRE_PROBE,
        ALC_FIXUP_ACT_PROBE,
+       ALC_FIXUP_ACT_INIT,
 };
 
 static void alc_apply_fixup(struct hda_codec *codec, int action)
@@ -3910,6 +3911,8 @@ static int alc_init(struct hda_codec *codec)
        if (spec->init_hook)
                spec->init_hook(codec);
 
+       alc_apply_fixup(codec, ALC_FIXUP_ACT_INIT);
+
        hda_call_check_power_status(codec, 0x01);
        return 0;
 }
@@ -14871,7 +14874,7 @@ static void alc269_fixup_hweq(struct hda_codec *codec,
 {
        int coef;
 
-       if (action != ALC_FIXUP_ACT_PROBE)
+       if (action != ALC_FIXUP_ACT_INIT)
                return;
        coef = alc_read_coef_idx(codec, 0x1e);
        alc_write_coef_idx(codec, 0x1e, coef | 0x80);