Commit 52a8efab authored by Takashi Iwai's avatar Takashi Iwai

ALSA: hda/realtek - Assign Master mixer when possible

There are a few more cases where we can assign "Master" mixer element
safely, e.g. when a single DAC is used in the whole output paths.

Also, when vmaster hook is present, avoid "Master" but assign "PCM"
instead.  Otherwise vmaster hook won't work properly.
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent 3bd7b644
...@@ -2306,7 +2306,14 @@ static const char *alc_get_line_out_pfx(struct alc_spec *spec, int ch, ...@@ -2306,7 +2306,14 @@ static const char *alc_get_line_out_pfx(struct alc_spec *spec, int ch,
*index = 0; *index = 0;
if (cfg->line_outs == 1 && !spec->multi_ios && if (cfg->line_outs == 1 && !spec->multi_ios &&
!cfg->hp_outs && !cfg->speaker_outs && can_be_master) !cfg->hp_outs && !cfg->speaker_outs && can_be_master)
return "Master"; return spec->vmaster_mute.hook ? "PCM" : "Master";
/* if there is really a single DAC used in the whole output paths,
* use it master (or "PCM" if a vmaster hook is present)
*/
if (spec->multiout.num_dacs == 1 && !spec->mixer_nid &&
!spec->multiout.hp_out_nid[0] && !spec->multiout.extra_out_nid[0])
return spec->vmaster_mute.hook ? "PCM" : "Master";
switch (cfg->line_out_type) { switch (cfg->line_out_type) {
case AUTO_PIN_SPEAKER_OUT: case AUTO_PIN_SPEAKER_OUT:
......
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