Преглед на файлове

ALSA: hda - Add fixup-call in init callback

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>
Takashi Iwai преди 14 години
родител
ревизия
5870112021
променени са 1 файла, в които са добавени 4 реда и са изтрити 1 реда
  1. 4 1
      sound/pci/hda/patch_realtek.c

+ 4 - 1
sound/pci/hda/patch_realtek.c

@@ -1714,6 +1714,7 @@ enum {
 enum {
 enum {
 	ALC_FIXUP_ACT_PRE_PROBE,
 	ALC_FIXUP_ACT_PRE_PROBE,
 	ALC_FIXUP_ACT_PROBE,
 	ALC_FIXUP_ACT_PROBE,
+	ALC_FIXUP_ACT_INIT,
 };
 };
 
 
 static void alc_apply_fixup(struct hda_codec *codec, int action)
 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)
 	if (spec->init_hook)
 		spec->init_hook(codec);
 		spec->init_hook(codec);
 
 
+	alc_apply_fixup(codec, ALC_FIXUP_ACT_INIT);
+
 	hda_call_check_power_status(codec, 0x01);
 	hda_call_check_power_status(codec, 0x01);
 	return 0;
 	return 0;
 }
 }
@@ -14871,7 +14874,7 @@ static void alc269_fixup_hweq(struct hda_codec *codec,
 {
 {
 	int coef;
 	int coef;
 
 
-	if (action != ALC_FIXUP_ACT_PROBE)
+	if (action != ALC_FIXUP_ACT_INIT)
 		return;
 		return;
 	coef = alc_read_coef_idx(codec, 0x1e);
 	coef = alc_read_coef_idx(codec, 0x1e);
 	alc_write_coef_idx(codec, 0x1e, coef | 0x80);
 	alc_write_coef_idx(codec, 0x1e, coef | 0x80);