Lines 111-116
Link Here
|
111 |
ALC883_3ST_6ch, |
111 |
ALC883_3ST_6ch, |
112 |
ALC883_6ST_DIG, |
112 |
ALC883_6ST_DIG, |
113 |
ALC888_DEMO_BOARD, |
113 |
ALC888_DEMO_BOARD, |
|
|
114 |
ALC883_ACER, |
114 |
ALC883_AUTO, |
115 |
ALC883_AUTO, |
115 |
ALC883_MODEL_LAST, |
116 |
ALC883_MODEL_LAST, |
116 |
}; |
117 |
}; |
Lines 4956-4961
Link Here
|
4956 |
{ } |
4957 |
{ } |
4957 |
}; |
4958 |
}; |
4958 |
|
4959 |
|
|
|
4960 |
static struct hda_verb alc883_acer_init_verbs[] = { |
4961 |
/* On TravelMate laptops, GPIO 0 enables the internal speaker and |
4962 |
* the headphone jack. Turn this on and rely on the standard mute |
4963 |
* methods whenever the user wants to turn these outputs off. |
4964 |
*/ |
4965 |
{0x01, AC_VERB_SET_GPIO_MASK, 0x01}, |
4966 |
{0x01, AC_VERB_SET_GPIO_DIRECTION, 0x01}, |
4967 |
{0x01, AC_VERB_SET_GPIO_DATA, 0x01}, |
4968 |
/* ADC1: mute amp left and right */ |
4969 |
{0x08, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(0)}, |
4970 |
{0x08, AC_VERB_SET_CONNECT_SEL, 0x00}, |
4971 |
/* ADC2: mute amp left and right */ |
4972 |
{0x09, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(0)}, |
4973 |
{0x09, AC_VERB_SET_CONNECT_SEL, 0x00}, |
4974 |
/* Front mixer: unmute input/output amp left and right (volume = 0) */ |
4975 |
{0x0c, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_ZERO}, |
4976 |
{0x0c, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(0)}, |
4977 |
{0x0c, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(1)}, |
4978 |
/* Rear mixer */ |
4979 |
{0x0d, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_ZERO}, |
4980 |
{0x0d, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(0)}, |
4981 |
{0x0d, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(1)}, |
4982 |
/* CLFE mixer */ |
4983 |
{0x0e, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_ZERO}, |
4984 |
{0x0e, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(0)}, |
4985 |
{0x0e, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(1)}, |
4986 |
/* Side mixer */ |
4987 |
{0x0f, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_ZERO}, |
4988 |
{0x0f, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(0)}, |
4989 |
{0x0f, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(1)}, |
4990 |
|
4991 |
{0x0b, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(0)}, |
4992 |
{0x0b, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(1)}, |
4993 |
{0x0b, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(2)}, |
4994 |
{0x0b, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(3)}, |
4995 |
{0x0b, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(4)}, |
4996 |
|
4997 |
/* Front Pin: output 0 (0x0c) */ |
4998 |
{0x14, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT}, |
4999 |
{0x14, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_UNMUTE}, |
5000 |
{0x14, AC_VERB_SET_CONNECT_SEL, 0x00}, |
5001 |
/* Rear Pin: output 1 (0x0d) */ |
5002 |
{0x15, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT}, |
5003 |
{0x15, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_UNMUTE}, |
5004 |
{0x15, AC_VERB_SET_CONNECT_SEL, 0x01}, |
5005 |
/* CLFE Pin: output 2 (0x0e) */ |
5006 |
{0x16, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT}, |
5007 |
{0x16, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_UNMUTE}, |
5008 |
{0x16, AC_VERB_SET_CONNECT_SEL, 0x02}, |
5009 |
/* Side Pin: output 3 (0x0f) */ |
5010 |
{0x17, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT}, |
5011 |
{0x17, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_UNMUTE}, |
5012 |
{0x17, AC_VERB_SET_CONNECT_SEL, 0x03}, |
5013 |
/* Mic (rear) pin: input vref at 80% */ |
5014 |
{0x18, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_VREF80}, |
5015 |
{0x18, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_MUTE}, |
5016 |
/* Front Mic pin: input vref at 80% */ |
5017 |
{0x19, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_VREF80}, |
5018 |
{0x19, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_MUTE}, |
5019 |
/* Line In pin: input */ |
5020 |
{0x1a, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_IN}, |
5021 |
{0x1a, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_MUTE}, |
5022 |
/* Line-2 In: Headphone output (output 0 - 0x0c) */ |
5023 |
{0x1b, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_HP}, |
5024 |
{0x1b, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_UNMUTE}, |
5025 |
{0x1b, AC_VERB_SET_CONNECT_SEL, 0x00}, |
5026 |
/* CD pin widget for input */ |
5027 |
{0x1c, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_IN}, |
5028 |
|
5029 |
/* FIXME: use matrix-type input source selection */ |
5030 |
/* Mixer elements: 0x18, 19, 1a, 1b, 1c, 1d, 14, 15, 16, 17, 0b */ |
5031 |
/* Input mixer2 */ |
5032 |
{0x23, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(0)}, |
5033 |
{0x23, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(1)}, |
5034 |
{0x23, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(2)}, |
5035 |
{0x23, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(4)}, |
5036 |
/* Input mixer3 */ |
5037 |
{0x22, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(0)}, |
5038 |
{0x22, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(1)}, |
5039 |
{0x22, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(2)}, |
5040 |
{0x22, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(4)}, |
5041 |
{ } |
5042 |
}; |
5043 |
|
4959 |
/* |
5044 |
/* |
4960 |
* generic initialization of ADC, input mixers and output mixers |
5045 |
* generic initialization of ADC, input mixers and output mixers |
4961 |
*/ |
5046 |
*/ |
Lines 5064-5069
Link Here
|
5064 |
{ .pci_subvendor = 0x105b, .pci_subdevice = 0x6668, |
5149 |
{ .pci_subvendor = 0x105b, .pci_subdevice = 0x6668, |
5065 |
.config = ALC883_6ST_DIG }, /* Foxconn */ |
5150 |
.config = ALC883_6ST_DIG }, /* Foxconn */ |
5066 |
{ .modelname = "6stack-dig-demo", .config = ALC888_DEMO_BOARD }, |
5151 |
{ .modelname = "6stack-dig-demo", .config = ALC888_DEMO_BOARD }, |
|
|
5152 |
{ .pci_subvendor = 0x1025, .pci_subdevice = 0/*0x0102*/, .config = ALC883_ACER }, |
5067 |
{ .modelname = "auto", .config = ALC883_AUTO }, |
5153 |
{ .modelname = "auto", .config = ALC883_AUTO }, |
5068 |
{} |
5154 |
{} |
5069 |
}; |
5155 |
}; |
Lines 5134-5139
Link Here
|
5134 |
.channel_mode = alc883_sixstack_modes, |
5220 |
.channel_mode = alc883_sixstack_modes, |
5135 |
.input_mux = &alc883_capture_source, |
5221 |
.input_mux = &alc883_capture_source, |
5136 |
}, |
5222 |
}, |
|
|
5223 |
[ALC883_ACER] = { |
5224 |
.mixers = { alc883_base_mixer, |
5225 |
alc883_chmode_mixer }, |
5226 |
.init_verbs = { alc883_acer_init_verbs }, |
5227 |
.num_dacs = ARRAY_SIZE(alc883_dac_nids), |
5228 |
.dac_nids = alc883_dac_nids, |
5229 |
.num_adc_nids = ARRAY_SIZE(alc883_adc_nids), |
5230 |
.adc_nids = alc883_adc_nids, |
5231 |
.num_channel_mode = ARRAY_SIZE(alc883_3ST_2ch_modes), |
5232 |
.channel_mode = alc883_3ST_2ch_modes, |
5233 |
.input_mux = &alc883_capture_source, |
5234 |
}, |
5137 |
}; |
5235 |
}; |
5138 |
|
5236 |
|
5139 |
|
5237 |
|