Browse Source

Merge "asoc: lpass-cdc: add RX4/5 for wsa macro"

qctecmdr 4 years ago
parent
commit
5314fb4974

+ 48 - 10
asoc/codecs/lpass-cdc/lpass-cdc-wsa-macro.c

@@ -65,6 +65,8 @@ enum {
 	LPASS_CDC_WSA_MACRO_RX_MIX,
 	LPASS_CDC_WSA_MACRO_RX_MIX0 = LPASS_CDC_WSA_MACRO_RX_MIX,
 	LPASS_CDC_WSA_MACRO_RX_MIX1,
+	LPASS_CDC_WSA_MACRO_RX4,
+	LPASS_CDC_WSA_MACRO_RX5,
 	LPASS_CDC_WSA_MACRO_RX_MAX,
 };
 
@@ -98,6 +100,8 @@ enum {
 	INTn_1_INP_SEL_RX1,
 	INTn_1_INP_SEL_RX2,
 	INTn_1_INP_SEL_RX3,
+	INTn_1_INP_SEL_RX4,
+	INTn_1_INP_SEL_RX5,
 	INTn_1_INP_SEL_DEC0,
 	INTn_1_INP_SEL_DEC1,
 };
@@ -108,6 +112,8 @@ enum {
 	INTn_2_INP_SEL_RX1,
 	INTn_2_INP_SEL_RX2,
 	INTn_2_INP_SEL_RX3,
+	INTn_2_INP_SEL_RX4,
+	INTn_2_INP_SEL_RX5,
 };
 
 enum {
@@ -275,11 +281,11 @@ static struct snd_soc_dai_driver lpass_cdc_wsa_macro_dai[];
 static const DECLARE_TLV_DB_SCALE(digital_gain, 0, 1, 0);
 
 static const char *const rx_text[] = {
-	"ZERO", "RX0", "RX1", "RX_MIX0", "RX_MIX1", "DEC0", "DEC1"
+	"ZERO", "RX0", "RX1", "RX_MIX0", "RX_MIX1", "RX4", "RX5", "DEC0", "DEC1"
 };
 
 static const char *const rx_mix_text[] = {
-	"ZERO", "RX0", "RX1", "RX_MIX0", "RX_MIX1"
+	"ZERO", "RX0", "RX1", "RX_MIX0", "RX_MIX1", "RX4", "RX5",
 };
 
 static const char *const rx_mix_ec_text[] = {
@@ -319,19 +325,19 @@ static SOC_ENUM_SINGLE_EXT_DECL(lpass_cdc_wsa_macro_comp_mode_enum,
 /* RX INT0 */
 static const struct soc_enum rx0_prim_inp0_chain_enum =
 	SOC_ENUM_SINGLE(LPASS_CDC_WSA_RX_INP_MUX_RX_INT0_CFG0,
-		0, 7, rx_text);
+		0, 9, rx_text);
 
 static const struct soc_enum rx0_prim_inp1_chain_enum =
 	SOC_ENUM_SINGLE(LPASS_CDC_WSA_RX_INP_MUX_RX_INT0_CFG0,
-		3, 7, rx_text);
+		3, 9, rx_text);
 
 static const struct soc_enum rx0_prim_inp2_chain_enum =
 	SOC_ENUM_SINGLE(LPASS_CDC_WSA_RX_INP_MUX_RX_INT0_CFG1,
-		3, 7, rx_text);
+		3, 9, rx_text);
 
 static const struct soc_enum rx0_mix_chain_enum =
 	SOC_ENUM_SINGLE(LPASS_CDC_WSA_RX_INP_MUX_RX_INT0_CFG1,
-		0, 5, rx_mix_text);
+		0, 7, rx_mix_text);
 
 static const struct soc_enum rx0_sidetone_mix_enum =
 	SOC_ENUM_SINGLE(SND_SOC_NOPM, 0, 2, rx_sidetone_mix_text);
@@ -354,19 +360,19 @@ static const struct snd_kcontrol_new rx0_sidetone_mix_mux =
 /* RX INT1 */
 static const struct soc_enum rx1_prim_inp0_chain_enum =
 	SOC_ENUM_SINGLE(LPASS_CDC_WSA_RX_INP_MUX_RX_INT1_CFG0,
-		0, 7, rx_text);
+		0, 9, rx_text);
 
 static const struct soc_enum rx1_prim_inp1_chain_enum =
 	SOC_ENUM_SINGLE(LPASS_CDC_WSA_RX_INP_MUX_RX_INT1_CFG0,
-		3, 7, rx_text);
+		3, 9, rx_text);
 
 static const struct soc_enum rx1_prim_inp2_chain_enum =
 	SOC_ENUM_SINGLE(LPASS_CDC_WSA_RX_INP_MUX_RX_INT1_CFG1,
-		3, 7, rx_text);
+		3, 9, rx_text);
 
 static const struct soc_enum rx1_mix_chain_enum =
 	SOC_ENUM_SINGLE(LPASS_CDC_WSA_RX_INP_MUX_RX_INT1_CFG1,
-		0, 5, rx_mix_text);
+		0, 7, rx_mix_text);
 
 static const struct snd_kcontrol_new rx1_prim_inp0_mux =
 	SOC_DAPM_ENUM("WSA_RX1 INP0 Mux", rx1_prim_inp0_chain_enum);
@@ -2200,6 +2206,10 @@ static const struct snd_kcontrol_new rx_mux[LPASS_CDC_WSA_MACRO_RX_MAX] = {
 			  lpass_cdc_wsa_macro_rx_mux_get, lpass_cdc_wsa_macro_rx_mux_put),
 	SOC_DAPM_ENUM_EXT("WSA RX_MIX1 Mux", rx_mux_enum,
 			  lpass_cdc_wsa_macro_rx_mux_get, lpass_cdc_wsa_macro_rx_mux_put),
+	SOC_DAPM_ENUM_EXT("WSA RX4 Mux", rx_mux_enum,
+			lpass_cdc_wsa_macro_rx_mux_get, lpass_cdc_wsa_macro_rx_mux_put),
+	SOC_DAPM_ENUM_EXT("WSA RX5 Mux", rx_mux_enum,
+			lpass_cdc_wsa_macro_rx_mux_get, lpass_cdc_wsa_macro_rx_mux_put),
 };
 
 static int lpass_cdc_wsa_macro_vi_feed_mixer_get(struct snd_kcontrol *kcontrol,
@@ -2325,11 +2335,17 @@ static const struct snd_soc_dapm_widget lpass_cdc_wsa_macro_dapm_widgets[] = {
 				&rx_mux[LPASS_CDC_WSA_MACRO_RX_MIX0]),
 	SND_SOC_DAPM_MUX("WSA RX_MIX1 MUX", SND_SOC_NOPM, LPASS_CDC_WSA_MACRO_RX_MIX1, 0,
 				&rx_mux[LPASS_CDC_WSA_MACRO_RX_MIX1]),
+	SND_SOC_DAPM_MUX("WSA RX4 MUX", SND_SOC_NOPM, LPASS_CDC_WSA_MACRO_RX4, 0,
+				&rx_mux[LPASS_CDC_WSA_MACRO_RX4]),
+	SND_SOC_DAPM_MUX("WSA RX5 MUX", SND_SOC_NOPM, LPASS_CDC_WSA_MACRO_RX5, 0,
+				&rx_mux[LPASS_CDC_WSA_MACRO_RX5]),
 
 	SND_SOC_DAPM_MIXER("WSA RX0", SND_SOC_NOPM, 0, 0, NULL, 0),
 	SND_SOC_DAPM_MIXER("WSA RX1", SND_SOC_NOPM, 0, 0, NULL, 0),
 	SND_SOC_DAPM_MIXER("WSA RX_MIX0", SND_SOC_NOPM, 0, 0, NULL, 0),
 	SND_SOC_DAPM_MIXER("WSA RX_MIX1", SND_SOC_NOPM, 0, 0, NULL, 0),
+	SND_SOC_DAPM_MIXER("WSA RX4", SND_SOC_NOPM, 0, 0, NULL, 0),
+	SND_SOC_DAPM_MIXER("WSA RX5", SND_SOC_NOPM, 0, 0, NULL, 0),
 
 	SND_SOC_DAPM_MUX_E("WSA_RX0 INP0", SND_SOC_NOPM, 0, 0,
 		&rx0_prim_inp0_mux, lpass_cdc_wsa_macro_enable_swr,
@@ -2433,21 +2449,29 @@ static const struct snd_soc_dapm_route wsa_audio_map[] = {
 	{"WSA RX1 MUX", "AIF1_PB", "WSA AIF1 PB"},
 	{"WSA RX_MIX0 MUX", "AIF1_PB", "WSA AIF1 PB"},
 	{"WSA RX_MIX1 MUX", "AIF1_PB", "WSA AIF1 PB"},
+	{"WSA RX4 MUX", "AIF1_PB", "WSA AIF1 PB"},
+	{"WSA RX5 MUX", "AIF1_PB", "WSA AIF1 PB"},
 
 	{"WSA RX0 MUX", "AIF_MIX1_PB", "WSA AIF_MIX1 PB"},
 	{"WSA RX1 MUX", "AIF_MIX1_PB", "WSA AIF_MIX1 PB"},
 	{"WSA RX_MIX0 MUX", "AIF_MIX1_PB", "WSA AIF_MIX1 PB"},
 	{"WSA RX_MIX1 MUX", "AIF_MIX1_PB", "WSA AIF_MIX1 PB"},
+	{"WSA RX4 MUX", "AIF_MIX1_PB", "WSA AIF_MIX1 PB"},
+	{"WSA RX5 MUX", "AIF_MIX1_PB", "WSA AIF_MIX1 PB"},
 
 	{"WSA RX0", NULL, "WSA RX0 MUX"},
 	{"WSA RX1", NULL, "WSA RX1 MUX"},
 	{"WSA RX_MIX0", NULL, "WSA RX_MIX0 MUX"},
 	{"WSA RX_MIX1", NULL, "WSA RX_MIX1 MUX"},
+	{"WSA RX4", NULL, "WSA RX4 MUX"},
+	{"WSA RX5", NULL, "WSA RX5 MUX"},
 
 	{"WSA_RX0 INP0", "RX0", "WSA RX0"},
 	{"WSA_RX0 INP0", "RX1", "WSA RX1"},
 	{"WSA_RX0 INP0", "RX_MIX0", "WSA RX_MIX0"},
 	{"WSA_RX0 INP0", "RX_MIX1", "WSA RX_MIX1"},
+	{"WSA_RX0 INP0", "RX4", "WSA RX4"},
+	{"WSA_RX0 INP0", "RX5", "WSA RX5"},
 	{"WSA_RX0 INP0", "DEC0", "WSA_TX DEC0_INP"},
 	{"WSA_RX0 INP0", "DEC1", "WSA_TX DEC1_INP"},
 	{"WSA_RX INT0 MIX", NULL, "WSA_RX0 INP0"},
@@ -2456,6 +2480,8 @@ static const struct snd_soc_dapm_route wsa_audio_map[] = {
 	{"WSA_RX0 INP1", "RX1", "WSA RX1"},
 	{"WSA_RX0 INP1", "RX_MIX0", "WSA RX_MIX0"},
 	{"WSA_RX0 INP1", "RX_MIX1", "WSA RX_MIX1"},
+	{"WSA_RX0 INP1", "RX4", "WSA RX4"},
+	{"WSA_RX0 INP1", "RX5", "WSA RX5"},
 	{"WSA_RX0 INP1", "DEC0", "WSA_TX DEC0_INP"},
 	{"WSA_RX0 INP1", "DEC1", "WSA_TX DEC1_INP"},
 	{"WSA_RX INT0 MIX", NULL, "WSA_RX0 INP1"},
@@ -2464,6 +2490,8 @@ static const struct snd_soc_dapm_route wsa_audio_map[] = {
 	{"WSA_RX0 INP2", "RX1", "WSA RX1"},
 	{"WSA_RX0 INP2", "RX_MIX0", "WSA RX_MIX0"},
 	{"WSA_RX0 INP2", "RX_MIX1", "WSA RX_MIX1"},
+	{"WSA_RX0 INP2", "RX4", "WSA RX4"},
+	{"WSA_RX0 INP2", "RX5", "WSA RX5"},
 	{"WSA_RX0 INP2", "DEC0", "WSA_TX DEC0_INP"},
 	{"WSA_RX0 INP2", "DEC1", "WSA_TX DEC1_INP"},
 	{"WSA_RX INT0 MIX", NULL, "WSA_RX0 INP2"},
@@ -2472,6 +2500,8 @@ static const struct snd_soc_dapm_route wsa_audio_map[] = {
 	{"WSA_RX0 MIX INP", "RX1", "WSA RX1"},
 	{"WSA_RX0 MIX INP", "RX_MIX0", "WSA RX_MIX0"},
 	{"WSA_RX0 MIX INP", "RX_MIX1", "WSA RX_MIX1"},
+	{"WSA_RX0 MIX INP", "RX4", "WSA RX4"},
+	{"WSA_RX0 MIX INP", "RX5", "WSA RX5"},
 	{"WSA_RX INT0 SEC MIX", NULL, "WSA_RX0 MIX INP"},
 
 	{"WSA_RX INT0 SEC MIX", NULL, "WSA_RX INT0 MIX"},
@@ -2490,6 +2520,8 @@ static const struct snd_soc_dapm_route wsa_audio_map[] = {
 	{"WSA_RX1 INP0", "RX1", "WSA RX1"},
 	{"WSA_RX1 INP0", "RX_MIX0", "WSA RX_MIX0"},
 	{"WSA_RX1 INP0", "RX_MIX1", "WSA RX_MIX1"},
+	{"WSA_RX1 INP0", "RX4", "WSA RX4"},
+	{"WSA_RX1 INP0", "RX5", "WSA RX5"},
 	{"WSA_RX1 INP0", "DEC0", "WSA_TX DEC0_INP"},
 	{"WSA_RX1 INP0", "DEC1", "WSA_TX DEC1_INP"},
 	{"WSA_RX INT1 MIX", NULL, "WSA_RX1 INP0"},
@@ -2498,6 +2530,8 @@ static const struct snd_soc_dapm_route wsa_audio_map[] = {
 	{"WSA_RX1 INP1", "RX1", "WSA RX1"},
 	{"WSA_RX1 INP1", "RX_MIX0", "WSA RX_MIX0"},
 	{"WSA_RX1 INP1", "RX_MIX1", "WSA RX_MIX1"},
+	{"WSA_RX1 INP1", "RX4", "WSA RX4"},
+	{"WSA_RX1 INP1", "RX5", "WSA RX5"},
 	{"WSA_RX1 INP1", "DEC0", "WSA_TX DEC0_INP"},
 	{"WSA_RX1 INP1", "DEC1", "WSA_TX DEC1_INP"},
 	{"WSA_RX INT1 MIX", NULL, "WSA_RX1 INP1"},
@@ -2506,6 +2540,8 @@ static const struct snd_soc_dapm_route wsa_audio_map[] = {
 	{"WSA_RX1 INP2", "RX1", "WSA RX1"},
 	{"WSA_RX1 INP2", "RX_MIX0", "WSA RX_MIX0"},
 	{"WSA_RX1 INP2", "RX_MIX1", "WSA RX_MIX1"},
+	{"WSA_RX1 INP2", "RX4", "WSA RX4"},
+	{"WSA_RX1 INP2", "RX5", "WSA RX5"},
 	{"WSA_RX1 INP2", "DEC0", "WSA_TX DEC0_INP"},
 	{"WSA_RX1 INP2", "DEC1", "WSA_TX DEC1_INP"},
 	{"WSA_RX INT1 MIX", NULL, "WSA_RX1 INP2"},
@@ -2514,6 +2550,8 @@ static const struct snd_soc_dapm_route wsa_audio_map[] = {
 	{"WSA_RX1 MIX INP", "RX1", "WSA RX1"},
 	{"WSA_RX1 MIX INP", "RX_MIX0", "WSA RX_MIX0"},
 	{"WSA_RX1 MIX INP", "RX_MIX1", "WSA RX_MIX1"},
+	{"WSA_RX1 MIX INP", "RX4", "WSA RX4"},
+	{"WSA_RX1 MIX INP", "RX5", "WSA RX5"},
 	{"WSA_RX INT1 SEC MIX", NULL, "WSA_RX1 MIX INP"},
 
 	{"WSA_RX INT1 SEC MIX", NULL, "WSA_RX INT1 MIX"},

+ 48 - 10
asoc/codecs/lpass-cdc/lpass-cdc-wsa2-macro.c

@@ -65,6 +65,8 @@ enum {
 	LPASS_CDC_WSA2_MACRO_RX_MIX,
 	LPASS_CDC_WSA2_MACRO_RX_MIX0 = LPASS_CDC_WSA2_MACRO_RX_MIX,
 	LPASS_CDC_WSA2_MACRO_RX_MIX1,
+	LPASS_CDC_WSA2_MACRO_RX4,
+	LPASS_CDC_WSA2_MACRO_RX5,
 	LPASS_CDC_WSA2_MACRO_RX_MAX,
 };
 
@@ -98,6 +100,8 @@ enum {
 	INTn_1_INP_SEL_RX1,
 	INTn_1_INP_SEL_RX2,
 	INTn_1_INP_SEL_RX3,
+	INTn_1_INP_SEL_RX4,
+	INTn_1_INP_SEL_RX5,
 	INTn_1_INP_SEL_DEC0,
 	INTn_1_INP_SEL_DEC1,
 };
@@ -108,6 +112,8 @@ enum {
 	INTn_2_INP_SEL_RX1,
 	INTn_2_INP_SEL_RX2,
 	INTn_2_INP_SEL_RX3,
+	INTn_2_INP_SEL_RX4,
+	INTn_2_INP_SEL_RX5,
 };
 
 enum {
@@ -272,11 +278,11 @@ static struct snd_soc_dai_driver lpass_cdc_wsa2_macro_dai[];
 static const DECLARE_TLV_DB_SCALE(digital_gain, 0, 1, 0);
 
 static const char *const rx_text[] = {
-	"ZERO", "RX0", "RX1", "RX_MIX0", "RX_MIX1", "DEC0", "DEC1"
+	"ZERO", "RX0", "RX1", "RX_MIX0", "RX_MIX1", "RX4", "RX5", "DEC0", "DEC1"
 };
 
 static const char *const rx_mix_text[] = {
-	"ZERO", "RX0", "RX1", "RX_MIX0", "RX_MIX1"
+	"ZERO", "RX0", "RX1", "RX_MIX0", "RX_MIX1", "RX4", "RX5",
 };
 
 static const char *const rx_mix_ec_text[] = {
@@ -316,19 +322,19 @@ static SOC_ENUM_SINGLE_EXT_DECL(lpass_cdc_wsa2_macro_comp_mode_enum,
 /* RX INT0 */
 static const struct soc_enum rx0_prim_inp0_chain_enum =
 	SOC_ENUM_SINGLE(LPASS_CDC_WSA2_RX_INP_MUX_RX_INT0_CFG0,
-		0, 7, rx_text);
+		0, 9, rx_text);
 
 static const struct soc_enum rx0_prim_inp1_chain_enum =
 	SOC_ENUM_SINGLE(LPASS_CDC_WSA2_RX_INP_MUX_RX_INT0_CFG0,
-		3, 7, rx_text);
+		3, 9, rx_text);
 
 static const struct soc_enum rx0_prim_inp2_chain_enum =
 	SOC_ENUM_SINGLE(LPASS_CDC_WSA2_RX_INP_MUX_RX_INT0_CFG1,
-		3, 7, rx_text);
+		3, 9, rx_text);
 
 static const struct soc_enum rx0_mix_chain_enum =
 	SOC_ENUM_SINGLE(LPASS_CDC_WSA2_RX_INP_MUX_RX_INT0_CFG1,
-		0, 5, rx_mix_text);
+		0, 7, rx_mix_text);
 
 static const struct soc_enum rx0_sidetone_mix_enum =
 	SOC_ENUM_SINGLE(SND_SOC_NOPM, 0, 2, rx_sidetone_mix_text);
@@ -351,19 +357,19 @@ static const struct snd_kcontrol_new rx0_sidetone_mix_mux =
 /* RX INT1 */
 static const struct soc_enum rx1_prim_inp0_chain_enum =
 	SOC_ENUM_SINGLE(LPASS_CDC_WSA2_RX_INP_MUX_RX_INT1_CFG0,
-		0, 7, rx_text);
+		0, 9, rx_text);
 
 static const struct soc_enum rx1_prim_inp1_chain_enum =
 	SOC_ENUM_SINGLE(LPASS_CDC_WSA2_RX_INP_MUX_RX_INT1_CFG0,
-		3, 7, rx_text);
+		3, 9, rx_text);
 
 static const struct soc_enum rx1_prim_inp2_chain_enum =
 	SOC_ENUM_SINGLE(LPASS_CDC_WSA2_RX_INP_MUX_RX_INT1_CFG1,
-		3, 7, rx_text);
+		3, 9, rx_text);
 
 static const struct soc_enum rx1_mix_chain_enum =
 	SOC_ENUM_SINGLE(LPASS_CDC_WSA2_RX_INP_MUX_RX_INT1_CFG1,
-		0, 5, rx_mix_text);
+		0, 7, rx_mix_text);
 
 static const struct snd_kcontrol_new rx1_prim_inp0_mux =
 	SOC_DAPM_ENUM("WSA2_RX1 INP0 Mux", rx1_prim_inp0_chain_enum);
@@ -2197,6 +2203,10 @@ static const struct snd_kcontrol_new rx_mux[LPASS_CDC_WSA2_MACRO_RX_MAX] = {
 			  lpass_cdc_wsa2_macro_rx_mux_get, lpass_cdc_wsa2_macro_rx_mux_put),
 	SOC_DAPM_ENUM_EXT("WSA2 RX_MIX1 Mux", rx_mux_enum,
 			  lpass_cdc_wsa2_macro_rx_mux_get, lpass_cdc_wsa2_macro_rx_mux_put),
+	SOC_DAPM_ENUM_EXT("WSA2 RX4 Mux", rx_mux_enum,
+			lpass_cdc_wsa2_macro_rx_mux_get, lpass_cdc_wsa2_macro_rx_mux_put),
+	SOC_DAPM_ENUM_EXT("WSA2 RX5 Mux", rx_mux_enum,
+			lpass_cdc_wsa2_macro_rx_mux_get, lpass_cdc_wsa2_macro_rx_mux_put),
 };
 
 static int lpass_cdc_wsa2_macro_vi_feed_mixer_get(struct snd_kcontrol *kcontrol,
@@ -2322,11 +2332,17 @@ static const struct snd_soc_dapm_widget lpass_cdc_wsa2_macro_dapm_widgets[] = {
 				&rx_mux[LPASS_CDC_WSA2_MACRO_RX_MIX0]),
 	SND_SOC_DAPM_MUX("WSA2 RX_MIX1 MUX", SND_SOC_NOPM, LPASS_CDC_WSA2_MACRO_RX_MIX1, 0,
 				&rx_mux[LPASS_CDC_WSA2_MACRO_RX_MIX1]),
+	SND_SOC_DAPM_MUX("WSA2 RX4 MUX", SND_SOC_NOPM, LPASS_CDC_WSA2_MACRO_RX4, 0,
+				&rx_mux[LPASS_CDC_WSA2_MACRO_RX4]),
+	SND_SOC_DAPM_MUX("WSA2 RX5 MUX", SND_SOC_NOPM, LPASS_CDC_WSA2_MACRO_RX5, 0,
+				&rx_mux[LPASS_CDC_WSA2_MACRO_RX5]),
 
 	SND_SOC_DAPM_MIXER("WSA2 RX0", SND_SOC_NOPM, 0, 0, NULL, 0),
 	SND_SOC_DAPM_MIXER("WSA2 RX1", SND_SOC_NOPM, 0, 0, NULL, 0),
 	SND_SOC_DAPM_MIXER("WSA2 RX_MIX0", SND_SOC_NOPM, 0, 0, NULL, 0),
 	SND_SOC_DAPM_MIXER("WSA2 RX_MIX1", SND_SOC_NOPM, 0, 0, NULL, 0),
+	SND_SOC_DAPM_MIXER("WSA2 RX4", SND_SOC_NOPM, 0, 0, NULL, 0),
+	SND_SOC_DAPM_MIXER("WSA2 RX5", SND_SOC_NOPM, 0, 0, NULL, 0),
 
 	SND_SOC_DAPM_MUX_E("WSA2_RX0 INP0", SND_SOC_NOPM, 0, 0,
 		&rx0_prim_inp0_mux, lpass_cdc_wsa2_macro_enable_swr,
@@ -2430,21 +2446,29 @@ static const struct snd_soc_dapm_route wsa2_audio_map[] = {
 	{"WSA2 RX1 MUX", "AIF1_PB", "WSA2 AIF1 PB"},
 	{"WSA2 RX_MIX0 MUX", "AIF1_PB", "WSA2 AIF1 PB"},
 	{"WSA2 RX_MIX1 MUX", "AIF1_PB", "WSA2 AIF1 PB"},
+	{"WSA2 RX4 MUX", "AIF1_PB", "WSA2 AIF1 PB"},
+	{"WSA2 RX5 MUX", "AIF1_PB", "WSA2 AIF1 PB"},
 
 	{"WSA2 RX0 MUX", "AIF_MIX1_PB", "WSA2 AIF_MIX1 PB"},
 	{"WSA2 RX1 MUX", "AIF_MIX1_PB", "WSA2 AIF_MIX1 PB"},
 	{"WSA2 RX_MIX0 MUX", "AIF_MIX1_PB", "WSA2 AIF_MIX1 PB"},
 	{"WSA2 RX_MIX1 MUX", "AIF_MIX1_PB", "WSA2 AIF_MIX1 PB"},
+	{"WSA2 RX4 MUX", "AIF_MIX1_PB", "WSA2 AIF_MIX1 PB"},
+	{"WSA2 RX5 MUX", "AIF_MIX1_PB", "WSA2 AIF_MIX1 PB"},
 
 	{"WSA2 RX0", NULL, "WSA2 RX0 MUX"},
 	{"WSA2 RX1", NULL, "WSA2 RX1 MUX"},
 	{"WSA2 RX_MIX0", NULL, "WSA2 RX_MIX0 MUX"},
 	{"WSA2 RX_MIX1", NULL, "WSA2 RX_MIX1 MUX"},
+	{"WSA2 RX4", NULL, "WSA2 RX4 MUX"},
+	{"WSA2 RX5", NULL, "WSA2 RX5 MUX"},
 
 	{"WSA2_RX0 INP0", "RX0", "WSA2 RX0"},
 	{"WSA2_RX0 INP0", "RX1", "WSA2 RX1"},
 	{"WSA2_RX0 INP0", "RX_MIX0", "WSA2 RX_MIX0"},
 	{"WSA2_RX0 INP0", "RX_MIX1", "WSA2 RX_MIX1"},
+	{"WSA2_RX0 INP0", "RX4", "WSA2 RX4"},
+	{"WSA2_RX0 INP0", "RX5", "WSA2 RX5"},
 	{"WSA2_RX0 INP0", "DEC0", "WSA2_TX DEC0_INP"},
 	{"WSA2_RX0 INP0", "DEC1", "WSA2_TX DEC1_INP"},
 	{"WSA2_RX INT0 MIX", NULL, "WSA2_RX0 INP0"},
@@ -2453,6 +2477,8 @@ static const struct snd_soc_dapm_route wsa2_audio_map[] = {
 	{"WSA2_RX0 INP1", "RX1", "WSA2 RX1"},
 	{"WSA2_RX0 INP1", "RX_MIX0", "WSA2 RX_MIX0"},
 	{"WSA2_RX0 INP1", "RX_MIX1", "WSA2 RX_MIX1"},
+	{"WSA2_RX0 INP1", "RX4", "WSA2 RX4"},
+	{"WSA2_RX0 INP1", "RX5", "WSA2 RX5"},
 	{"WSA2_RX0 INP1", "DEC0", "WSA2_TX DEC0_INP"},
 	{"WSA2_RX0 INP1", "DEC1", "WSA2_TX DEC1_INP"},
 	{"WSA2_RX INT0 MIX", NULL, "WSA2_RX0 INP1"},
@@ -2461,6 +2487,8 @@ static const struct snd_soc_dapm_route wsa2_audio_map[] = {
 	{"WSA2_RX0 INP2", "RX1", "WSA2 RX1"},
 	{"WSA2_RX0 INP2", "RX_MIX0", "WSA2 RX_MIX0"},
 	{"WSA2_RX0 INP2", "RX_MIX1", "WSA2 RX_MIX1"},
+	{"WSA2_RX0 INP2", "RX4", "WSA2 RX4"},
+	{"WSA2_RX0 INP2", "RX5", "WSA2 RX5"},
 	{"WSA2_RX0 INP2", "DEC0", "WSA2_TX DEC0_INP"},
 	{"WSA2_RX0 INP2", "DEC1", "WSA2_TX DEC1_INP"},
 	{"WSA2_RX INT0 MIX", NULL, "WSA2_RX0 INP2"},
@@ -2469,6 +2497,8 @@ static const struct snd_soc_dapm_route wsa2_audio_map[] = {
 	{"WSA2_RX0 MIX INP", "RX1", "WSA2 RX1"},
 	{"WSA2_RX0 MIX INP", "RX_MIX0", "WSA2 RX_MIX0"},
 	{"WSA2_RX0 MIX INP", "RX_MIX1", "WSA2 RX_MIX1"},
+	{"WSA2_RX0 MIX INP", "RX4", "WSA2 RX4"},
+	{"WSA2_RX0 MIX INP", "RX5", "WSA2 RX5"},
 	{"WSA2_RX INT0 SEC MIX", NULL, "WSA2_RX0 MIX INP"},
 
 	{"WSA2_RX INT0 SEC MIX", NULL, "WSA2_RX INT0 MIX"},
@@ -2487,6 +2517,8 @@ static const struct snd_soc_dapm_route wsa2_audio_map[] = {
 	{"WSA2_RX1 INP0", "RX1", "WSA2 RX1"},
 	{"WSA2_RX1 INP0", "RX_MIX0", "WSA2 RX_MIX0"},
 	{"WSA2_RX1 INP0", "RX_MIX1", "WSA2 RX_MIX1"},
+	{"WSA2_RX1 INP0", "RX4", "WSA2 RX4"},
+	{"WSA2_RX1 INP0", "RX5", "WSA2 RX5"},
 	{"WSA2_RX1 INP0", "DEC0", "WSA2_TX DEC0_INP"},
 	{"WSA2_RX1 INP0", "DEC1", "WSA2_TX DEC1_INP"},
 	{"WSA2_RX INT1 MIX", NULL, "WSA2_RX1 INP0"},
@@ -2495,6 +2527,8 @@ static const struct snd_soc_dapm_route wsa2_audio_map[] = {
 	{"WSA2_RX1 INP1", "RX1", "WSA2 RX1"},
 	{"WSA2_RX1 INP1", "RX_MIX0", "WSA2 RX_MIX0"},
 	{"WSA2_RX1 INP1", "RX_MIX1", "WSA2 RX_MIX1"},
+	{"WSA2_RX1 INP1", "RX4", "WSA2 RX4"},
+	{"WSA2_RX1 INP1", "RX5", "WSA2 RX5"},
 	{"WSA2_RX1 INP1", "DEC0", "WSA2_TX DEC0_INP"},
 	{"WSA2_RX1 INP1", "DEC1", "WSA2_TX DEC1_INP"},
 	{"WSA2_RX INT1 MIX", NULL, "WSA2_RX1 INP1"},
@@ -2503,6 +2537,8 @@ static const struct snd_soc_dapm_route wsa2_audio_map[] = {
 	{"WSA2_RX1 INP2", "RX1", "WSA2 RX1"},
 	{"WSA2_RX1 INP2", "RX_MIX0", "WSA2 RX_MIX0"},
 	{"WSA2_RX1 INP2", "RX_MIX1", "WSA2 RX_MIX1"},
+	{"WSA2_RX1 INP2", "RX4", "WSA2 RX4"},
+	{"WSA2_RX1 INP2", "RX5", "WSA2 RX5"},
 	{"WSA2_RX1 INP2", "DEC0", "WSA2_TX DEC0_INP"},
 	{"WSA2_RX1 INP2", "DEC1", "WSA2_TX DEC1_INP"},
 	{"WSA2_RX INT1 MIX", NULL, "WSA2_RX1 INP2"},
@@ -2511,6 +2547,8 @@ static const struct snd_soc_dapm_route wsa2_audio_map[] = {
 	{"WSA2_RX1 MIX INP", "RX1", "WSA2 RX1"},
 	{"WSA2_RX1 MIX INP", "RX_MIX0", "WSA2 RX_MIX0"},
 	{"WSA2_RX1 MIX INP", "RX_MIX1", "WSA2 RX_MIX1"},
+	{"WSA2_RX1 MIX INP", "RX4", "WSA2 RX4"},
+	{"WSA2_RX1 MIX INP", "RX5", "WSA2 RX5"},
 	{"WSA2_RX INT1 SEC MIX", NULL, "WSA2_RX1 MIX INP"},
 
 	{"WSA2_RX INT1 SEC MIX", NULL, "WSA2_RX INT1 MIX"},