summaryrefslogtreecommitdiffstats
path: root/stack/avdt/avdt_scb.c
diff options
context:
space:
mode:
Diffstat (limited to 'stack/avdt/avdt_scb.c')
-rw-r--r--stack/avdt/avdt_scb.c46
1 files changed, 18 insertions, 28 deletions
diff --git a/stack/avdt/avdt_scb.c b/stack/avdt/avdt_scb.c
index 8eb5cc211..f5f5b5a79 100644
--- a/stack/avdt/avdt_scb.c
+++ b/stack/avdt/avdt_scb.c
@@ -24,7 +24,7 @@
******************************************************************************/
#include <string.h>
-#include "data_types.h"
+#include "bt_types.h"
#include "bt_target.h"
#include "bt_utils.h"
#include "avdt_api.h"
@@ -531,8 +531,6 @@ void avdt_scb_event(tAVDT_SCB *p_scb, UINT8 event, tAVDT_SCB_EVT *p_data)
#if AVDT_DEBUG == TRUE
AVDT_TRACE_EVENT("SCB hdl=%d event=%d/%s state=%s", avdt_scb_to_hdl(p_scb), event, avdt_scb_evt_str[event], avdt_scb_st_str[p_scb->state]);
#endif
- BTTRC_AVDT_SCB_EVENT(event, p_scb->state);
-
/* set current event */
p_scb->curr_evt = event;
@@ -541,7 +539,6 @@ void avdt_scb_event(tAVDT_SCB *p_scb, UINT8 event, tAVDT_SCB_EVT *p_data)
/* set next state */
if (p_scb->state != state_table[event][AVDT_SCB_NEXT_STATE]) {
- BTTRC_AVDT_SCB_STATE(state_table[event][AVDT_SCB_NEXT_STATE]);
p_scb->state = state_table[event][AVDT_SCB_NEXT_STATE];
}
@@ -550,7 +547,6 @@ void avdt_scb_event(tAVDT_SCB *p_scb, UINT8 event, tAVDT_SCB_EVT *p_data)
{
if ((action = state_table[event][i]) != AVDT_SCB_IGNORE)
{
- BTTRC_AVDT_SCB_ACTION(action);
(*avdt_cb.p_scb_act[action])(p_scb, p_data);
}
else
@@ -734,41 +730,36 @@ UINT8 avdt_scb_verify(tAVDT_CCB *p_ccb, UINT8 state, UINT8 *p_seid, UINT16 num_s
int i;
tAVDT_SCB *p_scb;
UINT8 nsc_mask;
- UINT8 chk_state;
UINT8 ret = 0;
AVDT_TRACE_DEBUG("avdt_scb_verify state %d", state);
/* set nonsupported command mask */
/* translate public state into private state */
nsc_mask = 0;
- chk_state = AVDT_SCB_STREAM_ST;
- switch(state)
- {
- case AVDT_VERIFY_SUSPEND:
- nsc_mask = AVDT_NSC_SUSPEND;
- break;
- case AVDT_VERIFY_OPEN:
- case AVDT_VERIFY_START:
- chk_state = AVDT_SCB_OPEN_ST;
- break;
- }
+ if (state == AVDT_VERIFY_SUSPEND)
+ nsc_mask = AVDT_NSC_SUSPEND;
/* verify every scb */
- for (i = 0; i < num_seid; i++)
+ for (i = 0, *p_err_code = 0; i < num_seid && *p_err_code == 0; i++)
{
if ((p_scb = avdt_scb_by_hdl(p_seid[i])) == NULL)
- {
*p_err_code = AVDT_ERR_BAD_STATE;
- break;
- }
- else if ((p_scb->state != chk_state) || (p_scb->p_ccb != p_ccb))
- {
+ else if (p_scb->p_ccb != p_ccb)
*p_err_code = AVDT_ERR_BAD_STATE;
- break;
- }
else if (p_scb->cs.nsc_mask & nsc_mask)
- {
*p_err_code = AVDT_ERR_NSC;
+
+ switch (state) {
+ case AVDT_VERIFY_OPEN:
+ case AVDT_VERIFY_START:
+ if (p_scb->state != AVDT_SCB_OPEN_ST && p_scb->state != AVDT_SCB_STREAM_ST)
+ *p_err_code = AVDT_ERR_BAD_STATE;
+ break;
+
+ case AVDT_VERIFY_SUSPEND:
+ case AVDT_VERIFY_STREAMING:
+ if (p_scb->state != AVDT_SCB_STREAM_ST)
+ *p_err_code = AVDT_ERR_BAD_STATE;
break;
}
}
@@ -777,8 +768,7 @@ UINT8 avdt_scb_verify(tAVDT_CCB *p_ccb, UINT8 state, UINT8 *p_seid, UINT16 num_s
{
ret = p_seid[i];
}
- AVDT_TRACE_DEBUG("avdt_scb_verify state %d, nsc_mask0x%x, ret: %d",
- chk_state, nsc_mask, ret);
+
return ret;
}