diff --git a/asoc/msm-pcm-routing-v2.c b/asoc/msm-pcm-routing-v2.c
index f942a09..f41c464 100644
--- a/asoc/msm-pcm-routing-v2.c
+++ b/asoc/msm-pcm-routing-v2.c
@@ -24533,8 +24533,6 @@
 				&wsa_rx_0_vi_fb_lch_mux),
 	SND_SOC_DAPM_MUX("WSA_RX_0_VI_FB_RCH_MUX", SND_SOC_NOPM, 0, 0,
 				&wsa_rx_0_vi_fb_rch_mux),
-	SND_SOC_DAPM_MUX("QUIN_MI2S_RX_VI_FB_MUX", SND_SOC_NOPM, 0, 0,
-				&quin_mi2s_rx_vi_fb_mux),
 	SND_SOC_DAPM_MUX("VOC_EXT_EC MUX", SND_SOC_NOPM, 0, 0,
 			 &voc_ext_ec_mux),
 	SND_SOC_DAPM_MUX("AUDIO_REF_EC_UL1 MUX", SND_SOC_NOPM, 0, 0,
diff --git a/dsp/q6afe.c b/dsp/q6afe.c
index e55978c..e2dbfa4 100644
--- a/dsp/q6afe.c
+++ b/dsp/q6afe.c
@@ -2427,11 +2427,11 @@
 	if (this_afe.vi_tx_port == port_id) {
 		memcpy(&afe_spk_config.v4_ch_map_cfg, &this_afe.v4_ch_map_cfg,
 			sizeof(struct afe_sp_v4_param_vi_channel_map_cfg));
-		if (afe_spk_prot_prepare(port_id, this_afe.vi_rx_port,
+		/*if (afe_spk_prot_prepare(port_id, this_afe.vi_rx_port,
 			AFE_PARAM_ID_SP_V4_VI_CHANNEL_MAP_CFG, &afe_spk_config,
 			sizeof(struct afe_sp_v4_param_vi_channel_map_cfg)))
 			pr_info("%s: SPKR_CALIB_CHANNEL_MAP_CFG failed\n",
-				 __func__);
+				 __func__);*/
 	}
 
 	if (this_afe.cal_data[AFE_FB_SPKR_PROT_CAL] == NULL ||
@@ -9840,7 +9840,7 @@
 	}
 	pr_debug("%s: src_port 0x%x  dst_port 0x%x l_ch %d r_ch %d\n",
 		 __func__, src_port, dst_port, l_ch, r_ch);
-	if (q6core_get_avcs_api_version_per_service(
+	/*if (q6core_get_avcs_api_version_per_service(
 		APRV2_IDS_SERVICE_ID_ADSP_AFE_V) >= AFE_API_VERSION_V9) {
 		if (l_ch) {
 			this_afe.v4_ch_map_cfg.chan_info[index++] = 1;
@@ -9856,7 +9856,7 @@
 		this_afe.vi_tx_port = src_port;
 		this_afe.vi_rx_port = dst_port;
 		ret = 0;
-	} else {
+	} else {*/
 		memset(&prot_config, 0, sizeof(prot_config));
 		prot_config.feedback_path_cfg.dst_portid =
 		q6audio_get_port_id(dst_port);
@@ -9874,7 +9874,7 @@
 		ret = afe_spk_prot_prepare(src_port, dst_port,
 				AFE_PARAM_ID_FEEDBACK_PATH_CFG, &prot_config,
 				 sizeof(union afe_spkr_prot_config));
-	}
+//	}
 
 fail_cmd:
 	return ret;
