Commit 7b1655f5 authored by Takashi Iwai's avatar Takashi Iwai
Browse files

ALSA: hda - Re-add need_dac_fix check for multi-io jacks of Realtek codecs



During the rewrite, the check of spec->need_dac_fix and the corresponding
num_dacs change was dropped from the channel-mode control.

This patch re-adds it, and also enables need_dac_fix for ALC880 as default,
as this feature was originally introduced to fix h/w bugs of this chip.

Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent cf01b73e
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -3196,6 +3196,8 @@ static int alc_auto_ch_mode_put(struct snd_kcontrol *kcontrol,
	for (i = 0; i < spec->multi_ios; i++)
		alc_set_multi_io(codec, i, i < ch);
	spec->multiout.max_channels = spec->ext_channel_count;
	if (spec->need_dac_fix && !spec->const_channel_count)
		spec->multiout.num_dacs = spec->multiout.max_channels / 2;
	return 1;
}

@@ -3642,6 +3644,7 @@ static int patch_alc880(struct hda_codec *codec)
	codec->spec = spec;

	spec->mixer_nid = 0x0b;
	spec->need_dac_fix = 1;

	board_config = alc_board_config(codec, ALC880_MODEL_LAST,
					alc880_models, alc880_cfg_tbl);