diff --git a/include/sound/apr_audio-v2.h b/include/sound/apr_audio-v2.h
index a6a860c28958b506736d92194c44e2c06f4ef9cb..a0d1176c9048675e1fdfbad9f4b151106c8f605e 100644
--- a/include/sound/apr_audio-v2.h
+++ b/include/sound/apr_audio-v2.h
@@ -4687,25 +4687,6 @@ struct asm_stream_cmd_open_write_compressed {
 
 } __packed;
 
-
-/*
-    Indicates the number of samples per channel to be removed from the
-    beginning of the stream.
-*/
-#define ASM_DATA_CMD_REMOVE_INITIAL_SILENCE 0x00010D67
-/*
-    Indicates the number of samples per channel to be removed from
-    the end of the stream.
-*/
-#define ASM_DATA_CMD_REMOVE_TRAILING_SILENCE 0x00010D68
-struct asm_data_cmd_remove_silence {
-	struct apr_hdr hdr;
-	u32	num_samples_to_remove;
-	/**< Number of samples per channel to be removed.
-
-	   @values 0 to (2@sscr{32}-1) */
-} __packed;
-
 #define ASM_STREAM_CMD_OPEN_READ_COMPRESSED                        0x00010D95
 
 struct asm_stream_cmd_open_read_compressed {
diff --git a/include/sound/q6asm-v2.h b/include/sound/q6asm-v2.h
index 98aa6b83f87c3bde92a3b75eef52af0704e8dd53..59cf47ff2014c03997fc6cf4ce0796637032f891 100644
--- a/include/sound/q6asm-v2.h
+++ b/include/sound/q6asm-v2.h
@@ -79,9 +79,6 @@
 #define SESSION_MAX		0x08
 #define ASM_CONTROL_SESSION	0x0F
 
-#define ASM_SHIFT_GAPLESS_MODE_FLAG	31
-#define ASM_SHIFT_LAST_BUFFER_FLAG	30
-
 /* payload structure bytes */
 #define READDONE_IDX_STATUS 0
 #define READDONE_IDX_BUFADD_LSW 1
@@ -132,7 +129,6 @@ struct audio_aio_write_param {
 	uint32_t      msw_ts;
 	uint32_t      flags;
 	uint32_t      metadata_len;
-	uint32_t      last_buffer;
 };
 
 struct audio_aio_read_param {
@@ -165,14 +161,12 @@ struct audio_client {
 	uint64_t	       time_stamp;
 	struct apr_svc         *apr;
 	struct apr_svc         *mmap_apr;
-	struct apr_svc         *apr2;
 	struct mutex	       cmd_lock;
 	/* idx:1 out port, 0: in port*/
 	struct audio_port_data port[2];
 	wait_queue_head_t      cmd_wait;
 	wait_queue_head_t      time_wait;
 	bool                   perf_mode;
-	int					   stream_id;
 	/* audio cache operations fptr*/
 	int (*fptr_cache_ops)(struct audio_buffer *abuff, int cache_op);
 };
@@ -205,10 +199,6 @@ int q6asm_open_write(struct audio_client *ac, uint32_t format
 int q6asm_open_write_v2(struct audio_client *ac, uint32_t format,
 			uint16_t bits_per_sample);
 
-int q6asm_stream_open_write_v2(struct audio_client *ac, uint32_t format,
-				uint16_t bits_per_sample, int32_t stream_id,
-				bool is_gapless_mode);
-
 int q6asm_open_read_write(struct audio_client *ac,
 			uint32_t rd_format,
 			uint32_t wr_format);
@@ -241,22 +231,12 @@ int q6asm_run(struct audio_client *ac, uint32_t flags,
 int q6asm_run_nowait(struct audio_client *ac, uint32_t flags,
 		uint32_t msw_ts, uint32_t lsw_ts);
 
-int q6asm_stream_run_nowait(struct audio_client *ac, uint32_t flags,
-		uint32_t msw_ts, uint32_t lsw_ts, uint32_t stream_id);
-
 int q6asm_reg_tx_overflow(struct audio_client *ac, uint16_t enable);
 
-int q6asm_reg_rx_underflow(struct audio_client *ac, uint16_t enable);
-
 int q6asm_cmd(struct audio_client *ac, int cmd);
 
-int q6asm_stream_cmd(struct audio_client *ac, int cmd, uint32_t stream_id);
-
 int q6asm_cmd_nowait(struct audio_client *ac, int cmd);
 
-int q6asm_stream_cmd_nowait(struct audio_client *ac, int cmd,
-			    uint32_t stream_id);
-
 void *q6asm_is_cpu_buf_avail(int dir, struct audio_client *ac,
 				uint32_t *size, uint32_t *idx);
 
@@ -324,9 +304,6 @@ int q6asm_media_format_block_multi_ch_pcm_v2(
 int q6asm_media_format_block_aac(struct audio_client *ac,
 			struct asm_aac_cfg *cfg);
 
-int q6asm_stream_media_format_block_aac(struct audio_client *ac,
-			struct asm_aac_cfg *cfg, int stream_id);
-
 int q6asm_media_format_block_multi_aac(struct audio_client *ac,
 			struct asm_aac_cfg *cfg);
 
@@ -374,8 +351,4 @@ int q6asm_get_apr_service_id(int session_id);
 */
 int q6asm_media_format_block(struct audio_client *ac, uint32_t format);
 
-/* Send the meta data to remove initial and trailing silence */
-int q6asm_send_meta_data(struct audio_client *ac, uint32_t initial_samples,
-		uint32_t trailing_samples);
-
 #endif /* __Q6_ASM_H__ */
diff --git a/sound/soc/msm/qdsp6v2/q6asm.c b/sound/soc/msm/qdsp6v2/q6asm.c
index b12d24c07a1b632aec8d619558672fdbc92c1311..6a9ed544a9bdca1382a23f0da2783fa2aa8132e8 100644
--- a/sound/soc/msm/qdsp6v2/q6asm.c
+++ b/sound/soc/msm/qdsp6v2/q6asm.c
@@ -653,10 +653,6 @@ struct audio_client *q6asm_audio_client_alloc(app_cb cb, void *priv)
 				(apr_fn)q6asm_callback,\
 				((ac->session) << 8 | 0x0001),\
 				ac);
-	ac->apr2 = apr_register("ADSP", "ASM", \
-				(apr_fn)q6asm_callback,\
-				((ac->session) << 8 | 0x0002),\
-				ac);
 
 	if (ac->apr == NULL) {
 		pr_err("%s Registration with APR failed\n", __func__);
@@ -1056,8 +1052,7 @@ static int32_t q6asm_callback(struct apr_client_data *data, void *priv)
 		data->token, data->payload_size, data->src_port,
 		data->dest_port);
 	if ((data->opcode != ASM_DATA_EVENT_RENDERED_EOS) &&
-	    (data->opcode != ASM_DATA_EVENT_EOS) &&
-	    (data->opcode != ASM_SESSION_EVENT_RX_UNDERFLOW))
+			(data->opcode != ASM_DATA_EVENT_EOS))
 		pr_debug("%s:Payload = [0x%x] status[0x%x]\n",
 			__func__, payload[0], payload[1]);
 	if (data->opcode == APR_BASIC_RSP_RESULT) {
@@ -1090,9 +1085,6 @@ static int32_t q6asm_callback(struct apr_client_data *data, void *priv)
 		case ASM_DATA_CMD_MEDIA_FMT_UPDATE_V2:
 		case ASM_STREAM_CMD_SET_ENCDEC_PARAM:
 		case ASM_CMD_ADD_TOPOLOGIES:
-		case ASM_DATA_CMD_REMOVE_INITIAL_SILENCE:
-		case ASM_DATA_CMD_REMOVE_TRAILING_SILENCE:
-		case ASM_SESSION_CMD_REGISTER_FOR_RX_UNDERFLOW_EVENTS:
 		pr_debug("%s:Payload = [0x%x]stat[0x%x]\n",
 				__func__, payload[0], payload[1]);
 			if (atomic_read(&ac->cmd_state) && wakeup_flag) {
@@ -1218,9 +1210,6 @@ static int32_t q6asm_callback(struct apr_client_data *data, void *priv)
 	case ASM_SESSION_EVENTX_OVERFLOW:
 		pr_err("ASM_SESSION_EVENTX_OVERFLOW\n");
 		break;
-	case ASM_SESSION_EVENT_RX_UNDERFLOW:
-		pr_err("ASM_SESSION_EVENT_RX_UNDERFLOW\n");
-		break;
 	case ASM_SESSION_CMDRSP_GET_SESSIONTIME_V3:
 		pr_debug("%s: ASM_SESSION_CMDRSP_GET_SESSIONTIME_V3, payload[0] = %d, payload[1] = %d, payload[2] = %d\n",
 				 __func__,
@@ -1371,16 +1360,11 @@ int q6asm_is_dsp_buf_avail(int dir, struct audio_client *ac)
 	return ret;
 }
 
-static void __q6asm_add_hdr(struct audio_client *ac, struct apr_hdr *hdr,
-			uint32_t pkt_size, uint32_t cmd_flg, uint32_t stream_id)
+static void q6asm_add_hdr(struct audio_client *ac, struct apr_hdr *hdr,
+			uint32_t pkt_size, uint32_t cmd_flg)
 {
-	pr_debug("%s:pkt_size=%d cmd_flg=%d session=%d stream_id=%d\n",
-		 __func__, pkt_size, cmd_flg, ac->session, stream_id);
-	if (ac->apr == NULL) {
-		pr_err("%s: ac->apr is NULL", __func__);
-		return;
-	}
-
+	pr_debug("%s:pkt_size=%d cmd_flg=%d session=%d\n", __func__, pkt_size,
+		cmd_flg, ac->session);
 	mutex_lock(&ac->cmd_lock);
 	hdr->hdr_field = APR_HDR_FIELD(APR_MSG_TYPE_SEQ_CMD, \
 				APR_HDR_LEN(sizeof(struct apr_hdr)),\
@@ -1389,8 +1373,8 @@ static void __q6asm_add_hdr(struct audio_client *ac, struct apr_hdr *hdr,
 	hdr->src_domain = APR_DOMAIN_APPS;
 	hdr->dest_svc = APR_SVC_ASM;
 	hdr->dest_domain = APR_DOMAIN_ADSP;
-	hdr->src_port = ((ac->session << 8) & 0xFF00) | (stream_id+1);
-	hdr->dest_port = ((ac->session << 8) & 0xFF00) | (stream_id+1);
+	hdr->src_port = ((ac->session << 8) & 0xFF00) | 0x01;
+	hdr->dest_port = ((ac->session << 8) & 0xFF00) | 0x01;
 	if (cmd_flg) {
 		hdr->token = ac->session;
 		atomic_set(&ac->cmd_state, 1);
@@ -1400,25 +1384,11 @@ static void __q6asm_add_hdr(struct audio_client *ac, struct apr_hdr *hdr,
 	return;
 }
 
-static void q6asm_add_hdr(struct audio_client *ac, struct apr_hdr *hdr,
+static void q6asm_add_hdr_async(struct audio_client *ac, struct apr_hdr *hdr,
 			uint32_t pkt_size, uint32_t cmd_flg)
 {
-	__q6asm_add_hdr(ac, hdr, pkt_size, cmd_flg, ac->stream_id);
-	return;
-}
-
-static void q6asm_stream_add_hdr(struct audio_client *ac, struct apr_hdr *hdr,
-			uint32_t pkt_size, uint32_t cmd_flg, int32_t stream_id)
-{
-	__q6asm_add_hdr(ac, hdr, pkt_size, cmd_flg, stream_id);
-	return;
-}
-
-static void __q6asm_add_hdr_async(struct audio_client *ac, struct apr_hdr *hdr,
-			uint32_t pkt_size, uint32_t cmd_flg, uint32_t stream_id)
-{
-	pr_debug("%s pkt_size = %d, cmd_flg = %d, session = %d stream_id=%d\n",
-		__func__, pkt_size, cmd_flg, ac->session, stream_id);
+	pr_debug("pkt_size = %d, cmd_flg = %d, session = %d\n",
+			pkt_size, cmd_flg, ac->session);
 	hdr->hdr_field = APR_HDR_FIELD(APR_MSG_TYPE_SEQ_CMD, \
 				APR_HDR_LEN(sizeof(struct apr_hdr)),\
 				APR_PKT_VER);
@@ -1430,8 +1400,8 @@ static void __q6asm_add_hdr_async(struct audio_client *ac, struct apr_hdr *hdr,
 	hdr->src_domain = APR_DOMAIN_APPS;
 	hdr->dest_svc = APR_SVC_ASM;
 	hdr->dest_domain = APR_DOMAIN_ADSP;
-	hdr->src_port = ((ac->session << 8) & 0xFF00) | (stream_id+1);
-	hdr->dest_port = ((ac->session << 8) & 0xFF00) | (stream_id+1);
+	hdr->src_port = ((ac->session << 8) & 0xFF00) | 0x01;
+	hdr->dest_port = ((ac->session << 8) & 0xFF00) | 0x01;
 	if (cmd_flg) {
 		hdr->token = ac->session;
 		atomic_set(&ac->cmd_state, 1);
@@ -1440,21 +1410,6 @@ static void __q6asm_add_hdr_async(struct audio_client *ac, struct apr_hdr *hdr,
 	return;
 }
 
-static void q6asm_add_hdr_async(struct audio_client *ac, struct apr_hdr *hdr,
-				uint32_t pkt_size, uint32_t cmd_flg)
-{
-	__q6asm_add_hdr_async(ac, hdr, pkt_size, cmd_flg, ac->stream_id);
-	return;
-}
-
-static void q6asm_stream_add_hdr_async(struct audio_client *ac,
-					struct apr_hdr *hdr, uint32_t pkt_size,
-					uint32_t cmd_flg, int32_t stream_id)
-{
-	__q6asm_add_hdr_async(ac, hdr, pkt_size, cmd_flg, stream_id);
-	return;
-}
-
 static void q6asm_add_mmaphdr(struct audio_client *ac, struct apr_hdr *hdr,
 			u32 pkt_size, u32 cmd_flg, u32 token)
 {
@@ -1554,8 +1509,7 @@ fail_cmd:
 }
 
 static int __q6asm_open_write(struct audio_client *ac, uint32_t format,
-				uint16_t bits_per_sample, uint32_t stream_id,
-				bool is_gapless_mode)
+		uint16_t bits_per_sample)
 {
 	int rc = 0x00;
 	struct asm_stream_cmd_open_write_v3 open;
@@ -1567,19 +1521,16 @@ static int __q6asm_open_write(struct audio_client *ac, uint32_t format,
 	pr_debug("%s: session[%d] wr_format[0x%x]", __func__, ac->session,
 		format);
 
-	q6asm_stream_add_hdr(ac, &open.hdr, sizeof(open), TRUE, stream_id);
+	q6asm_add_hdr(ac, &open.hdr, sizeof(open), TRUE);
 
 	open.hdr.opcode = ASM_STREAM_CMD_OPEN_WRITE_V3;
 	open.mode_flags = 0x00;
 	if (ac->perf_mode)
 		open.mode_flags |= (ASM_LOW_LATENCY_STREAM_SESSION <<
 				ASM_SHIFT_STREAM_PERF_MODE_FLAG_IN_OPEN_WRITE);
-	else {
+	else
 		open.mode_flags |= (ASM_LEGACY_STREAM_SESSION <<
 				ASM_SHIFT_STREAM_PERF_MODE_FLAG_IN_OPEN_WRITE);
-		if (is_gapless_mode)
-			open.mode_flags |= 1 << ASM_SHIFT_GAPLESS_MODE_FLAG;
-	}
 
 	/* source endpoint : matrix */
 	open.sink_endpointype = ASM_END_POINT_DEVICE_MATRIX;
@@ -1638,23 +1589,13 @@ fail_cmd:
 
 int q6asm_open_write(struct audio_client *ac, uint32_t format)
 {
-	return __q6asm_open_write(ac, format, 16, ac->stream_id,
-					 false /*gapless*/);
+	return __q6asm_open_write(ac, format, 16);
 }
 
 int q6asm_open_write_v2(struct audio_client *ac, uint32_t format,
 		uint16_t bits_per_sample)
 {
-	return __q6asm_open_write(ac, format, bits_per_sample,
-					 ac->stream_id, false /*gapless*/);
-}
-
-int q6asm_stream_open_write_v2(struct audio_client *ac, uint32_t format,
-				uint16_t bits_per_sample, int32_t stream_id,
-				bool is_gapless_mode)
-{
-	return __q6asm_open_write(ac, format, bits_per_sample,
-					 stream_id, is_gapless_mode);
+	return __q6asm_open_write(ac, format, bits_per_sample);
 }
 
 int q6asm_open_read_write(struct audio_client *ac,
@@ -1808,8 +1749,8 @@ fail_cmd:
 	return -EINVAL;
 }
 
-static int __q6asm_run_nowait(struct audio_client *ac, uint32_t flags,
-		uint32_t msw_ts, uint32_t lsw_ts, uint32_t stream_id)
+int q6asm_run_nowait(struct audio_client *ac, uint32_t flags,
+		uint32_t msw_ts, uint32_t lsw_ts)
 {
 	struct asm_session_cmd_run_v2 run;
 	int rc;
@@ -1818,7 +1759,7 @@ static int __q6asm_run_nowait(struct audio_client *ac, uint32_t flags,
 		return -EINVAL;
 	}
 	pr_debug("session[%d]", ac->session);
-	q6asm_stream_add_hdr_async(ac, &run.hdr, sizeof(run), TRUE, stream_id);
+	q6asm_add_hdr_async(ac, &run.hdr, sizeof(run), TRUE);
 
 	run.hdr.opcode = ASM_SESSION_CMD_RUN_V2;
 	run.flags    = flags;
@@ -1836,17 +1777,6 @@ static int __q6asm_run_nowait(struct audio_client *ac, uint32_t flags,
 	return 0;
 }
 
-int q6asm_run_nowait(struct audio_client *ac, uint32_t flags,
-			uint32_t msw_ts, uint32_t lsw_ts)
-{
-	return __q6asm_run_nowait(ac, flags, msw_ts, lsw_ts, ac->stream_id);
-}
-
-int q6asm_stream_run_nowait(struct audio_client *ac, uint32_t flags,
-			uint32_t msw_ts, uint32_t lsw_ts, uint32_t stream_id)
-{
-	return __q6asm_run_nowait(ac, flags, msw_ts, lsw_ts, stream_id);
-}
 
 int q6asm_enc_cfg_blk_aac(struct audio_client *ac,
 			 uint32_t frames_per_buf,
@@ -2331,6 +2261,12 @@ fail_cmd:
 }
 
 
+int q6asm_media_format_block_aac(struct audio_client *ac,
+			struct asm_aac_cfg *cfg)
+{
+	return q6asm_media_format_block_multi_aac(ac, cfg);
+}
+
 static int __q6asm_media_format_block_pcm(struct audio_client *ac,
 				uint32_t rate, uint32_t channels,
 				uint16_t bits_per_sample)
@@ -2461,8 +2397,8 @@ int q6asm_media_format_block_multi_ch_pcm_v2(
 			bits_per_sample);
 }
 
-static int __q6asm_media_format_block_multi_aac(struct audio_client *ac,
-				struct asm_aac_cfg *cfg, int stream_id)
+int q6asm_media_format_block_multi_aac(struct audio_client *ac,
+				struct asm_aac_cfg *cfg)
 {
 	struct asm_aac_fmt_blk_v2 fmt;
 	int rc = 0;
@@ -2470,7 +2406,7 @@ static int __q6asm_media_format_block_multi_aac(struct audio_client *ac,
 	pr_debug("%s:session[%d]rate[%d]ch[%d]\n", __func__, ac->session,
 		cfg->sample_rate, cfg->ch_cfg);
 
-	q6asm_stream_add_hdr(ac, &fmt.hdr, sizeof(fmt), TRUE, stream_id);
+	q6asm_add_hdr(ac, &fmt.hdr, sizeof(fmt), TRUE);
 
 	fmt.hdr.opcode = ASM_DATA_CMD_MEDIA_FMT_UPDATE_V2;
 	fmt.fmt_blk.fmt_blk_size = sizeof(fmt) - sizeof(fmt.hdr) -
@@ -2504,24 +2440,6 @@ fail_cmd:
 	return -EINVAL;
 }
 
-int q6asm_media_format_block_multi_aac(struct audio_client *ac,
-				struct asm_aac_cfg *cfg)
-{
-	return __q6asm_media_format_block_multi_aac(ac, cfg, ac->stream_id);
-}
-
-int q6asm_media_format_block_aac(struct audio_client *ac,
-			struct asm_aac_cfg *cfg)
-{
-	return __q6asm_media_format_block_multi_aac(ac, cfg, ac->stream_id);
-}
-
-int q6asm_stream_media_format_block_aac(struct audio_client *ac,
-			struct asm_aac_cfg *cfg, int stream_id)
-{
-	return __q6asm_media_format_block_multi_aac(ac, cfg, stream_id);
-}
-
 int q6asm_media_format_block_wma(struct audio_client *ac,
 				void *cfg)
 {
@@ -3482,7 +3400,7 @@ int q6asm_async_write(struct audio_client *ac,
 		write.flags = (0x00000000 | (param->flags & 0x800000FF));
 	else
 		write.flags = (0x80000000 | param->flags);
-	write.flags |= param->last_buffer << ASM_SHIFT_LAST_BUFFER_FLAG;
+
 	write.seq_id = param->uid;
 	list_for_each_safe(ptr, next, &ac->port[IN].mem_map_handle) {
 		buf_node = list_entry(ptr, struct asm_buffer_node,
@@ -3732,7 +3650,7 @@ fail_cmd:
 	return -EINVAL;
 }
 
-static int __q6asm_cmd(struct audio_client *ac, int cmd, uint32_t stream_id)
+int q6asm_cmd(struct audio_client *ac, int cmd)
 {
 	struct apr_hdr hdr;
 	int rc;
@@ -3743,7 +3661,7 @@ static int __q6asm_cmd(struct audio_client *ac, int cmd, uint32_t stream_id)
 		pr_err("APR handle NULL\n");
 		return -EINVAL;
 	}
-	q6asm_stream_add_hdr(ac, &hdr, sizeof(hdr), TRUE, stream_id);
+	q6asm_add_hdr(ac, &hdr, sizeof(hdr), TRUE);
 	switch (cmd) {
 	case CMD_PAUSE:
 		pr_debug("%s:CMD_PAUSE\n", __func__);
@@ -3816,18 +3734,7 @@ fail_cmd:
 	return -EINVAL;
 }
 
-int q6asm_cmd(struct audio_client *ac, int cmd)
-{
-	return __q6asm_cmd(ac, cmd, ac->stream_id);
-}
-
-int q6asm_stream_cmd(struct audio_client *ac, int cmd, uint32_t stream_id)
-{
-	return __q6asm_cmd(ac, cmd, stream_id);
-}
-
-static int __q6asm_cmd_nowait(struct audio_client *ac, int cmd,
-			      uint32_t stream_id)
+int q6asm_cmd_nowait(struct audio_client *ac, int cmd)
 {
 	struct apr_hdr hdr;
 	int rc;
@@ -3836,7 +3743,7 @@ static int __q6asm_cmd_nowait(struct audio_client *ac, int cmd,
 		pr_err("%s:APR handle NULL\n", __func__);
 		return -EINVAL;
 	}
-	q6asm_stream_add_hdr_async(ac, &hdr, sizeof(hdr), TRUE, stream_id);
+	q6asm_add_hdr_async(ac, &hdr, sizeof(hdr), TRUE);
 	switch (cmd) {
 	case CMD_PAUSE:
 		pr_debug("%s:CMD_PAUSE\n", __func__);
@@ -3846,10 +3753,6 @@ static int __q6asm_cmd_nowait(struct audio_client *ac, int cmd,
 		pr_debug("%s:CMD_EOS\n", __func__);
 		hdr.opcode = ASM_DATA_CMD_EOS;
 		break;
-	case CMD_CLOSE:
-		pr_debug("%s:CMD_CLOSE\n", __func__);
-		hdr.opcode = ASM_STREAM_CMD_CLOSE;
-		break;
 	default:
 		pr_err("%s:Invalid format[%d]\n", __func__, cmd);
 		goto fail_cmd;
@@ -3870,54 +3773,6 @@ fail_cmd:
 	return -EINVAL;
 }
 
-int q6asm_cmd_nowait(struct audio_client *ac, int cmd)
-{
-	pr_debug("%s: stream_id: %d\n", __func__, ac->stream_id);
-	return __q6asm_cmd_nowait(ac, cmd, ac->stream_id);
-}
-
-int q6asm_stream_cmd_nowait(struct audio_client *ac, int cmd,
-			    uint32_t stream_id)
-{
-	pr_debug("%s: stream_id: %d\n", __func__, stream_id);
-	return __q6asm_cmd_nowait(ac, cmd, stream_id);
-}
-
-int q6asm_send_meta_data(struct audio_client *ac, uint32_t initial_samples,
-		uint32_t trailing_samples)
-{
-	struct asm_data_cmd_remove_silence silence;
-	int rc = 0;
-	if (!ac || ac->apr == NULL) {
-		pr_err("APR handle NULL\n");
-		return -EINVAL;
-	}
-	pr_debug("%s session[%d]", __func__, ac->session);
-	q6asm_add_hdr_async(ac, &silence.hdr, sizeof(silence), FALSE);
-
-	silence.hdr.opcode = ASM_DATA_CMD_REMOVE_INITIAL_SILENCE;
-	silence.num_samples_to_remove    = initial_samples;
-
-	rc = apr_send_pkt(ac->apr, (uint32_t *) &silence);
-	if (rc < 0) {
-		pr_err("Commmand silence failed[%d]", rc);
-		goto fail_cmd;
-	}
-
-	silence.hdr.opcode = ASM_DATA_CMD_REMOVE_TRAILING_SILENCE;
-	silence.num_samples_to_remove    = trailing_samples;
-
-	rc = apr_send_pkt(ac->apr, (uint32_t *) &silence);
-	if (rc < 0) {
-		pr_err("Commmand silence failed[%d]", rc);
-		goto fail_cmd;
-	}
-
-	return 0;
-fail_cmd:
-	return -EINVAL;
-}
-
 static void q6asm_reset_buf_state(struct audio_client *ac)
 {
 	int cnt = 0;
@@ -3977,35 +3832,6 @@ fail_cmd:
 	return -EINVAL;
 }
 
-int q6asm_reg_rx_underflow(struct audio_client *ac, uint16_t enable)
-{
-	struct asm_session_cmd_rgstr_rx_underflow rx_underflow;
-	int rc;
-
-	if (!ac || ac->apr == NULL) {
-		pr_err("APR handle NULL\n");
-		return -EINVAL;
-	}
-	pr_debug("%s:session[%d]enable[%d]\n", __func__,
-						ac->session, enable);
-	q6asm_add_hdr_async(ac, &rx_underflow.hdr, sizeof(rx_underflow), FALSE);
-
-	rx_underflow.hdr.opcode = \
-			ASM_SESSION_CMD_REGISTER_FOR_RX_UNDERFLOW_EVENTS;
-	/* tx overflow event: enable */
-	rx_underflow.enable_flag = enable;
-
-	rc = apr_send_pkt(ac->apr, (uint32_t *) &rx_underflow);
-	if (rc < 0) {
-		pr_err("tx overflow op[0x%x]rc[%d]\n", \
-						rx_underflow.hdr.opcode, rc);
-		goto fail_cmd;
-	}
-	return 0;
-fail_cmd:
-	return -EINVAL;
-}
-
 int q6asm_get_apr_service_id(int session_id)
 {
 	pr_debug("%s\n", __func__);