Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a4fcd491 authored by Takashi Iwai's avatar Takashi Iwai
Browse files

ALSA: hda - Improve auto-cfg mixer name for ALC861-VD



One more patch to give a better name for the primary output controls,
this time for ALC861-VD codec.  The change is simple, just checking the
pin connection whether it's a speaker-out.  When both speaker and HP
are assigned, we name the volume as "PCM" as this influences on both
outputs.

Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent c3fc1f50
Loading
Loading
Loading
Loading
+14 −2
Original line number Diff line number Diff line
@@ -15233,13 +15233,25 @@ static int alc861vd_auto_create_multi_out_ctls(struct alc_spec *spec,
			if (err < 0)
				return err;
		} else {
			sprintf(name, "%s Playback Volume", chname[i]);
			const char *pfx;
			if (cfg->line_outs == 1 &&
			    cfg->line_out_type == AUTO_PIN_SPEAKER_OUT) {
				if (!cfg->hp_pins)
					pfx = "Speaker";
				else
					pfx = "PCM";
			} else
				pfx = chname[i];
			sprintf(name, "%s Playback Volume", pfx);
			err = add_control(spec, ALC_CTL_WIDGET_VOL, name,
					  HDA_COMPOSE_AMP_VAL(nid_v, 3, 0,
							      HDA_OUTPUT));
			if (err < 0)
				return err;
			sprintf(name, "%s Playback Switch", chname[i]);
			if (cfg->line_outs == 1 &&
			    cfg->line_out_type == AUTO_PIN_SPEAKER_OUT)
				pfx = "Speaker";
			sprintf(name, "%s Playback Switch", pfx);
			err = add_control(spec, ALC_CTL_BIND_MUTE, name,
					  HDA_COMPOSE_AMP_VAL(nid_s, 3, 2,
							      HDA_INPUT));