aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/hda/patch_realtek.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2009-02-11 05:35:15 -0500
committerTakashi Iwai <tiwai@suse.de>2009-02-11 18:04:19 -0500
commit0852d7a654f75d22a3c09fd7da4a3551bbb37740 (patch)
tree36cb4ec6ddd8a5b2ffa06e4d951282b3435b371b /sound/pci/hda/patch_realtek.c
parent32d2c7fa1344ddf51886eddf31e228d139501dc6 (diff)
ALSA: hda - Detect multiple digital-out pins
Detect multiple digital-out pins in snd_hda_parse_pin_defconfig(). The dig_out_pin and dig_out_type fields become arrays. The codec parser still doesn't use this multiple pins detection, though. Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/patch_realtek.c')
-rw-r--r--sound/pci/hda/patch_realtek.c20
1 files changed, 10 insertions, 10 deletions
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index 1db99df79502..e46251bceb9d 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -4291,7 +4291,7 @@ static int alc880_parse_auto_config(struct hda_codec *codec)
4291 4291
4292 spec->multiout.max_channels = spec->multiout.num_dacs * 2; 4292 spec->multiout.max_channels = spec->multiout.num_dacs * 2;
4293 4293
4294 if (spec->autocfg.dig_out_pin) 4294 if (spec->autocfg.dig_outs)
4295 spec->multiout.dig_out_nid = ALC880_DIGOUT_NID; 4295 spec->multiout.dig_out_nid = ALC880_DIGOUT_NID;
4296 if (spec->autocfg.dig_in_pin) 4296 if (spec->autocfg.dig_in_pin)
4297 spec->dig_in_nid = ALC880_DIGIN_NID; 4297 spec->dig_in_nid = ALC880_DIGIN_NID;
@@ -5658,7 +5658,7 @@ static int alc260_parse_auto_config(struct hda_codec *codec)
5658 5658
5659 spec->multiout.max_channels = 2; 5659 spec->multiout.max_channels = 2;
5660 5660
5661 if (spec->autocfg.dig_out_pin) 5661 if (spec->autocfg.dig_outs)
5662 spec->multiout.dig_out_nid = ALC260_DIGOUT_NID; 5662 spec->multiout.dig_out_nid = ALC260_DIGOUT_NID;
5663 if (spec->kctls.list) 5663 if (spec->kctls.list)
5664 add_mixer(spec, spec->kctls.list); 5664 add_mixer(spec, spec->kctls.list);
@@ -10626,7 +10626,7 @@ static int alc262_parse_auto_config(struct hda_codec *codec)
10626 if (err < 0) 10626 if (err < 0)
10627 return err; 10627 return err;
10628 if (!spec->autocfg.line_outs) { 10628 if (!spec->autocfg.line_outs) {
10629 if (spec->autocfg.dig_out_pin || spec->autocfg.dig_in_pin) { 10629 if (spec->autocfg.dig_outs || spec->autocfg.dig_in_pin) {
10630 spec->multiout.max_channels = 2; 10630 spec->multiout.max_channels = 2;
10631 spec->no_analog = 1; 10631 spec->no_analog = 1;
10632 goto dig_only; 10632 goto dig_only;
@@ -10643,9 +10643,9 @@ static int alc262_parse_auto_config(struct hda_codec *codec)
10643 spec->multiout.max_channels = spec->multiout.num_dacs * 2; 10643 spec->multiout.max_channels = spec->multiout.num_dacs * 2;
10644 10644
10645 dig_only: 10645 dig_only:
10646 if (spec->autocfg.dig_out_pin) { 10646 if (spec->autocfg.dig_outs) {
10647 spec->multiout.dig_out_nid = ALC262_DIGOUT_NID; 10647 spec->multiout.dig_out_nid = ALC262_DIGOUT_NID;
10648 spec->dig_out_type = spec->autocfg.dig_out_type; 10648 spec->dig_out_type = spec->autocfg.dig_out_type[0];
10649 } 10649 }
10650 if (spec->autocfg.dig_in_pin) 10650 if (spec->autocfg.dig_in_pin)
10651 spec->dig_in_nid = ALC262_DIGIN_NID; 10651 spec->dig_in_nid = ALC262_DIGIN_NID;
@@ -11807,7 +11807,7 @@ static int alc268_parse_auto_config(struct hda_codec *codec)
11807 spec->multiout.max_channels = 2; 11807 spec->multiout.max_channels = 2;
11808 11808
11809 /* digital only support output */ 11809 /* digital only support output */
11810 if (spec->autocfg.dig_out_pin) 11810 if (spec->autocfg.dig_outs)
11811 spec->multiout.dig_out_nid = ALC268_DIGOUT_NID; 11811 spec->multiout.dig_out_nid = ALC268_DIGOUT_NID;
11812 11812
11813 if (spec->kctls.list) 11813 if (spec->kctls.list)
@@ -12722,7 +12722,7 @@ static int alc269_parse_auto_config(struct hda_codec *codec)
12722 12722
12723 spec->multiout.max_channels = spec->multiout.num_dacs * 2; 12723 spec->multiout.max_channels = spec->multiout.num_dacs * 2;
12724 12724
12725 if (spec->autocfg.dig_out_pin) 12725 if (spec->autocfg.dig_outs)
12726 spec->multiout.dig_out_nid = ALC269_DIGOUT_NID; 12726 spec->multiout.dig_out_nid = ALC269_DIGOUT_NID;
12727 12727
12728 if (spec->kctls.list) 12728 if (spec->kctls.list)
@@ -13779,7 +13779,7 @@ static int alc861_parse_auto_config(struct hda_codec *codec)
13779 13779
13780 spec->multiout.max_channels = spec->multiout.num_dacs * 2; 13780 spec->multiout.max_channels = spec->multiout.num_dacs * 2;
13781 13781
13782 if (spec->autocfg.dig_out_pin) 13782 if (spec->autocfg.dig_outs)
13783 spec->multiout.dig_out_nid = ALC861_DIGOUT_NID; 13783 spec->multiout.dig_out_nid = ALC861_DIGOUT_NID;
13784 13784
13785 if (spec->kctls.list) 13785 if (spec->kctls.list)
@@ -14881,7 +14881,7 @@ static int alc861vd_parse_auto_config(struct hda_codec *codec)
14881 14881
14882 spec->multiout.max_channels = spec->multiout.num_dacs * 2; 14882 spec->multiout.max_channels = spec->multiout.num_dacs * 2;
14883 14883
14884 if (spec->autocfg.dig_out_pin) 14884 if (spec->autocfg.dig_outs)
14885 spec->multiout.dig_out_nid = ALC861VD_DIGOUT_NID; 14885 spec->multiout.dig_out_nid = ALC861VD_DIGOUT_NID;
14886 14886
14887 if (spec->kctls.list) 14887 if (spec->kctls.list)
@@ -16689,7 +16689,7 @@ static int alc662_parse_auto_config(struct hda_codec *codec)
16689 16689
16690 spec->multiout.max_channels = spec->multiout.num_dacs * 2; 16690 spec->multiout.max_channels = spec->multiout.num_dacs * 2;
16691 16691
16692 if (spec->autocfg.dig_out_pin) 16692 if (spec->autocfg.dig_outs)
16693 spec->multiout.dig_out_nid = ALC880_DIGOUT_NID; 16693 spec->multiout.dig_out_nid = ALC880_DIGOUT_NID;
16694 16694
16695 if (spec->kctls.list) 16695 if (spec->kctls.list)