Commit 4f7f67fb authored by Takashi Iwai's avatar Takashi Iwai

ALSA: hda - Add missing initialization of aamix paths

The loopback mixing paths aren't initialized correctly at init
callback.  Mostly this is harmless as codecs usually set the mute
state as default, but we still should make sure.
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent c9e4bdb7
...@@ -5140,6 +5140,23 @@ static void init_multi_io(struct hda_codec *codec) ...@@ -5140,6 +5140,23 @@ static void init_multi_io(struct hda_codec *codec)
} }
} }
static void init_aamix_paths(struct hda_codec *codec)
{
struct hda_gen_spec *spec = codec->spec;
if (!spec->have_aamix_ctl)
return;
update_aamix_paths(codec, spec->aamix_mode, spec->out_paths[0],
spec->aamix_out_paths[0],
spec->autocfg.line_out_type);
update_aamix_paths(codec, spec->aamix_mode, spec->hp_paths[0],
spec->aamix_out_paths[1],
AUTO_PIN_HP_OUT);
update_aamix_paths(codec, spec->aamix_mode, spec->speaker_paths[0],
spec->aamix_out_paths[2],
AUTO_PIN_SPEAKER_OUT);
}
/* set up input pins and loopback paths */ /* set up input pins and loopback paths */
static void init_analog_input(struct hda_codec *codec) static void init_analog_input(struct hda_codec *codec)
{ {
...@@ -5242,6 +5259,7 @@ int snd_hda_gen_init(struct hda_codec *codec) ...@@ -5242,6 +5259,7 @@ int snd_hda_gen_init(struct hda_codec *codec)
init_multi_out(codec); init_multi_out(codec);
init_extra_out(codec); init_extra_out(codec);
init_multi_io(codec); init_multi_io(codec);
init_aamix_paths(codec);
init_analog_input(codec); init_analog_input(codec);
init_input_src(codec); init_input_src(codec);
init_digital(codec); init_digital(codec);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment