]>
Commit | Line | Data |
---|---|---|
2cb7cef9 BS |
1 | From 3ea0d7cf472c6118bb8c0842d606f5436251e179 Mon Sep 17 00:00:00 2001 |
2 | From: Herton Ronaldo Krzesinski <herton@mandriva.com.br> | |
3 | Date: Wed, 4 Mar 2009 14:22:50 -0300 | |
4 | Subject: ALSA: hda - Add 4 channel mode for 3stack-hp model (ALC888) | |
5 | Patch-mainline: | |
6 | References: bnc#482796 | |
7 | ||
8 | Add additional 4 channel mode for 3stack-hp models. | |
9 | ||
10 | Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br> | |
11 | Signed-off-by: Takashi Iwai <tiwai@suse.de> | |
12 | ||
13 | --- | |
14 | sound/pci/hda/patch_realtek.c | 27 ++++++++++++++++++++++++--- | |
15 | 1 file changed, 24 insertions(+), 3 deletions(-) | |
16 | ||
17 | --- a/sound/pci/hda/patch_realtek.c | |
18 | +++ b/sound/pci/hda/patch_realtek.c | |
19 | @@ -7865,24 +7865,45 @@ static struct hda_verb alc888_6st_dell_v | |
20 | { } | |
21 | }; | |
22 | ||
23 | +/* | |
24 | + * 2ch mode | |
25 | + */ | |
26 | static struct hda_verb alc888_3st_hp_2ch_init[] = { | |
27 | { 0x18, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_VREF80 }, | |
28 | { 0x18, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_MUTE }, | |
29 | { 0x16, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_IN }, | |
30 | { 0x16, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_MUTE }, | |
31 | - { } | |
32 | + { } /* end */ | |
33 | +}; | |
34 | + | |
35 | +/* | |
36 | + * 4ch mode | |
37 | + */ | |
38 | +static struct hda_verb alc888_3st_hp_4ch_init[] = { | |
39 | + { 0x18, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_VREF80 }, | |
40 | + { 0x18, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_MUTE }, | |
41 | + { 0x16, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT }, | |
42 | + { 0x16, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_UNMUTE }, | |
43 | + { 0x16, AC_VERB_SET_CONNECT_SEL, 0x01 }, | |
44 | + { } /* end */ | |
45 | }; | |
46 | ||
47 | +/* | |
48 | + * 6ch mode | |
49 | + */ | |
50 | static struct hda_verb alc888_3st_hp_6ch_init[] = { | |
51 | { 0x18, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT }, | |
52 | { 0x18, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_UNMUTE }, | |
53 | + { 0x18, AC_VERB_SET_CONNECT_SEL, 0x02 }, | |
54 | { 0x16, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT }, | |
55 | { 0x16, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_UNMUTE }, | |
56 | - { } | |
57 | + { 0x16, AC_VERB_SET_CONNECT_SEL, 0x01 }, | |
58 | + { } /* end */ | |
59 | }; | |
60 | ||
61 | -static struct hda_channel_mode alc888_3st_hp_modes[2] = { | |
62 | +static struct hda_channel_mode alc888_3st_hp_modes[3] = { | |
63 | { 2, alc888_3st_hp_2ch_init }, | |
64 | + { 4, alc888_3st_hp_4ch_init }, | |
65 | { 6, alc888_3st_hp_6ch_init }, | |
66 | }; | |
67 |