aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/hda/patch_realtek.c
diff options
context:
space:
mode:
Diffstat (limited to 'sound/pci/hda/patch_realtek.c')
-rw-r--r--sound/pci/hda/patch_realtek.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index 4f006eedd7ef..269dbff70b92 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -10930,6 +10930,9 @@ static int alc_auto_add_mic_boost(struct hda_codec *codec)
10930 return 0; 10930 return 0;
10931} 10931}
10932 10932
10933static int alc861vd_auto_create_multi_out_ctls(struct alc_spec *spec,
10934 const struct auto_pin_cfg *cfg);
10935
10933/* almost identical with ALC880 parser... */ 10936/* almost identical with ALC880 parser... */
10934static int alc882_parse_auto_config(struct hda_codec *codec) 10937static int alc882_parse_auto_config(struct hda_codec *codec)
10935{ 10938{
@@ -10947,7 +10950,10 @@ static int alc882_parse_auto_config(struct hda_codec *codec)
10947 err = alc880_auto_fill_dac_nids(spec, &spec->autocfg); 10950 err = alc880_auto_fill_dac_nids(spec, &spec->autocfg);
10948 if (err < 0) 10951 if (err < 0)
10949 return err; 10952 return err;
10950 err = alc880_auto_create_multi_out_ctls(spec, &spec->autocfg); 10953 if (codec->vendor_id == 0x10ec0887)
10954 err = alc861vd_auto_create_multi_out_ctls(spec, &spec->autocfg);
10955 else
10956 err = alc880_auto_create_multi_out_ctls(spec, &spec->autocfg);
10951 if (err < 0) 10957 if (err < 0)
10952 return err; 10958 return err;
10953 err = alc880_auto_create_extra_out(spec, spec->autocfg.hp_pins[0], 10959 err = alc880_auto_create_extra_out(spec, spec->autocfg.hp_pins[0],
@@ -17128,7 +17134,7 @@ static void alc861vd_auto_init_analog_input(struct hda_codec *codec)
17128#define alc861vd_idx_to_mixer_switch(nid) ((nid) + 0x0c) 17134#define alc861vd_idx_to_mixer_switch(nid) ((nid) + 0x0c)
17129 17135
17130/* add playback controls from the parsed DAC table */ 17136/* add playback controls from the parsed DAC table */
17131/* Based on ALC880 version. But ALC861VD has separate, 17137/* Based on ALC880 version. But ALC861VD and ALC887 have separate,
17132 * different NIDs for mute/unmute switch and volume control */ 17138 * different NIDs for mute/unmute switch and volume control */
17133static int alc861vd_auto_create_multi_out_ctls(struct alc_spec *spec, 17139static int alc861vd_auto_create_multi_out_ctls(struct alc_spec *spec,
17134 const struct auto_pin_cfg *cfg) 17140 const struct auto_pin_cfg *cfg)