diff options
author | Herton Ronaldo Krzesinski <herton@mandriva.com.br> | 2009-03-04 12:22:50 -0500 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2009-03-04 15:05:11 -0500 |
commit | 3ea0d7cf472c6118bb8c0842d606f5436251e179 (patch) | |
tree | 678f20a8ec10204032e202fa8f5ce3ad5ba36f1a /sound/pci/hda/patch_realtek.c | |
parent | bd6afe3f34d41ed81e0c62a5a2181bb7bd51aebf (diff) |
ALSA: hda - Add 4 channel mode for 3stack-hp model (ALC888)
Add additional 4 channel mode for 3stack-hp models.
Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
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.c | 27 |
1 files changed, 24 insertions, 3 deletions
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c index 8c02f789e4fc..3696ff31838f 100644 --- a/sound/pci/hda/patch_realtek.c +++ b/sound/pci/hda/patch_realtek.c | |||
@@ -8068,24 +8068,45 @@ static struct hda_verb alc888_6st_dell_verbs[] = { | |||
8068 | { } | 8068 | { } |
8069 | }; | 8069 | }; |
8070 | 8070 | ||
8071 | /* | ||
8072 | * 2ch mode | ||
8073 | */ | ||
8071 | static struct hda_verb alc888_3st_hp_2ch_init[] = { | 8074 | static struct hda_verb alc888_3st_hp_2ch_init[] = { |
8072 | { 0x18, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_VREF80 }, | 8075 | { 0x18, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_VREF80 }, |
8073 | { 0x18, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_MUTE }, | 8076 | { 0x18, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_MUTE }, |
8074 | { 0x16, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_IN }, | 8077 | { 0x16, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_IN }, |
8075 | { 0x16, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_MUTE }, | 8078 | { 0x16, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_MUTE }, |
8076 | { } | 8079 | { } /* end */ |
8077 | }; | 8080 | }; |
8078 | 8081 | ||
8082 | /* | ||
8083 | * 4ch mode | ||
8084 | */ | ||
8085 | static struct hda_verb alc888_3st_hp_4ch_init[] = { | ||
8086 | { 0x18, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_VREF80 }, | ||
8087 | { 0x18, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_MUTE }, | ||
8088 | { 0x16, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT }, | ||
8089 | { 0x16, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_UNMUTE }, | ||
8090 | { 0x16, AC_VERB_SET_CONNECT_SEL, 0x01 }, | ||
8091 | { } /* end */ | ||
8092 | }; | ||
8093 | |||
8094 | /* | ||
8095 | * 6ch mode | ||
8096 | */ | ||
8079 | static struct hda_verb alc888_3st_hp_6ch_init[] = { | 8097 | static struct hda_verb alc888_3st_hp_6ch_init[] = { |
8080 | { 0x18, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT }, | 8098 | { 0x18, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT }, |
8081 | { 0x18, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_UNMUTE }, | 8099 | { 0x18, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_UNMUTE }, |
8100 | { 0x18, AC_VERB_SET_CONNECT_SEL, 0x02 }, | ||
8082 | { 0x16, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT }, | 8101 | { 0x16, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT }, |
8083 | { 0x16, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_UNMUTE }, | 8102 | { 0x16, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_UNMUTE }, |
8084 | { } | 8103 | { 0x16, AC_VERB_SET_CONNECT_SEL, 0x01 }, |
8104 | { } /* end */ | ||
8085 | }; | 8105 | }; |
8086 | 8106 | ||
8087 | static struct hda_channel_mode alc888_3st_hp_modes[2] = { | 8107 | static struct hda_channel_mode alc888_3st_hp_modes[3] = { |
8088 | { 2, alc888_3st_hp_2ch_init }, | 8108 | { 2, alc888_3st_hp_2ch_init }, |
8109 | { 4, alc888_3st_hp_4ch_init }, | ||
8089 | { 6, alc888_3st_hp_6ch_init }, | 8110 | { 6, alc888_3st_hp_6ch_init }, |
8090 | }; | 8111 | }; |
8091 | 8112 | ||