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

Commit 0a3fabe3 authored by David Henningsson's avatar David Henningsson Committed by Takashi Iwai
Browse files

ALSA: HDA: Realtek ALC88x: Do not over-initialize speakers and hp that are primary outputs



Do not initialize again the what has already been initialized as
multi outs, as this breaks surround speakers.

Tested-by: default avatarBartłomiej Żogała <nusch88@gmail.com>
Cc: <stable@kernel.org>
Signed-off-by: default avatarDavid Henningsson <david.henningsson@canonical.com>
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent 7e59e097
Loading
Loading
Loading
Loading
+21 −16
Original line number Diff line number Diff line
@@ -10773,6 +10773,7 @@ static void alc882_auto_init_hp_out(struct hda_codec *codec)
	hda_nid_t pin, dac;
	int i;
	if (spec->autocfg.line_out_type != AUTO_PIN_HP_OUT) {
		for (i = 0; i < ARRAY_SIZE(spec->autocfg.hp_pins); i++) {
			pin = spec->autocfg.hp_pins[i];
			if (!pin)
@@ -10782,6 +10783,9 @@ static void alc882_auto_init_hp_out(struct hda_codec *codec)
				dac = spec->multiout.dac_nids[0]; /* to front */
			alc882_auto_set_output_and_unmute(codec, pin, PIN_HP, dac);
		}
	}
	if (spec->autocfg.line_out_type != AUTO_PIN_SPEAKER_OUT) {
		for (i = 0; i < ARRAY_SIZE(spec->autocfg.speaker_pins); i++) {
			pin = spec->autocfg.speaker_pins[i];
			if (!pin)
@@ -10792,6 +10796,7 @@ static void alc882_auto_init_hp_out(struct hda_codec *codec)
			alc882_auto_set_output_and_unmute(codec, pin, PIN_OUT, dac);
		}
	}
}
static void alc882_auto_init_analog_input(struct hda_codec *codec)
{