|
@@ -9294,6 +9294,14 @@ static const struct snd_kcontrol_new mmul17_mixer_controls[] = {
|
|
|
MSM_BACKEND_DAI_INCALL_RECORD_TX,
|
|
|
MSM_FRONTEND_DAI_MULTIMEDIA17, 1, 0, msm_routing_get_audio_mixer,
|
|
|
msm_routing_put_audio_mixer),
|
|
|
+ SOC_DOUBLE_EXT("TERT_MI2S_TX", SND_SOC_NOPM,
|
|
|
+ MSM_BACKEND_DAI_TERTIARY_MI2S_TX,
|
|
|
+ MSM_FRONTEND_DAI_MULTIMEDIA17, 1, 0, msm_routing_get_audio_mixer,
|
|
|
+ msm_routing_put_audio_mixer),
|
|
|
+ SOC_DOUBLE_EXT("QUAT_MI2S_TX", SND_SOC_NOPM,
|
|
|
+ MSM_BACKEND_DAI_QUATERNARY_MI2S_TX,
|
|
|
+ MSM_FRONTEND_DAI_MULTIMEDIA17, 1, 0, msm_routing_get_audio_mixer,
|
|
|
+ msm_routing_put_audio_mixer),
|
|
|
};
|
|
|
|
|
|
static const struct snd_kcontrol_new mmul18_mixer_controls[] = {
|
|
@@ -9309,6 +9317,10 @@ static const struct snd_kcontrol_new mmul18_mixer_controls[] = {
|
|
|
MSM_BACKEND_DAI_INT3_MI2S_TX,
|
|
|
MSM_FRONTEND_DAI_MULTIMEDIA18, 1, 0, msm_routing_get_audio_mixer,
|
|
|
msm_routing_put_audio_mixer),
|
|
|
+ SOC_DOUBLE_EXT("TERT_MI2S_TX", SND_SOC_NOPM,
|
|
|
+ MSM_BACKEND_DAI_TERTIARY_MI2S_TX,
|
|
|
+ MSM_FRONTEND_DAI_MULTIMEDIA18, 1, 0, msm_routing_get_audio_mixer,
|
|
|
+ msm_routing_put_audio_mixer),
|
|
|
SOC_DOUBLE_EXT("QUAT_MI2S_TX", SND_SOC_NOPM,
|
|
|
MSM_BACKEND_DAI_QUATERNARY_MI2S_TX,
|
|
|
MSM_FRONTEND_DAI_MULTIMEDIA18, 1, 0, msm_routing_get_audio_mixer,
|
|
@@ -9368,6 +9380,14 @@ static const struct snd_kcontrol_new mmul19_mixer_controls[] = {
|
|
|
MSM_BACKEND_DAI_INCALL_RECORD_TX,
|
|
|
MSM_FRONTEND_DAI_MULTIMEDIA19, 1, 0, msm_routing_get_audio_mixer,
|
|
|
msm_routing_put_audio_mixer),
|
|
|
+ SOC_DOUBLE_EXT("TERT_MI2S_TX", SND_SOC_NOPM,
|
|
|
+ MSM_BACKEND_DAI_TERTIARY_MI2S_TX,
|
|
|
+ MSM_FRONTEND_DAI_MULTIMEDIA19, 1, 0, msm_routing_get_audio_mixer,
|
|
|
+ msm_routing_put_audio_mixer),
|
|
|
+ SOC_DOUBLE_EXT("QUAT_MI2S_TX", SND_SOC_NOPM,
|
|
|
+ MSM_BACKEND_DAI_QUATERNARY_MI2S_TX,
|
|
|
+ MSM_FRONTEND_DAI_MULTIMEDIA19, 1, 0, msm_routing_get_audio_mixer,
|
|
|
+ msm_routing_put_audio_mixer),
|
|
|
};
|
|
|
|
|
|
static const struct snd_kcontrol_new mmul20_mixer_controls[] = {
|
|
@@ -9506,6 +9526,15 @@ static const struct snd_kcontrol_new mmul28_mixer_controls[] = {
|
|
|
MSM_BACKEND_DAI_INCALL_RECORD_TX,
|
|
|
MSM_FRONTEND_DAI_MULTIMEDIA28, 1, 0, msm_routing_get_audio_mixer,
|
|
|
msm_routing_put_audio_mixer),
|
|
|
+ SOC_DOUBLE_EXT("TERT_MI2S_TX", SND_SOC_NOPM,
|
|
|
+ MSM_BACKEND_DAI_TERTIARY_MI2S_TX,
|
|
|
+ MSM_FRONTEND_DAI_MULTIMEDIA28, 1, 0, msm_routing_get_audio_mixer,
|
|
|
+ msm_routing_put_audio_mixer),
|
|
|
+ SOC_DOUBLE_EXT("QUAT_MI2S_TX", SND_SOC_NOPM,
|
|
|
+ MSM_BACKEND_DAI_QUATERNARY_MI2S_TX,
|
|
|
+ MSM_FRONTEND_DAI_MULTIMEDIA29, 1, 0, msm_routing_get_audio_mixer,
|
|
|
+ msm_routing_put_audio_mixer),
|
|
|
+
|
|
|
};
|
|
|
|
|
|
static const struct snd_kcontrol_new mmul29_mixer_controls[] = {
|
|
@@ -9541,6 +9570,15 @@ static const struct snd_kcontrol_new mmul29_mixer_controls[] = {
|
|
|
MSM_BACKEND_DAI_INCALL_RECORD_TX,
|
|
|
MSM_FRONTEND_DAI_MULTIMEDIA29, 1, 0, msm_routing_get_audio_mixer,
|
|
|
msm_routing_put_audio_mixer),
|
|
|
+ SOC_DOUBLE_EXT("TERT_MI2S_TX", SND_SOC_NOPM,
|
|
|
+ MSM_BACKEND_DAI_TERTIARY_MI2S_TX,
|
|
|
+ MSM_FRONTEND_DAI_MULTIMEDIA29, 1, 0, msm_routing_get_audio_mixer,
|
|
|
+ msm_routing_put_audio_mixer),
|
|
|
+ SOC_DOUBLE_EXT("QUAT_MI2S_TX", SND_SOC_NOPM,
|
|
|
+ MSM_BACKEND_DAI_QUATERNARY_MI2S_TX,
|
|
|
+ MSM_FRONTEND_DAI_MULTIMEDIA29, 1, 0, msm_routing_get_audio_mixer,
|
|
|
+ msm_routing_put_audio_mixer),
|
|
|
+
|
|
|
};
|
|
|
|
|
|
static const struct snd_kcontrol_new pri_rx_voice_mixer_controls[] = {
|
|
@@ -14725,6 +14763,8 @@ static const struct snd_soc_dapm_widget msm_qdsp6_widgets[] = {
|
|
|
SND_SOC_DAPM_AIF_OUT("MM_UL18", "MultiMedia18 Capture", 0, 0, 0, 0),
|
|
|
SND_SOC_DAPM_AIF_OUT("MM_UL19", "MultiMedia19 Capture", 0, 0, 0, 0),
|
|
|
SND_SOC_DAPM_AIF_OUT("MM_UL20", "MultiMedia20 Capture", 0, 0, 0, 0),
|
|
|
+ SND_SOC_DAPM_AIF_OUT("MM_UL28", "MultiMedia28 Capture", 0, 0, 0, 0),
|
|
|
+ SND_SOC_DAPM_AIF_OUT("MM_UL29", "MultiMedia29 Capture", 0, 0, 0, 0),
|
|
|
SND_SOC_DAPM_AIF_OUT("VOIP_UL", "VoIP Capture", 0, 0, 0, 0),
|
|
|
SND_SOC_DAPM_AIF_IN("VOICEMMODE1_DL",
|
|
|
"VoiceMMode1 Playback", 0, 0, 0, 0),
|
|
@@ -15933,6 +15973,10 @@ static const struct snd_soc_dapm_widget msm_qdsp6_widgets[] = {
|
|
|
&ext_ec_ref_mux_ul18),
|
|
|
SND_SOC_DAPM_MUX("AUDIO_REF_EC_UL19 MUX", SND_SOC_NOPM, 0, 0,
|
|
|
&ext_ec_ref_mux_ul19),
|
|
|
+ SND_SOC_DAPM_MUX("AUDIO_REF_EC_UL28 MUX", SND_SOC_NOPM, 0, 0,
|
|
|
+ &ext_ec_ref_mux_ul28),
|
|
|
+ SND_SOC_DAPM_MUX("AUDIO_REF_EC_UL29 MUX", SND_SOC_NOPM, 0, 0,
|
|
|
+ &ext_ec_ref_mux_ul29),
|
|
|
};
|
|
|
|
|
|
static const struct snd_soc_dapm_route intercon[] = {
|