Commit 675c1aa3 authored by Takashi Iwai's avatar Takashi Iwai

ALSA: hda - Fix output-path initialization for Realtek auto-parser

When the headphone or speaker output has no own DAC, initialize the path
using the primary DAC.  Otherwise the path won't be set properly and
can result in the silence.
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent de75577c
...@@ -3083,16 +3083,22 @@ static void alc_auto_init_multi_out(struct hda_codec *codec) ...@@ -3083,16 +3083,22 @@ static void alc_auto_init_multi_out(struct hda_codec *codec)
static void alc_auto_init_extra_out(struct hda_codec *codec) static void alc_auto_init_extra_out(struct hda_codec *codec)
{ {
struct alc_spec *spec = codec->spec; struct alc_spec *spec = codec->spec;
hda_nid_t pin; hda_nid_t pin, dac;
pin = spec->autocfg.hp_pins[0]; pin = spec->autocfg.hp_pins[0];
if (pin) if (pin) {
alc_auto_set_output_and_unmute(codec, pin, PIN_HP, dac = spec->multiout.hp_nid;
spec->multiout.hp_nid); if (!dac)
dac = spec->multiout.dac_nids[0];
alc_auto_set_output_and_unmute(codec, pin, PIN_HP, dac);
}
pin = spec->autocfg.speaker_pins[0]; pin = spec->autocfg.speaker_pins[0];
if (pin) if (pin) {
alc_auto_set_output_and_unmute(codec, pin, PIN_OUT, dac = spec->multiout.extra_out_nid[0];
spec->multiout.extra_out_nid[0]); if (!dac)
dac = spec->multiout.dac_nids[0];
alc_auto_set_output_and_unmute(codec, pin, PIN_OUT, dac);
}
} }
/* /*
......
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