SND_SOC_DAPM_DAC("Right DAC", "Right Playback", WM8988_PWR2, 7, 0), SND_SOC_DAPM_DAC("Left DAC", "Left Playback", WM8988_PWR2, 8, 0), SND_SOC_DAPM_MIXER("Left Mixer", SND_SOC_NOPM, 0, 0, &wm8988_left_mixer_controls[0], ARRAY_SIZE(wm8988_left_mixer_controls)), SND_SOC_DAPM_MIXER("Right Mixer", SND_SOC_NOPM, 0, 0, &wm8988_right_mixer_controls[0], ARRAY_SIZE(wm8988_right_mixer_controls)), SND_SOC_DAPM_PGA("Right Out 2", WM8988_PWR2, 3, 0, NULL, 0), SND_SOC_DAPM_PGA("Left Out 2", WM8988_PWR2, 4, 0, NULL, 0), SND_SOC_DAPM_PGA("Right Out 1", WM8988_PWR2, 5, 0, NULL, 0), SND_SOC_DAPM_PGA("Left Out 1", WM8988_PWR2, 6, 0, NULL, 0), SND_SOC_DAPM_POST("LRC control", wm8988_lrc_control), SND_SOC_DAPM_OUTPUT("LOUT1"), SND_SOC_DAPM_OUTPUT("ROUT1"), SND_SOC_DAPM_OUTPUT("LOUT2"), SND_SOC_DAPM_OUTPUT("ROUT2"), SND_SOC_DAPM_OUTPUT("VREF"), SND_SOC_DAPM_INPUT("LINPUT1"), SND_SOC_DAPM_INPUT("LINPUT2"), SND_SOC_DAPM_INPUT("RINPUT1"), SND_SOC_DAPM_INPUT("RINPUT2"), }; static const struct snd_soc_dapm_route wm8988_dapm_routes[] = {
SOC_MIXER_ARRAY("Left Playback Mixer", ADAU1761_PLAY_MIXER_LEFT0, 0, 0, adau1761_left_mixer_controls), SOC_MIXER_ARRAY("Right Playback Mixer", ADAU1761_PLAY_MIXER_RIGHT0, 0, 0, adau1761_right_mixer_controls), SOC_MIXER_ARRAY("Left LR Playback Mixer", ADAU1761_PLAY_LR_MIXER_LEFT, 0, 0, adau1761_left_lr_mixer_controls), SOC_MIXER_ARRAY("Right LR Playback Mixer", ADAU1761_PLAY_LR_MIXER_RIGHT, 0, 0, adau1761_right_lr_mixer_controls), SND_SOC_DAPM_SUPPLY("Headphone", ADAU1761_PLAY_HP_LEFT_VOL, 0, 0, NULL, 0), SND_SOC_DAPM_SUPPLY_S("SYSCLK", 2, SND_SOC_NOPM, 0, 0, NULL, 0), SND_SOC_DAPM_POST("Dejitter fixup", adau1761_dejitter_fixup), SND_SOC_DAPM_INPUT("LAUX"), SND_SOC_DAPM_INPUT("RAUX"), SND_SOC_DAPM_INPUT("LINP"), SND_SOC_DAPM_INPUT("LINN"), SND_SOC_DAPM_INPUT("RINP"), SND_SOC_DAPM_INPUT("RINN"), SND_SOC_DAPM_OUTPUT("LOUT"), SND_SOC_DAPM_OUTPUT("ROUT"), SND_SOC_DAPM_OUTPUT("LHP"), SND_SOC_DAPM_OUTPUT("RHP"), }; static const struct snd_soc_dapm_widget adau1761_mono_dapm_widgets[] = {
default: return 0; } #endif return 0; } /* mixtilev310 Playback widgets */ static const struct snd_soc_dapm_widget rt5640_dapm_widgets_pbk[] = { // SND_SOC_DAPM_HP("Headphone Jack", NULL), SND_SOC_DAPM_LINE("Speaker_L", rt5640_down_event), SND_SOC_DAPM_LINE("Speaker_R", rt5640_down_event), SND_SOC_DAPM_POST("Speaker_L_up", rt5640_up_event), SND_SOC_DAPM_POST("Speaker_R_up", rt5640_up_event), }; /* mixtilev310 RX connections */ static const struct snd_soc_dapm_route audio_map_rx[] = { /* Headphone */ //{ "Headphone Jack", NULL, "HP_L" }, //{ "Headphone Jack", NULL, "HP_R" }, /* Speaker */ /*{ "Speaker_L", NULL, "SPK_LP" }, { "Speaker_L", NULL, "SPK_LN" }, { "Speaker_R", NULL, "SPK_RP" }, { "Speaker_R", NULL, "SPK_RN" },*/
SND_SOC_DAPM_PGA("Right Out 2", ES8323_DACPOWER, 2, 0, NULL, 0), SND_SOC_DAPM_PGA("Left Out 2", ES8323_DACPOWER, 3, 0, NULL, 0), SND_SOC_DAPM_PGA("Right Out 1", ES8323_DACPOWER, 4, 0, NULL, 0), SND_SOC_DAPM_PGA("Left Out 1", ES8323_DACPOWER, 5, 0, NULL, 0), SND_SOC_DAPM_PGA("LAMP", ES8323_ADCCONTROL1, 4, 0, NULL, 0), SND_SOC_DAPM_PGA("RAMP", ES8323_ADCCONTROL1, 0, 0, NULL, 0), SND_SOC_DAPM_OUTPUT("LOUT1"), SND_SOC_DAPM_OUTPUT("ROUT1"), SND_SOC_DAPM_OUTPUT("LOUT2"), SND_SOC_DAPM_OUTPUT("ROUT2"), SND_SOC_DAPM_OUTPUT("VREF"), SND_SOC_DAPM_PRE("PRE", es8323_dapm_pre_event), SND_SOC_DAPM_POST("POST", es8323_dapm_post_event), #endif }; static const struct snd_soc_dapm_route audio_map[] = { { "Left Line Mux", "NULL", "LINPUT1" }, { "Left Line Mux", "NULL", "LINPUT2" }, { "Left Line Mux", "NULL", "Left PGA Mux" }, { "Right Line Mux", "NULL", "RINPUT1" }, { "Right Line Mux", "NULL", "RINPUT2" }, { "Right Line Mux", "NULL", "Right PGA Mux" }, { "Left PGA Mux", "LAMP", "LINPUT1" }, { "Left PGA Mux", "LAMP", "LINPUT2" },