Commit cdb17541 authored by Takashi Iwai's avatar Takashi Iwai Committed by Sasha Levin

ALSA: hda - Fix COEF setups for ALC1150 codec

ALC1150 codec seems to need the COEF- and PLL-setups just like its
compatible ALC882 codec.  Some machines (e.g. SunMicro X10SAT) show
the problem like too low output volumes unless the COEF setup is
applied.
Reported-and-tested-by: default avatarDana Goyette <danagoyette@gmail.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>

(cherry picked from commit acf08081)
Signed-off-by: default avatarSasha Levin <sasha.levin@oracle.com>
parent c11138bf
...@@ -4293,18 +4293,17 @@ static int alc_parse_auto_config(struct hda_codec *codec, ...@@ -4293,18 +4293,17 @@ static int alc_parse_auto_config(struct hda_codec *codec,
return 0; /* can't find valid BIOS pin config */ return 0; /* can't find valid BIOS pin config */
} }
if (!spec->no_primary_hp && spec = codec->spec;
cfg->line_out_type == AUTO_PIN_SPEAKER_OUT &&
cfg->line_outs <= cfg->hp_outs) { switch (codec->vendor_id) {
/* use HP as primary out */ case 0x10ec0882:
cfg->speaker_outs = cfg->line_outs; case 0x10ec0885:
memcpy(cfg->speaker_pins, cfg->line_out_pins, case 0x10ec0900:
sizeof(cfg->speaker_pins)); break;
cfg->line_outs = cfg->hp_outs; default:
memcpy(cfg->line_out_pins, cfg->hp_pins, sizeof(cfg->hp_pins)); /* ALC883 and variants */
cfg->hp_outs = 0; alc_fix_pll_init(codec, 0x20, 0x0a, 10);
memset(cfg->hp_pins, 0, sizeof(cfg->hp_pins)); break;
cfg->line_out_type = AUTO_PIN_HP_OUT;
} }
err = alc_auto_fill_dac_nids(codec); err = alc_auto_fill_dac_nids(codec);
......
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