diff options
Diffstat (limited to 'sound/soc/codecs/wm5110.c')
-rw-r--r-- | sound/soc/codecs/wm5110.c | 79 |
1 files changed, 63 insertions, 16 deletions
diff --git a/sound/soc/codecs/wm5110.c b/sound/soc/codecs/wm5110.c index bf47914234b3..9211e4192f71 100644 --- a/sound/soc/codecs/wm5110.c +++ b/sound/soc/codecs/wm5110.c | |||
@@ -153,6 +153,15 @@ SOC_ENUM("LHPF2 Mode", arizona_lhpf2_mode), | |||
153 | SOC_ENUM("LHPF3 Mode", arizona_lhpf3_mode), | 153 | SOC_ENUM("LHPF3 Mode", arizona_lhpf3_mode), |
154 | SOC_ENUM("LHPF4 Mode", arizona_lhpf4_mode), | 154 | SOC_ENUM("LHPF4 Mode", arizona_lhpf4_mode), |
155 | 155 | ||
156 | ARIZONA_MIXER_CONTROLS("DSP1L", ARIZONA_DSP1LMIX_INPUT_1_SOURCE), | ||
157 | ARIZONA_MIXER_CONTROLS("DSP1R", ARIZONA_DSP1RMIX_INPUT_1_SOURCE), | ||
158 | ARIZONA_MIXER_CONTROLS("DSP2L", ARIZONA_DSP2LMIX_INPUT_1_SOURCE), | ||
159 | ARIZONA_MIXER_CONTROLS("DSP2R", ARIZONA_DSP2RMIX_INPUT_1_SOURCE), | ||
160 | ARIZONA_MIXER_CONTROLS("DSP3L", ARIZONA_DSP3LMIX_INPUT_1_SOURCE), | ||
161 | ARIZONA_MIXER_CONTROLS("DSP3R", ARIZONA_DSP3RMIX_INPUT_1_SOURCE), | ||
162 | ARIZONA_MIXER_CONTROLS("DSP4L", ARIZONA_DSP4LMIX_INPUT_1_SOURCE), | ||
163 | ARIZONA_MIXER_CONTROLS("DSP5R", ARIZONA_DSP4RMIX_INPUT_1_SOURCE), | ||
164 | |||
156 | ARIZONA_MIXER_CONTROLS("Mic", ARIZONA_MICMIX_INPUT_1_SOURCE), | 165 | ARIZONA_MIXER_CONTROLS("Mic", ARIZONA_MICMIX_INPUT_1_SOURCE), |
157 | ARIZONA_MIXER_CONTROLS("Noise", ARIZONA_NOISEMIX_INPUT_1_SOURCE), | 166 | ARIZONA_MIXER_CONTROLS("Noise", ARIZONA_NOISEMIX_INPUT_1_SOURCE), |
158 | 167 | ||
@@ -163,7 +172,8 @@ ARIZONA_MIXER_CONTROLS("HPOUT1L", ARIZONA_OUT1LMIX_INPUT_1_SOURCE), | |||
163 | ARIZONA_MIXER_CONTROLS("HPOUT1R", ARIZONA_OUT1RMIX_INPUT_1_SOURCE), | 172 | ARIZONA_MIXER_CONTROLS("HPOUT1R", ARIZONA_OUT1RMIX_INPUT_1_SOURCE), |
164 | ARIZONA_MIXER_CONTROLS("HPOUT2L", ARIZONA_OUT2LMIX_INPUT_1_SOURCE), | 173 | ARIZONA_MIXER_CONTROLS("HPOUT2L", ARIZONA_OUT2LMIX_INPUT_1_SOURCE), |
165 | ARIZONA_MIXER_CONTROLS("HPOUT2R", ARIZONA_OUT2RMIX_INPUT_1_SOURCE), | 174 | ARIZONA_MIXER_CONTROLS("HPOUT2R", ARIZONA_OUT2RMIX_INPUT_1_SOURCE), |
166 | ARIZONA_MIXER_CONTROLS("EPOUT", ARIZONA_OUT3LMIX_INPUT_1_SOURCE), | 175 | ARIZONA_MIXER_CONTROLS("HPOUT3L", ARIZONA_OUT3LMIX_INPUT_1_SOURCE), |
176 | ARIZONA_MIXER_CONTROLS("HPOUT3R", ARIZONA_OUT3RMIX_INPUT_1_SOURCE), | ||
167 | ARIZONA_MIXER_CONTROLS("SPKOUTL", ARIZONA_OUT4LMIX_INPUT_1_SOURCE), | 177 | ARIZONA_MIXER_CONTROLS("SPKOUTL", ARIZONA_OUT4LMIX_INPUT_1_SOURCE), |
168 | ARIZONA_MIXER_CONTROLS("SPKOUTR", ARIZONA_OUT4RMIX_INPUT_1_SOURCE), | 178 | ARIZONA_MIXER_CONTROLS("SPKOUTR", ARIZONA_OUT4RMIX_INPUT_1_SOURCE), |
169 | ARIZONA_MIXER_CONTROLS("SPKDAT1L", ARIZONA_OUT5LMIX_INPUT_1_SOURCE), | 179 | ARIZONA_MIXER_CONTROLS("SPKDAT1L", ARIZONA_OUT5LMIX_INPUT_1_SOURCE), |
@@ -175,7 +185,7 @@ SOC_SINGLE("HPOUT1 High Performance Switch", ARIZONA_OUTPUT_PATH_CONFIG_1L, | |||
175 | ARIZONA_OUT1_OSR_SHIFT, 1, 0), | 185 | ARIZONA_OUT1_OSR_SHIFT, 1, 0), |
176 | SOC_SINGLE("OUT2 High Performance Switch", ARIZONA_OUTPUT_PATH_CONFIG_2L, | 186 | SOC_SINGLE("OUT2 High Performance Switch", ARIZONA_OUTPUT_PATH_CONFIG_2L, |
177 | ARIZONA_OUT2_OSR_SHIFT, 1, 0), | 187 | ARIZONA_OUT2_OSR_SHIFT, 1, 0), |
178 | SOC_SINGLE("EPOUT High Performance Switch", ARIZONA_OUTPUT_PATH_CONFIG_3L, | 188 | SOC_SINGLE("OUT3 High Performance Switch", ARIZONA_OUTPUT_PATH_CONFIG_3L, |
179 | ARIZONA_OUT3_OSR_SHIFT, 1, 0), | 189 | ARIZONA_OUT3_OSR_SHIFT, 1, 0), |
180 | SOC_SINGLE("Speaker High Performance Switch", ARIZONA_OUTPUT_PATH_CONFIG_4L, | 190 | SOC_SINGLE("Speaker High Performance Switch", ARIZONA_OUTPUT_PATH_CONFIG_4L, |
181 | ARIZONA_OUT4_OSR_SHIFT, 1, 0), | 191 | ARIZONA_OUT4_OSR_SHIFT, 1, 0), |
@@ -188,8 +198,8 @@ SOC_DOUBLE_R("HPOUT1 Digital Switch", ARIZONA_DAC_DIGITAL_VOLUME_1L, | |||
188 | ARIZONA_DAC_DIGITAL_VOLUME_1R, ARIZONA_OUT1L_MUTE_SHIFT, 1, 1), | 198 | ARIZONA_DAC_DIGITAL_VOLUME_1R, ARIZONA_OUT1L_MUTE_SHIFT, 1, 1), |
189 | SOC_DOUBLE_R("OUT2 Digital Switch", ARIZONA_DAC_DIGITAL_VOLUME_2L, | 199 | SOC_DOUBLE_R("OUT2 Digital Switch", ARIZONA_DAC_DIGITAL_VOLUME_2L, |
190 | ARIZONA_DAC_DIGITAL_VOLUME_2R, ARIZONA_OUT2L_MUTE_SHIFT, 1, 1), | 200 | ARIZONA_DAC_DIGITAL_VOLUME_2R, ARIZONA_OUT2L_MUTE_SHIFT, 1, 1), |
191 | SOC_SINGLE("EPOUT Digital Switch", ARIZONA_DAC_DIGITAL_VOLUME_3L, | 201 | SOC_DOUBLE_R("OUT3 Digital Switch", ARIZONA_DAC_DIGITAL_VOLUME_3L, |
192 | ARIZONA_OUT3L_MUTE_SHIFT, 1, 1), | 202 | ARIZONA_DAC_DIGITAL_VOLUME_3R, ARIZONA_OUT3L_MUTE_SHIFT, 1, 1), |
193 | SOC_DOUBLE_R("Speaker Digital Switch", ARIZONA_DAC_DIGITAL_VOLUME_4L, | 203 | SOC_DOUBLE_R("Speaker Digital Switch", ARIZONA_DAC_DIGITAL_VOLUME_4L, |
194 | ARIZONA_DAC_DIGITAL_VOLUME_4R, ARIZONA_OUT4L_MUTE_SHIFT, 1, 1), | 204 | ARIZONA_DAC_DIGITAL_VOLUME_4R, ARIZONA_OUT4L_MUTE_SHIFT, 1, 1), |
195 | SOC_DOUBLE_R("SPKDAT1 Digital Switch", ARIZONA_DAC_DIGITAL_VOLUME_5L, | 205 | SOC_DOUBLE_R("SPKDAT1 Digital Switch", ARIZONA_DAC_DIGITAL_VOLUME_5L, |
@@ -203,8 +213,9 @@ SOC_DOUBLE_R_TLV("HPOUT1 Digital Volume", ARIZONA_DAC_DIGITAL_VOLUME_1L, | |||
203 | SOC_DOUBLE_R_TLV("OUT2 Digital Volume", ARIZONA_DAC_DIGITAL_VOLUME_2L, | 213 | SOC_DOUBLE_R_TLV("OUT2 Digital Volume", ARIZONA_DAC_DIGITAL_VOLUME_2L, |
204 | ARIZONA_DAC_DIGITAL_VOLUME_2R, ARIZONA_OUT2L_VOL_SHIFT, | 214 | ARIZONA_DAC_DIGITAL_VOLUME_2R, ARIZONA_OUT2L_VOL_SHIFT, |
205 | 0xbf, 0, digital_tlv), | 215 | 0xbf, 0, digital_tlv), |
206 | SOC_SINGLE_TLV("EPOUT Digital Volume", ARIZONA_DAC_DIGITAL_VOLUME_3L, | 216 | SOC_DOUBLE_R_TLV("OUT3 Digital Volume", ARIZONA_DAC_DIGITAL_VOLUME_3L, |
207 | ARIZONA_OUT3L_VOL_SHIFT, 0xbf, 0, digital_tlv), | 217 | ARIZONA_DAC_DIGITAL_VOLUME_3R, ARIZONA_OUT3L_VOL_SHIFT, |
218 | 0xbf, 0, digital_tlv), | ||
208 | SOC_DOUBLE_R_TLV("Speaker Digital Volume", ARIZONA_DAC_DIGITAL_VOLUME_4L, | 219 | SOC_DOUBLE_R_TLV("Speaker Digital Volume", ARIZONA_DAC_DIGITAL_VOLUME_4L, |
209 | ARIZONA_DAC_DIGITAL_VOLUME_4R, ARIZONA_OUT4L_VOL_SHIFT, | 220 | ARIZONA_DAC_DIGITAL_VOLUME_4R, ARIZONA_OUT4L_VOL_SHIFT, |
210 | 0xbf, 0, digital_tlv), | 221 | 0xbf, 0, digital_tlv), |
@@ -223,8 +234,9 @@ SOC_DOUBLE_R_RANGE_TLV("OUT2 Volume", ARIZONA_OUTPUT_PATH_CONFIG_2L, | |||
223 | ARIZONA_OUTPUT_PATH_CONFIG_2R, | 234 | ARIZONA_OUTPUT_PATH_CONFIG_2R, |
224 | ARIZONA_OUT2L_PGA_VOL_SHIFT, | 235 | ARIZONA_OUT2L_PGA_VOL_SHIFT, |
225 | 0x34, 0x40, 0, ana_tlv), | 236 | 0x34, 0x40, 0, ana_tlv), |
226 | SOC_SINGLE_RANGE_TLV("EPOUT Volume", ARIZONA_OUTPUT_PATH_CONFIG_3L, | 237 | SOC_DOUBLE_R_RANGE_TLV("OUT3 Volume", ARIZONA_OUTPUT_PATH_CONFIG_3L, |
227 | ARIZONA_OUT3L_PGA_VOL_SHIFT, 0x34, 0x40, 0, ana_tlv), | 238 | ARIZONA_OUTPUT_PATH_CONFIG_3R, |
239 | ARIZONA_OUT3L_PGA_VOL_SHIFT, 0x34, 0x40, 0, ana_tlv), | ||
228 | 240 | ||
229 | SOC_DOUBLE("SPKDAT1 Switch", ARIZONA_PDM_SPK1_CTRL_1, ARIZONA_SPK1L_MUTE_SHIFT, | 241 | SOC_DOUBLE("SPKDAT1 Switch", ARIZONA_PDM_SPK1_CTRL_1, ARIZONA_SPK1L_MUTE_SHIFT, |
230 | ARIZONA_SPK1R_MUTE_SHIFT, 1, 1), | 242 | ARIZONA_SPK1R_MUTE_SHIFT, 1, 1), |
@@ -272,7 +284,8 @@ ARIZONA_MIXER_ENUMS(OUT1L, ARIZONA_OUT1LMIX_INPUT_1_SOURCE); | |||
272 | ARIZONA_MIXER_ENUMS(OUT1R, ARIZONA_OUT1RMIX_INPUT_1_SOURCE); | 284 | ARIZONA_MIXER_ENUMS(OUT1R, ARIZONA_OUT1RMIX_INPUT_1_SOURCE); |
273 | ARIZONA_MIXER_ENUMS(OUT2L, ARIZONA_OUT2LMIX_INPUT_1_SOURCE); | 285 | ARIZONA_MIXER_ENUMS(OUT2L, ARIZONA_OUT2LMIX_INPUT_1_SOURCE); |
274 | ARIZONA_MIXER_ENUMS(OUT2R, ARIZONA_OUT2RMIX_INPUT_1_SOURCE); | 286 | ARIZONA_MIXER_ENUMS(OUT2R, ARIZONA_OUT2RMIX_INPUT_1_SOURCE); |
275 | ARIZONA_MIXER_ENUMS(OUT3, ARIZONA_OUT3LMIX_INPUT_1_SOURCE); | 287 | ARIZONA_MIXER_ENUMS(OUT3L, ARIZONA_OUT3LMIX_INPUT_1_SOURCE); |
288 | ARIZONA_MIXER_ENUMS(OUT3R, ARIZONA_OUT3RMIX_INPUT_1_SOURCE); | ||
276 | ARIZONA_MIXER_ENUMS(SPKOUTL, ARIZONA_OUT4LMIX_INPUT_1_SOURCE); | 289 | ARIZONA_MIXER_ENUMS(SPKOUTL, ARIZONA_OUT4LMIX_INPUT_1_SOURCE); |
277 | ARIZONA_MIXER_ENUMS(SPKOUTR, ARIZONA_OUT4RMIX_INPUT_1_SOURCE); | 290 | ARIZONA_MIXER_ENUMS(SPKOUTR, ARIZONA_OUT4RMIX_INPUT_1_SOURCE); |
278 | ARIZONA_MIXER_ENUMS(SPKDAT1L, ARIZONA_OUT5LMIX_INPUT_1_SOURCE); | 291 | ARIZONA_MIXER_ENUMS(SPKDAT1L, ARIZONA_OUT5LMIX_INPUT_1_SOURCE); |
@@ -300,6 +313,26 @@ ARIZONA_MIXER_ENUMS(ASRC1R, ARIZONA_ASRC1RMIX_INPUT_1_SOURCE); | |||
300 | ARIZONA_MIXER_ENUMS(ASRC2L, ARIZONA_ASRC2LMIX_INPUT_1_SOURCE); | 313 | ARIZONA_MIXER_ENUMS(ASRC2L, ARIZONA_ASRC2LMIX_INPUT_1_SOURCE); |
301 | ARIZONA_MIXER_ENUMS(ASRC2R, ARIZONA_ASRC2RMIX_INPUT_1_SOURCE); | 314 | ARIZONA_MIXER_ENUMS(ASRC2R, ARIZONA_ASRC2RMIX_INPUT_1_SOURCE); |
302 | 315 | ||
316 | static const char *wm5110_aec_loopback_texts[] = { | ||
317 | "HPOUT1L", "HPOUT1R", "HPOUT2L", "HPOUT2R", "HPOUT3L", "HPOUT3R", | ||
318 | "SPKOUTL", "SPKOUTR", "SPKDAT1L", "SPKDAT1R", "SPKDAT2L", "SPKDAT2R", | ||
319 | }; | ||
320 | |||
321 | static const unsigned int wm5110_aec_loopback_values[] = { | ||
322 | 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, | ||
323 | }; | ||
324 | |||
325 | static const struct soc_enum wm5110_aec_loopback = | ||
326 | SOC_VALUE_ENUM_SINGLE(ARIZONA_DAC_AEC_CONTROL_1, | ||
327 | ARIZONA_AEC_LOOPBACK_SRC_SHIFT, | ||
328 | ARIZONA_AEC_LOOPBACK_SRC_MASK, | ||
329 | ARRAY_SIZE(wm5110_aec_loopback_texts), | ||
330 | wm5110_aec_loopback_texts, | ||
331 | wm5110_aec_loopback_values); | ||
332 | |||
333 | static const struct snd_kcontrol_new wm5110_aec_loopback_mux = | ||
334 | SOC_DAPM_VALUE_ENUM("AEC Loopback", wm5110_aec_loopback); | ||
335 | |||
303 | static const struct snd_soc_dapm_widget wm5110_dapm_widgets[] = { | 336 | static const struct snd_soc_dapm_widget wm5110_dapm_widgets[] = { |
304 | SND_SOC_DAPM_SUPPLY("SYSCLK", ARIZONA_SYSTEM_CLOCK_1, ARIZONA_SYSCLK_ENA_SHIFT, | 337 | SND_SOC_DAPM_SUPPLY("SYSCLK", ARIZONA_SYSTEM_CLOCK_1, ARIZONA_SYSCLK_ENA_SHIFT, |
305 | 0, NULL, 0), | 338 | 0, NULL, 0), |
@@ -313,7 +346,7 @@ SND_SOC_DAPM_SUPPLY("ASYNCOPCLK", ARIZONA_OUTPUT_ASYNC_CLOCK, | |||
313 | SND_SOC_DAPM_REGULATOR_SUPPLY("DBVDD2", 0, 0), | 346 | SND_SOC_DAPM_REGULATOR_SUPPLY("DBVDD2", 0, 0), |
314 | SND_SOC_DAPM_REGULATOR_SUPPLY("DBVDD3", 0, 0), | 347 | SND_SOC_DAPM_REGULATOR_SUPPLY("DBVDD3", 0, 0), |
315 | SND_SOC_DAPM_REGULATOR_SUPPLY("CPVDD", 20, 0), | 348 | SND_SOC_DAPM_REGULATOR_SUPPLY("CPVDD", 20, 0), |
316 | SND_SOC_DAPM_REGULATOR_SUPPLY("MICVDD", 0, 0), | 349 | SND_SOC_DAPM_REGULATOR_SUPPLY("MICVDD", 0, SND_SOC_DAPM_REGULATOR_BYPASS), |
317 | SND_SOC_DAPM_REGULATOR_SUPPLY("SPKVDDL", 0, 0), | 350 | SND_SOC_DAPM_REGULATOR_SUPPLY("SPKVDDL", 0, 0), |
318 | SND_SOC_DAPM_REGULATOR_SUPPLY("SPKVDDR", 0, 0), | 351 | SND_SOC_DAPM_REGULATOR_SUPPLY("SPKVDDR", 0, 0), |
319 | 352 | ||
@@ -409,6 +442,9 @@ SND_SOC_DAPM_PGA("ASRC2L", ARIZONA_ASRC_ENABLE, ARIZONA_ASRC2L_ENA_SHIFT, 0, | |||
409 | SND_SOC_DAPM_PGA("ASRC2R", ARIZONA_ASRC_ENABLE, ARIZONA_ASRC2R_ENA_SHIFT, 0, | 442 | SND_SOC_DAPM_PGA("ASRC2R", ARIZONA_ASRC_ENABLE, ARIZONA_ASRC2R_ENA_SHIFT, 0, |
410 | NULL, 0), | 443 | NULL, 0), |
411 | 444 | ||
445 | SND_SOC_DAPM_VALUE_MUX("AEC Loopback", ARIZONA_DAC_AEC_CONTROL_1, | ||
446 | ARIZONA_AEC_LOOPBACK_ENA, 0, &wm5110_aec_loopback_mux), | ||
447 | |||
412 | SND_SOC_DAPM_AIF_OUT("AIF1TX1", NULL, 0, | 448 | SND_SOC_DAPM_AIF_OUT("AIF1TX1", NULL, 0, |
413 | ARIZONA_AIF1_TX_ENABLES, ARIZONA_AIF1TX1_ENA_SHIFT, 0), | 449 | ARIZONA_AIF1_TX_ENABLES, ARIZONA_AIF1TX1_ENA_SHIFT, 0), |
414 | SND_SOC_DAPM_AIF_OUT("AIF1TX2", NULL, 0, | 450 | SND_SOC_DAPM_AIF_OUT("AIF1TX2", NULL, 0, |
@@ -478,6 +514,9 @@ SND_SOC_DAPM_PGA_E("OUT2R", ARIZONA_OUTPUT_ENABLES_1, | |||
478 | SND_SOC_DAPM_PGA_E("OUT3L", ARIZONA_OUTPUT_ENABLES_1, | 514 | SND_SOC_DAPM_PGA_E("OUT3L", ARIZONA_OUTPUT_ENABLES_1, |
479 | ARIZONA_OUT3L_ENA_SHIFT, 0, NULL, 0, arizona_out_ev, | 515 | ARIZONA_OUT3L_ENA_SHIFT, 0, NULL, 0, arizona_out_ev, |
480 | SND_SOC_DAPM_PRE_PMD | SND_SOC_DAPM_POST_PMU), | 516 | SND_SOC_DAPM_PRE_PMD | SND_SOC_DAPM_POST_PMU), |
517 | SND_SOC_DAPM_PGA_E("OUT3R", ARIZONA_OUTPUT_ENABLES_1, | ||
518 | ARIZONA_OUT3R_ENA_SHIFT, 0, NULL, 0, arizona_out_ev, | ||
519 | SND_SOC_DAPM_PRE_PMD | SND_SOC_DAPM_POST_PMU), | ||
481 | SND_SOC_DAPM_PGA_E("OUT4L", ARIZONA_OUTPUT_ENABLES_1, | 520 | SND_SOC_DAPM_PGA_E("OUT4L", ARIZONA_OUTPUT_ENABLES_1, |
482 | ARIZONA_OUT4L_ENA_SHIFT, 0, NULL, 0, arizona_out_ev, | 521 | ARIZONA_OUT4L_ENA_SHIFT, 0, NULL, 0, arizona_out_ev, |
483 | SND_SOC_DAPM_PRE_PMD | SND_SOC_DAPM_POST_PMU), | 522 | SND_SOC_DAPM_PRE_PMD | SND_SOC_DAPM_POST_PMU), |
@@ -522,7 +561,8 @@ ARIZONA_MIXER_WIDGETS(OUT1L, "HPOUT1L"), | |||
522 | ARIZONA_MIXER_WIDGETS(OUT1R, "HPOUT1R"), | 561 | ARIZONA_MIXER_WIDGETS(OUT1R, "HPOUT1R"), |
523 | ARIZONA_MIXER_WIDGETS(OUT2L, "HPOUT2L"), | 562 | ARIZONA_MIXER_WIDGETS(OUT2L, "HPOUT2L"), |
524 | ARIZONA_MIXER_WIDGETS(OUT2R, "HPOUT2R"), | 563 | ARIZONA_MIXER_WIDGETS(OUT2R, "HPOUT2R"), |
525 | ARIZONA_MIXER_WIDGETS(OUT3, "EPOUT"), | 564 | ARIZONA_MIXER_WIDGETS(OUT3L, "HPOUT3L"), |
565 | ARIZONA_MIXER_WIDGETS(OUT3R, "HPOUT3R"), | ||
526 | ARIZONA_MIXER_WIDGETS(SPKOUTL, "SPKOUTL"), | 566 | ARIZONA_MIXER_WIDGETS(SPKOUTL, "SPKOUTL"), |
527 | ARIZONA_MIXER_WIDGETS(SPKOUTR, "SPKOUTR"), | 567 | ARIZONA_MIXER_WIDGETS(SPKOUTR, "SPKOUTR"), |
528 | ARIZONA_MIXER_WIDGETS(SPKDAT1L, "SPKDAT1L"), | 568 | ARIZONA_MIXER_WIDGETS(SPKDAT1L, "SPKDAT1L"), |
@@ -554,8 +594,8 @@ SND_SOC_DAPM_OUTPUT("HPOUT1L"), | |||
554 | SND_SOC_DAPM_OUTPUT("HPOUT1R"), | 594 | SND_SOC_DAPM_OUTPUT("HPOUT1R"), |
555 | SND_SOC_DAPM_OUTPUT("HPOUT2L"), | 595 | SND_SOC_DAPM_OUTPUT("HPOUT2L"), |
556 | SND_SOC_DAPM_OUTPUT("HPOUT2R"), | 596 | SND_SOC_DAPM_OUTPUT("HPOUT2R"), |
557 | SND_SOC_DAPM_OUTPUT("EPOUTN"), | 597 | SND_SOC_DAPM_OUTPUT("HPOUT3L"), |
558 | SND_SOC_DAPM_OUTPUT("EPOUTP"), | 598 | SND_SOC_DAPM_OUTPUT("HPOUT3R"), |
559 | SND_SOC_DAPM_OUTPUT("SPKOUTLN"), | 599 | SND_SOC_DAPM_OUTPUT("SPKOUTLN"), |
560 | SND_SOC_DAPM_OUTPUT("SPKOUTLP"), | 600 | SND_SOC_DAPM_OUTPUT("SPKOUTLP"), |
561 | SND_SOC_DAPM_OUTPUT("SPKOUTRN"), | 601 | SND_SOC_DAPM_OUTPUT("SPKOUTRN"), |
@@ -570,6 +610,7 @@ SND_SOC_DAPM_OUTPUT("SPKDAT2R"), | |||
570 | { name, "Noise Generator", "Noise Generator" }, \ | 610 | { name, "Noise Generator", "Noise Generator" }, \ |
571 | { name, "Tone Generator 1", "Tone Generator 1" }, \ | 611 | { name, "Tone Generator 1", "Tone Generator 1" }, \ |
572 | { name, "Tone Generator 2", "Tone Generator 2" }, \ | 612 | { name, "Tone Generator 2", "Tone Generator 2" }, \ |
613 | { name, "AEC", "AEC Loopback" }, \ | ||
573 | { name, "IN1L", "IN1L PGA" }, \ | 614 | { name, "IN1L", "IN1L PGA" }, \ |
574 | { name, "IN1R", "IN1R PGA" }, \ | 615 | { name, "IN1R", "IN1R PGA" }, \ |
575 | { name, "IN2L", "IN2L PGA" }, \ | 616 | { name, "IN2L", "IN2L PGA" }, \ |
@@ -620,6 +661,7 @@ static const struct snd_soc_dapm_route wm5110_dapm_routes[] = { | |||
620 | { "OUT2L", NULL, "CPVDD" }, | 661 | { "OUT2L", NULL, "CPVDD" }, |
621 | { "OUT2R", NULL, "CPVDD" }, | 662 | { "OUT2R", NULL, "CPVDD" }, |
622 | { "OUT3L", NULL, "CPVDD" }, | 663 | { "OUT3L", NULL, "CPVDD" }, |
664 | { "OUT3R", NULL, "CPVDD" }, | ||
623 | 665 | ||
624 | { "OUT4L", NULL, "SPKVDDL" }, | 666 | { "OUT4L", NULL, "SPKVDDL" }, |
625 | { "OUT4R", NULL, "SPKVDDR" }, | 667 | { "OUT4R", NULL, "SPKVDDR" }, |
@@ -701,7 +743,8 @@ static const struct snd_soc_dapm_route wm5110_dapm_routes[] = { | |||
701 | ARIZONA_MIXER_ROUTES("OUT1R", "HPOUT1R"), | 743 | ARIZONA_MIXER_ROUTES("OUT1R", "HPOUT1R"), |
702 | ARIZONA_MIXER_ROUTES("OUT2L", "HPOUT2L"), | 744 | ARIZONA_MIXER_ROUTES("OUT2L", "HPOUT2L"), |
703 | ARIZONA_MIXER_ROUTES("OUT2R", "HPOUT2R"), | 745 | ARIZONA_MIXER_ROUTES("OUT2R", "HPOUT2R"), |
704 | ARIZONA_MIXER_ROUTES("OUT3L", "EPOUT"), | 746 | ARIZONA_MIXER_ROUTES("OUT3L", "HPOUT3L"), |
747 | ARIZONA_MIXER_ROUTES("OUT3R", "HPOUT3R"), | ||
705 | 748 | ||
706 | ARIZONA_MIXER_ROUTES("OUT4L", "SPKOUTL"), | 749 | ARIZONA_MIXER_ROUTES("OUT4L", "SPKOUTL"), |
707 | ARIZONA_MIXER_ROUTES("OUT4R", "SPKOUTR"), | 750 | ARIZONA_MIXER_ROUTES("OUT4R", "SPKOUTR"), |
@@ -754,8 +797,8 @@ static const struct snd_soc_dapm_route wm5110_dapm_routes[] = { | |||
754 | { "HPOUT2L", NULL, "OUT2L" }, | 797 | { "HPOUT2L", NULL, "OUT2L" }, |
755 | { "HPOUT2R", NULL, "OUT2R" }, | 798 | { "HPOUT2R", NULL, "OUT2R" }, |
756 | 799 | ||
757 | { "EPOUTN", NULL, "OUT3L" }, | 800 | { "HPOUT3L", NULL, "OUT3L" }, |
758 | { "EPOUTP", NULL, "OUT3L" }, | 801 | { "HPOUT3R", NULL, "OUT3L" }, |
759 | 802 | ||
760 | { "SPKOUTLN", NULL, "OUT4L" }, | 803 | { "SPKOUTLN", NULL, "OUT4L" }, |
761 | { "SPKOUTLP", NULL, "OUT4L" }, | 804 | { "SPKOUTLP", NULL, "OUT4L" }, |
@@ -873,6 +916,8 @@ static unsigned int wm5110_digital_vu[] = { | |||
873 | ARIZONA_ADC_DIGITAL_VOLUME_2R, | 916 | ARIZONA_ADC_DIGITAL_VOLUME_2R, |
874 | ARIZONA_ADC_DIGITAL_VOLUME_3L, | 917 | ARIZONA_ADC_DIGITAL_VOLUME_3L, |
875 | ARIZONA_ADC_DIGITAL_VOLUME_3R, | 918 | ARIZONA_ADC_DIGITAL_VOLUME_3R, |
919 | ARIZONA_ADC_DIGITAL_VOLUME_4L, | ||
920 | ARIZONA_ADC_DIGITAL_VOLUME_4R, | ||
876 | 921 | ||
877 | ARIZONA_DAC_DIGITAL_VOLUME_1L, | 922 | ARIZONA_DAC_DIGITAL_VOLUME_1L, |
878 | ARIZONA_DAC_DIGITAL_VOLUME_1R, | 923 | ARIZONA_DAC_DIGITAL_VOLUME_1R, |
@@ -884,6 +929,8 @@ static unsigned int wm5110_digital_vu[] = { | |||
884 | ARIZONA_DAC_DIGITAL_VOLUME_4R, | 929 | ARIZONA_DAC_DIGITAL_VOLUME_4R, |
885 | ARIZONA_DAC_DIGITAL_VOLUME_5L, | 930 | ARIZONA_DAC_DIGITAL_VOLUME_5L, |
886 | ARIZONA_DAC_DIGITAL_VOLUME_5R, | 931 | ARIZONA_DAC_DIGITAL_VOLUME_5R, |
932 | ARIZONA_DAC_DIGITAL_VOLUME_6L, | ||
933 | ARIZONA_DAC_DIGITAL_VOLUME_6R, | ||
887 | }; | 934 | }; |
888 | 935 | ||
889 | static struct snd_soc_codec_driver soc_codec_dev_wm5110 = { | 936 | static struct snd_soc_codec_driver soc_codec_dev_wm5110 = { |