}
 }
 
+/*
+ * standard auto-parser initializations
+ */
+static void alc_auto_init_std(struct hda_codec *codec)
+{
+       struct alc_spec *spec = codec->spec;
+       alc_auto_init_multi_out(codec);
+       alc_auto_init_extra_out(codec);
+       alc_auto_init_analog_input(codec);
+       alc_auto_init_input_src(codec);
+       alc_auto_init_digital(codec);
+       if (spec->unsol_event)
+               alc_inithook(codec);
+}
+
 /*
  * Digital-beep handlers
  */
        return 1;
 }
 
-/* additional initialization for auto-configuration model */
-static void alc880_auto_init(struct hda_codec *codec)
-{
-       struct alc_spec *spec = codec->spec;
-       alc_auto_init_multi_out(codec);
-       alc_auto_init_extra_out(codec);
-       alc_auto_init_analog_input(codec);
-       alc_auto_init_input_src(codec);
-       alc_auto_init_digital(codec);
-       if (spec->unsol_event)
-               alc_inithook(codec);
-}
-
 #ifdef CONFIG_SND_HDA_POWER_SAVE
 static const struct hda_amp_list alc880_loopbacks[] = {
        { 0x0b, HDA_INPUT, 0 },
 
        codec->patch_ops = alc_patch_ops;
        if (board_config == ALC_MODEL_AUTO)
-               spec->init_hook = alc880_auto_init;
+               spec->init_hook = alc_auto_init_std;
 #ifdef CONFIG_SND_HDA_POWER_SAVE
        if (!spec->loopback.amplist)
                spec->loopback.amplist = alc880_loopbacks;
        return 1; /* config found */
 }
 
-/* additional initialization for auto-configuration model */
-static void alc882_auto_init(struct hda_codec *codec)
-{
-       struct alc_spec *spec = codec->spec;
-       alc_auto_init_multi_out(codec);
-       alc_auto_init_extra_out(codec);
-       alc_auto_init_analog_input(codec);
-       alc_auto_init_input_src(codec);
-       alc_auto_init_digital(codec);
-       if (spec->unsol_event)
-               alc_inithook(codec);
-}
-
 /*
  */
 #ifdef CONFIG_SND_HDA_ENABLE_REALTEK_QUIRKS
 
        codec->patch_ops = alc_patch_ops;
        if (board_config == ALC_MODEL_AUTO)
-               spec->init_hook = alc882_auto_init;
+               spec->init_hook = alc_auto_init_std;
 
        alc_init_jacks(codec);
 #ifdef CONFIG_SND_HDA_POWER_SAVE
 #define alc262_loopbacks       alc880_loopbacks
 #endif
 
-/* init callback for auto-configuration model -- overriding the default init */
-static void alc262_auto_init(struct hda_codec *codec)
-{
-       struct alc_spec *spec = codec->spec;
-       alc_auto_init_multi_out(codec);
-       alc_auto_init_extra_out(codec);
-       alc_auto_init_analog_input(codec);
-       alc_auto_init_input_src(codec);
-       alc_auto_init_digital(codec);
-       if (spec->unsol_event)
-               alc_inithook(codec);
-}
-
 /*
  */
 #ifdef CONFIG_SND_HDA_ENABLE_REALTEK_QUIRKS
 
        codec->patch_ops = alc_patch_ops;
        if (board_config == ALC_MODEL_AUTO)
-               spec->init_hook = alc262_auto_init;
+               spec->init_hook = alc_auto_init_std;
        spec->shutup = alc_eapd_shutup;
 
        alc_init_jacks(codec);
        return 1;
 }
 
-/* additional initialization for auto-configuration model */
-static void alc861vd_auto_init(struct hda_codec *codec)
-{
-       struct alc_spec *spec = codec->spec;
-       alc_auto_init_multi_out(codec);
-       alc_auto_init_extra_out(codec);
-       alc_auto_init_analog_input(codec);
-       alc_auto_init_input_src(codec);
-       alc_auto_init_digital(codec);
-       if (spec->unsol_event)
-               alc_inithook(codec);
-}
-
 enum {
        ALC660VD_FIX_ASUS_GPIO1
 };
        codec->patch_ops = alc_patch_ops;
 
        if (board_config == ALC_MODEL_AUTO)
-               spec->init_hook = alc861vd_auto_init;
+               spec->init_hook = alc_auto_init_std;
        spec->shutup = alc_eapd_shutup;
 #ifdef CONFIG_SND_HDA_POWER_SAVE
        if (!spec->loopback.amplist)
        return 1;
 }
 
-/* additional initialization for auto-configuration model */
-static void alc662_auto_init(struct hda_codec *codec)
-{
-       struct alc_spec *spec = codec->spec;
-       alc_auto_init_multi_out(codec);
-       alc_auto_init_extra_out(codec);
-       alc_auto_init_analog_input(codec);
-       alc_auto_init_input_src(codec);
-       alc_auto_init_digital(codec);
-       if (spec->unsol_event)
-               alc_inithook(codec);
-}
-
 static void alc272_fixup_mario(struct hda_codec *codec,
                               const struct alc_fixup *fix, int action)
 {
 
        codec->patch_ops = alc_patch_ops;
        if (board_config == ALC_MODEL_AUTO)
-               spec->init_hook = alc662_auto_init;
+               spec->init_hook = alc_auto_init_std;
        spec->shutup = alc_eapd_shutup;
 
        alc_init_jacks(codec);
        return 1;
 }
 
-/* init callback for auto-configuration model -- overriding the default init */
-static void alc680_auto_init(struct hda_codec *codec)
-{
-       struct alc_spec *spec = codec->spec;
-       alc_auto_init_multi_out(codec);
-       alc_auto_init_extra_out(codec);
-       alc_auto_init_analog_input(codec);
-       alc_auto_init_input_src(codec);
-       alc_auto_init_digital(codec);
-       if (spec->unsol_event)
-               alc_inithook(codec);
-}
-
 /*
  */
 #ifdef CONFIG_SND_HDA_ENABLE_REALTEK_QUIRKS
 
        codec->patch_ops = alc_patch_ops;
        if (board_config == ALC_MODEL_AUTO)
-               spec->init_hook = alc680_auto_init;
+               spec->init_hook = alc_auto_init_std;
 
        return 0;
 }