dsp: Add support for EOS V2
Use EOS V2 to avoid time out for EOS when afe port is closed before EOS Change-Id: I3be0aa33384d2015354b8f9a307f3e0cb200c040 Signed-off-by: Satish Babu Patakokila <sbpata@codeaurora.org>
This commit is contained in:
@@ -1984,6 +1984,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_RENDERED_EOS_V2) &&
|
||||
(data->opcode != ASM_DATA_EVENT_EOS) &&
|
||||
(data->opcode != ASM_SESSION_EVENTX_OVERFLOW) &&
|
||||
(data->opcode != ASM_SESSION_EVENT_RX_UNDERFLOW)) {
|
||||
@@ -2010,6 +2011,7 @@ static int32_t q6asm_callback(struct apr_client_data *data, void *priv)
|
||||
case ASM_SESSION_CMD_PAUSE:
|
||||
case ASM_SESSION_CMD_SUSPEND:
|
||||
case ASM_DATA_CMD_EOS:
|
||||
case ASM_DATA_CMD_EOS_V2:
|
||||
case ASM_STREAM_CMD_CLOSE:
|
||||
case ASM_STREAM_CMD_FLUSH:
|
||||
case ASM_SESSION_CMD_RUN_V2:
|
||||
@@ -2347,6 +2349,7 @@ static int32_t q6asm_callback(struct apr_client_data *data, void *priv)
|
||||
}
|
||||
case ASM_DATA_EVENT_EOS:
|
||||
case ASM_DATA_EVENT_RENDERED_EOS:
|
||||
case ASM_DATA_EVENT_RENDERED_EOS_V2:
|
||||
pr_debug("%s: EOS ACK received: rxed session %d opcode 0x%x token 0x%x src %d dest %d\n",
|
||||
__func__, ac->session,
|
||||
data->opcode, data->token,
|
||||
@@ -10374,7 +10377,7 @@ static int __q6asm_cmd(struct audio_client *ac, int cmd, uint32_t stream_id)
|
||||
break;
|
||||
case CMD_EOS:
|
||||
pr_debug("%s: CMD_EOS\n", __func__);
|
||||
hdr.opcode = ASM_DATA_CMD_EOS;
|
||||
hdr.opcode = ASM_DATA_CMD_EOS_V2;
|
||||
atomic_set(&ac->cmd_state, 0);
|
||||
state = &ac->cmd_state;
|
||||
break;
|
||||
@@ -10524,7 +10527,7 @@ static int __q6asm_cmd_nowait(struct audio_client *ac, int cmd,
|
||||
break;
|
||||
case CMD_EOS:
|
||||
pr_debug("%s: CMD_EOS\n", __func__);
|
||||
hdr.opcode = ASM_DATA_CMD_EOS;
|
||||
hdr.opcode = ASM_DATA_CMD_EOS_V2;
|
||||
break;
|
||||
case CMD_CLOSE:
|
||||
pr_debug("%s: CMD_CLOSE\n", __func__);
|
||||
|
Reference in New Issue
Block a user