Loading system/bta/hf_client/bta_hf_client_at.cc +22 −9 Original line number Diff line number Diff line Loading @@ -176,6 +176,7 @@ static void bta_hf_client_stop_at_resp_timer(tBTA_HF_CLIENT_CB* client_cb) { static void bta_hf_client_send_at(tBTA_HF_CLIENT_CB* client_cb, tBTA_HF_CLIENT_AT_CMD cmd, const char* buf, uint16_t buf_len) { APPL_TRACE_DEBUG("%s", __func__); if ((client_cb->at_cb.current_cmd == BTA_HF_CLIENT_AT_NONE || client_cb->svc_conn == false) && !alarm_is_scheduled(client_cb->at_cb.hold_timer)) { Loading Loading @@ -442,8 +443,13 @@ static void bta_hf_client_handle_ciev(tBTA_HF_CLIENT_CB* client_cb, static void bta_hf_client_handle_bcs(tBTA_HF_CLIENT_CB* client_cb, uint32_t codec) { APPL_TRACE_DEBUG("%s: %u", __func__, codec); APPL_TRACE_DEBUG("%s: codec: %u sco listen state: %d", __func__, codec, client_cb->sco_state); // Only send acceptance for the codec request if we are ready to accept the // SCO connection. sco_state is set to listen when the upper layer calls for // audio connection. if (client_cb->sco_state == BTA_HF_CLIENT_SCO_LISTEN_ST) { if (codec == BTM_SCO_CODEC_CVSD || codec == BTM_SCO_CODEC_MSBC) { client_cb->negotiated_codec = codec; bta_hf_client_send_at_bcs(client_cb, codec); Loading @@ -452,6 +458,7 @@ static void bta_hf_client_handle_bcs(tBTA_HF_CLIENT_CB* client_cb, bta_hf_client_send_at_bac(client_cb); } } } static void bta_hf_client_handle_bsir(tBTA_HF_CLIENT_CB* client_cb, uint32_t provided) { Loading Loading @@ -1932,6 +1939,11 @@ void bta_hf_client_send_at_bcc(tBTA_HF_CLIENT_CB* client_cb) { buf = "AT+BCC\r"; bta_hf_client_send_at(client_cb, BTA_HF_CLIENT_AT_BCC, buf, strlen(buf)); // At this point we should also open up an incoming SCO connection tBTA_HF_CLIENT_DATA p_data; p_data.hdr.layer_specific = client_cb->handle; bta_hf_client_sco_listen(&p_data); } void bta_hf_client_send_at_cnum(tBTA_HF_CLIENT_CB* client_cb) { Loading Loading @@ -2042,6 +2054,7 @@ void bta_hf_client_send_at_cmd(tBTA_HF_CLIENT_DATA* p_data) { tBTA_HF_CLIENT_DATA_VAL* p_val = (tBTA_HF_CLIENT_DATA_VAL*)p_data; char buf[BTA_HF_CLIENT_AT_MAX_LEN]; APPL_TRACE_DEBUG("%s: at cmd: %d", __func__, p_val->uint8_val); switch (p_val->uint8_val) { case BTA_HF_CLIENT_AT_CMD_VTS: bta_hf_client_send_at_vts(client_cb, (char)p_val->uint32_val1); Loading @@ -2064,7 +2077,7 @@ void bta_hf_client_send_at_cmd(tBTA_HF_CLIENT_DATA* p_data) { bta_hf_client_send_at_cnum(client_cb); break; case BTA_HF_CLIENT_AT_CMD_ATA: // bta_hf_client_send_at_ata(client_cb); bta_hf_client_send_at_ata(client_cb); break; case BTA_HF_CLIENT_AT_CMD_COPS: bta_hf_client_send_at_cops(client_cb, true); Loading system/bta/hf_client/bta_hf_client_main.cc +3 −3 Original line number Diff line number Diff line Loading @@ -82,7 +82,7 @@ const tBTA_HF_CLIENT_ACTION bta_hf_client_action[] = { /* BTA_HF_CLIENT_START_CLOSE */ bta_hf_client_start_close, /* BTA_HF_CLIENT_START_OPEN */ bta_hf_client_start_open, /* BTA_HF_CLIENT_RFC_ACP_OPEN */ bta_hf_client_rfc_acp_open, /* BTA_HF_CLIENT_SCO_LISTEN */ bta_hf_client_sco_listen, /* BTA_HF_CLIENT_SCO_LISTEN */ NULL, /* BTA_HF_CLIENT_SCO_CONN_OPEN */ bta_hf_client_sco_conn_open, /* BTA_HF_CLIENT_SCO_CONN_CLOSE*/ bta_hf_client_sco_conn_close, /* BTA_HF_CLIENT_SCO_OPEN */ bta_hf_client_sco_open, Loading Loading @@ -118,7 +118,7 @@ const uint8_t bta_hf_client_st_init[][BTA_HF_CLIENT_NUM_COLS] = { BTA_HF_CLIENT_INIT_ST}, /* API_AUDIO_CLOSE_EVT */ {BTA_HF_CLIENT_IGNORE, BTA_HF_CLIENT_IGNORE, BTA_HF_CLIENT_INIT_ST}, /* RFC_OPEN_EVT */ {BTA_HF_CLIENT_RFC_ACP_OPEN, BTA_HF_CLIENT_SCO_LISTEN, /* RFC_OPEN_EVT */ {BTA_HF_CLIENT_RFC_ACP_OPEN, BTA_HF_CLIENT_IGNORE, BTA_HF_CLIENT_OPEN_ST}, /* RFC_CLOSE_EVT */ {BTA_HF_CLIENT_IGNORE, BTA_HF_CLIENT_IGNORE, BTA_HF_CLIENT_INIT_ST}, Loading Loading @@ -154,7 +154,7 @@ const uint8_t bta_hf_client_st_opening[][BTA_HF_CLIENT_NUM_COLS] = { BTA_HF_CLIENT_OPENING_ST}, /* API_AUDIO_CLOSE_EVT */ {BTA_HF_CLIENT_IGNORE, BTA_HF_CLIENT_IGNORE, BTA_HF_CLIENT_OPENING_ST}, /* RFC_OPEN_EVT */ {BTA_HF_CLIENT_RFC_OPEN, BTA_HF_CLIENT_SCO_LISTEN, /* RFC_OPEN_EVT */ {BTA_HF_CLIENT_RFC_OPEN, BTA_HF_CLIENT_IGNORE, BTA_HF_CLIENT_OPEN_ST}, /* RFC_CLOSE_EVT */ {BTA_HF_CLIENT_RFC_FAIL, BTA_HF_CLIENT_IGNORE, BTA_HF_CLIENT_INIT_ST}, Loading system/bta/hf_client/bta_hf_client_sco.cc +21 −33 Original line number Diff line number Diff line Loading @@ -79,18 +79,15 @@ enum { * Function bta_hf_client_remove_sco * * Description Removes the specified SCO from the system. * If only_active is true, then SCO is only removed if * connected. * * Returns bool - true if SCO removal was started * ******************************************************************************/ static bool bta_hf_client_sco_remove(tBTA_HF_CLIENT_CB* client_cb, bool only_active) { static bool bta_hf_client_sco_remove(tBTA_HF_CLIENT_CB* client_cb) { bool removed_started = false; tBTM_STATUS status; APPL_TRACE_DEBUG("%s: %d", __func__, only_active); APPL_TRACE_DEBUG("%s", __func__); if (client_cb->sco_idx != BTM_INVALID_SCO_INDEX) { status = BTM_RemoveSco(client_cb->sco_idx); Loading Loading @@ -327,8 +324,8 @@ static void bta_hf_client_sco_create(tBTA_HF_CLIENT_CB* client_cb, ******************************************************************************/ static void bta_hf_client_sco_event(tBTA_HF_CLIENT_CB* client_cb, uint8_t event) { APPL_TRACE_DEBUG("%s: state: %d event: %d", __func__, client_cb->sco_state, event); APPL_TRACE_DEBUG("%s: before state: %d event: %d", __func__, client_cb->sco_state, event); switch (client_cb->sco_state) { case BTA_HF_CLIENT_SCO_SHUTDOWN_ST: Loading @@ -349,13 +346,12 @@ static void bta_hf_client_sco_event(tBTA_HF_CLIENT_CB* client_cb, case BTA_HF_CLIENT_SCO_LISTEN_ST: switch (event) { case BTA_HF_CLIENT_SCO_LISTEN_E: /* create sco listen connection (Additional channel) */ bta_hf_client_sco_create(client_cb, false); /* Ignore */ break; case BTA_HF_CLIENT_SCO_OPEN_E: /* remove listening connection */ bta_hf_client_sco_remove(client_cb, false); bta_hf_client_sco_remove(client_cb); /* create sco connection to peer */ bta_hf_client_sco_create(client_cb, true); Loading @@ -363,20 +359,13 @@ static void bta_hf_client_sco_event(tBTA_HF_CLIENT_CB* client_cb, break; case BTA_HF_CLIENT_SCO_SHUTDOWN_E: case BTA_HF_CLIENT_SCO_CLOSE_E: /* remove listening connection */ bta_hf_client_sco_remove(client_cb, false); bta_hf_client_sco_remove(client_cb); client_cb->sco_state = BTA_HF_CLIENT_SCO_SHUTDOWN_ST; break; case BTA_HF_CLIENT_SCO_CLOSE_E: /* remove listening connection */ /* Ignore the event. We need to keep listening SCO for the active SLC */ APPL_TRACE_WARNING("BTA_HF_CLIENT_SCO_LISTEN_ST: Ignoring event %d", event); break; case BTA_HF_CLIENT_SCO_CONN_CLOSE_E: /* sco failed; create sco listen connection */ bta_hf_client_sco_create(client_cb, false); Loading @@ -384,7 +373,8 @@ static void bta_hf_client_sco_event(tBTA_HF_CLIENT_CB* client_cb, break; default: APPL_TRACE_WARNING("BTA_HF_CLIENT_SCO_LISTEN_ST: Ignoring event %d", APPL_TRACE_WARNING( "%s: BTA_HF_CLIENT_SCO_LISTEN_ST: Ignoring event %d", __func__, event); break; } Loading Loading @@ -429,7 +419,7 @@ static void bta_hf_client_sco_event(tBTA_HF_CLIENT_CB* client_cb, case BTA_HF_CLIENT_SCO_CONN_OPEN_E: /* close sco connection */ bta_hf_client_sco_remove(client_cb, true); bta_hf_client_sco_remove(client_cb); client_cb->sco_state = BTA_HF_CLIENT_SCO_CLOSING_ST; break; Loading @@ -450,23 +440,21 @@ static void bta_hf_client_sco_event(tBTA_HF_CLIENT_CB* client_cb, case BTA_HF_CLIENT_SCO_OPEN_ST: switch (event) { case BTA_HF_CLIENT_SCO_CLOSE_E: /* close sco connection if active */ if (bta_hf_client_sco_remove(client_cb, true)) { if (bta_hf_client_sco_remove(client_cb)) { client_cb->sco_state = BTA_HF_CLIENT_SCO_CLOSING_ST; } break; case BTA_HF_CLIENT_SCO_SHUTDOWN_E: /* remove all listening connections */ bta_hf_client_sco_remove(client_cb, false); /* remove listening connection */ bta_hf_client_sco_remove(client_cb); client_cb->sco_state = BTA_HF_CLIENT_SCO_SHUTTING_ST; break; case BTA_HF_CLIENT_SCO_CONN_CLOSE_E: /* peer closed sco; create sco listen connection */ bta_hf_client_sco_create(client_cb, false); client_cb->sco_state = BTA_HF_CLIENT_SCO_LISTEN_ST; /* peer closed sco */ client_cb->sco_state = BTA_HF_CLIENT_SCO_SHUTDOWN_ST; break; default: Loading @@ -488,9 +476,7 @@ static void bta_hf_client_sco_event(tBTA_HF_CLIENT_CB* client_cb, case BTA_HF_CLIENT_SCO_CONN_CLOSE_E: /* peer closed sco; create sco listen connection */ bta_hf_client_sco_create(client_cb, false); client_cb->sco_state = BTA_HF_CLIENT_SCO_LISTEN_ST; client_cb->sco_state = BTA_HF_CLIENT_SCO_SHUTDOWN_ST; break; default: Loading Loading @@ -527,7 +513,7 @@ static void bta_hf_client_sco_event(tBTA_HF_CLIENT_CB* client_cb, switch (event) { case BTA_HF_CLIENT_SCO_CONN_OPEN_E: /* close sco connection; wait for conn close event */ bta_hf_client_sco_remove(client_cb, true); bta_hf_client_sco_remove(client_cb); break; case BTA_HF_CLIENT_SCO_CONN_CLOSE_E: Loading @@ -548,6 +534,8 @@ static void bta_hf_client_sco_event(tBTA_HF_CLIENT_CB* client_cb, default: break; } APPL_TRACE_DEBUG("%s: after state: %d", __func__, client_cb->sco_state); } /******************************************************************************* Loading system/btif/src/btif_a2dp_sink.cc +7 −6 Original line number Diff line number Diff line Loading @@ -473,13 +473,13 @@ static void btif_a2dp_sink_decoder_update_event( btif_a2dp_sink_cb.channel_count = channel_count; btif_a2dp_sink_cb.rx_flush = false; APPL_TRACE_DEBUG("Reset to Sink role"); APPL_TRACE_DEBUG("%s: Reset to Sink role", __func__); status = OI_CODEC_SBC_DecoderReset( &btif_a2dp_sink_context, btif_a2dp_sink_context_data, sizeof(btif_a2dp_sink_context_data), 2, 2, false); if (!OI_SUCCESS(status)) { APPL_TRACE_ERROR("OI_CODEC_SBC_DecoderReset failed with error code %d", status); APPL_TRACE_ERROR("%s: OI_CODEC_SBC_DecoderReset failed with error code %d", __func__, status); } APPL_TRACE_DEBUG("%s: A2dpSink: SBC create track", __func__); Loading @@ -490,16 +490,17 @@ static void btif_a2dp_sink_decoder_update_event( NULL; #endif if (btif_a2dp_sink_cb.audio_track == NULL) { APPL_TRACE_ERROR("%s: A2dpSink: Track creation failed!!!", __func__); APPL_TRACE_ERROR("%s: A2dpSink: Track creation failed", __func__); return; } btif_a2dp_sink_cb.frames_to_process = A2DP_GetSinkFramesCountToProcess( BTIF_SINK_MEDIA_TIME_TICK_MS, p_buf->codec_info); APPL_TRACE_DEBUG("Frames to be processed in 20 ms %d", APPL_TRACE_DEBUG("%s: Frames to be processed in 20 ms %d", __func__, btif_a2dp_sink_cb.frames_to_process); if (btif_a2dp_sink_cb.frames_to_process == 0) { APPL_TRACE_ERROR("Cannot compute the number of frames to process"); APPL_TRACE_ERROR("%s: Cannot compute the number of frames to process", __func__); } } Loading Loading
system/bta/hf_client/bta_hf_client_at.cc +22 −9 Original line number Diff line number Diff line Loading @@ -176,6 +176,7 @@ static void bta_hf_client_stop_at_resp_timer(tBTA_HF_CLIENT_CB* client_cb) { static void bta_hf_client_send_at(tBTA_HF_CLIENT_CB* client_cb, tBTA_HF_CLIENT_AT_CMD cmd, const char* buf, uint16_t buf_len) { APPL_TRACE_DEBUG("%s", __func__); if ((client_cb->at_cb.current_cmd == BTA_HF_CLIENT_AT_NONE || client_cb->svc_conn == false) && !alarm_is_scheduled(client_cb->at_cb.hold_timer)) { Loading Loading @@ -442,8 +443,13 @@ static void bta_hf_client_handle_ciev(tBTA_HF_CLIENT_CB* client_cb, static void bta_hf_client_handle_bcs(tBTA_HF_CLIENT_CB* client_cb, uint32_t codec) { APPL_TRACE_DEBUG("%s: %u", __func__, codec); APPL_TRACE_DEBUG("%s: codec: %u sco listen state: %d", __func__, codec, client_cb->sco_state); // Only send acceptance for the codec request if we are ready to accept the // SCO connection. sco_state is set to listen when the upper layer calls for // audio connection. if (client_cb->sco_state == BTA_HF_CLIENT_SCO_LISTEN_ST) { if (codec == BTM_SCO_CODEC_CVSD || codec == BTM_SCO_CODEC_MSBC) { client_cb->negotiated_codec = codec; bta_hf_client_send_at_bcs(client_cb, codec); Loading @@ -452,6 +458,7 @@ static void bta_hf_client_handle_bcs(tBTA_HF_CLIENT_CB* client_cb, bta_hf_client_send_at_bac(client_cb); } } } static void bta_hf_client_handle_bsir(tBTA_HF_CLIENT_CB* client_cb, uint32_t provided) { Loading Loading @@ -1932,6 +1939,11 @@ void bta_hf_client_send_at_bcc(tBTA_HF_CLIENT_CB* client_cb) { buf = "AT+BCC\r"; bta_hf_client_send_at(client_cb, BTA_HF_CLIENT_AT_BCC, buf, strlen(buf)); // At this point we should also open up an incoming SCO connection tBTA_HF_CLIENT_DATA p_data; p_data.hdr.layer_specific = client_cb->handle; bta_hf_client_sco_listen(&p_data); } void bta_hf_client_send_at_cnum(tBTA_HF_CLIENT_CB* client_cb) { Loading Loading @@ -2042,6 +2054,7 @@ void bta_hf_client_send_at_cmd(tBTA_HF_CLIENT_DATA* p_data) { tBTA_HF_CLIENT_DATA_VAL* p_val = (tBTA_HF_CLIENT_DATA_VAL*)p_data; char buf[BTA_HF_CLIENT_AT_MAX_LEN]; APPL_TRACE_DEBUG("%s: at cmd: %d", __func__, p_val->uint8_val); switch (p_val->uint8_val) { case BTA_HF_CLIENT_AT_CMD_VTS: bta_hf_client_send_at_vts(client_cb, (char)p_val->uint32_val1); Loading @@ -2064,7 +2077,7 @@ void bta_hf_client_send_at_cmd(tBTA_HF_CLIENT_DATA* p_data) { bta_hf_client_send_at_cnum(client_cb); break; case BTA_HF_CLIENT_AT_CMD_ATA: // bta_hf_client_send_at_ata(client_cb); bta_hf_client_send_at_ata(client_cb); break; case BTA_HF_CLIENT_AT_CMD_COPS: bta_hf_client_send_at_cops(client_cb, true); Loading
system/bta/hf_client/bta_hf_client_main.cc +3 −3 Original line number Diff line number Diff line Loading @@ -82,7 +82,7 @@ const tBTA_HF_CLIENT_ACTION bta_hf_client_action[] = { /* BTA_HF_CLIENT_START_CLOSE */ bta_hf_client_start_close, /* BTA_HF_CLIENT_START_OPEN */ bta_hf_client_start_open, /* BTA_HF_CLIENT_RFC_ACP_OPEN */ bta_hf_client_rfc_acp_open, /* BTA_HF_CLIENT_SCO_LISTEN */ bta_hf_client_sco_listen, /* BTA_HF_CLIENT_SCO_LISTEN */ NULL, /* BTA_HF_CLIENT_SCO_CONN_OPEN */ bta_hf_client_sco_conn_open, /* BTA_HF_CLIENT_SCO_CONN_CLOSE*/ bta_hf_client_sco_conn_close, /* BTA_HF_CLIENT_SCO_OPEN */ bta_hf_client_sco_open, Loading Loading @@ -118,7 +118,7 @@ const uint8_t bta_hf_client_st_init[][BTA_HF_CLIENT_NUM_COLS] = { BTA_HF_CLIENT_INIT_ST}, /* API_AUDIO_CLOSE_EVT */ {BTA_HF_CLIENT_IGNORE, BTA_HF_CLIENT_IGNORE, BTA_HF_CLIENT_INIT_ST}, /* RFC_OPEN_EVT */ {BTA_HF_CLIENT_RFC_ACP_OPEN, BTA_HF_CLIENT_SCO_LISTEN, /* RFC_OPEN_EVT */ {BTA_HF_CLIENT_RFC_ACP_OPEN, BTA_HF_CLIENT_IGNORE, BTA_HF_CLIENT_OPEN_ST}, /* RFC_CLOSE_EVT */ {BTA_HF_CLIENT_IGNORE, BTA_HF_CLIENT_IGNORE, BTA_HF_CLIENT_INIT_ST}, Loading Loading @@ -154,7 +154,7 @@ const uint8_t bta_hf_client_st_opening[][BTA_HF_CLIENT_NUM_COLS] = { BTA_HF_CLIENT_OPENING_ST}, /* API_AUDIO_CLOSE_EVT */ {BTA_HF_CLIENT_IGNORE, BTA_HF_CLIENT_IGNORE, BTA_HF_CLIENT_OPENING_ST}, /* RFC_OPEN_EVT */ {BTA_HF_CLIENT_RFC_OPEN, BTA_HF_CLIENT_SCO_LISTEN, /* RFC_OPEN_EVT */ {BTA_HF_CLIENT_RFC_OPEN, BTA_HF_CLIENT_IGNORE, BTA_HF_CLIENT_OPEN_ST}, /* RFC_CLOSE_EVT */ {BTA_HF_CLIENT_RFC_FAIL, BTA_HF_CLIENT_IGNORE, BTA_HF_CLIENT_INIT_ST}, Loading
system/bta/hf_client/bta_hf_client_sco.cc +21 −33 Original line number Diff line number Diff line Loading @@ -79,18 +79,15 @@ enum { * Function bta_hf_client_remove_sco * * Description Removes the specified SCO from the system. * If only_active is true, then SCO is only removed if * connected. * * Returns bool - true if SCO removal was started * ******************************************************************************/ static bool bta_hf_client_sco_remove(tBTA_HF_CLIENT_CB* client_cb, bool only_active) { static bool bta_hf_client_sco_remove(tBTA_HF_CLIENT_CB* client_cb) { bool removed_started = false; tBTM_STATUS status; APPL_TRACE_DEBUG("%s: %d", __func__, only_active); APPL_TRACE_DEBUG("%s", __func__); if (client_cb->sco_idx != BTM_INVALID_SCO_INDEX) { status = BTM_RemoveSco(client_cb->sco_idx); Loading Loading @@ -327,8 +324,8 @@ static void bta_hf_client_sco_create(tBTA_HF_CLIENT_CB* client_cb, ******************************************************************************/ static void bta_hf_client_sco_event(tBTA_HF_CLIENT_CB* client_cb, uint8_t event) { APPL_TRACE_DEBUG("%s: state: %d event: %d", __func__, client_cb->sco_state, event); APPL_TRACE_DEBUG("%s: before state: %d event: %d", __func__, client_cb->sco_state, event); switch (client_cb->sco_state) { case BTA_HF_CLIENT_SCO_SHUTDOWN_ST: Loading @@ -349,13 +346,12 @@ static void bta_hf_client_sco_event(tBTA_HF_CLIENT_CB* client_cb, case BTA_HF_CLIENT_SCO_LISTEN_ST: switch (event) { case BTA_HF_CLIENT_SCO_LISTEN_E: /* create sco listen connection (Additional channel) */ bta_hf_client_sco_create(client_cb, false); /* Ignore */ break; case BTA_HF_CLIENT_SCO_OPEN_E: /* remove listening connection */ bta_hf_client_sco_remove(client_cb, false); bta_hf_client_sco_remove(client_cb); /* create sco connection to peer */ bta_hf_client_sco_create(client_cb, true); Loading @@ -363,20 +359,13 @@ static void bta_hf_client_sco_event(tBTA_HF_CLIENT_CB* client_cb, break; case BTA_HF_CLIENT_SCO_SHUTDOWN_E: case BTA_HF_CLIENT_SCO_CLOSE_E: /* remove listening connection */ bta_hf_client_sco_remove(client_cb, false); bta_hf_client_sco_remove(client_cb); client_cb->sco_state = BTA_HF_CLIENT_SCO_SHUTDOWN_ST; break; case BTA_HF_CLIENT_SCO_CLOSE_E: /* remove listening connection */ /* Ignore the event. We need to keep listening SCO for the active SLC */ APPL_TRACE_WARNING("BTA_HF_CLIENT_SCO_LISTEN_ST: Ignoring event %d", event); break; case BTA_HF_CLIENT_SCO_CONN_CLOSE_E: /* sco failed; create sco listen connection */ bta_hf_client_sco_create(client_cb, false); Loading @@ -384,7 +373,8 @@ static void bta_hf_client_sco_event(tBTA_HF_CLIENT_CB* client_cb, break; default: APPL_TRACE_WARNING("BTA_HF_CLIENT_SCO_LISTEN_ST: Ignoring event %d", APPL_TRACE_WARNING( "%s: BTA_HF_CLIENT_SCO_LISTEN_ST: Ignoring event %d", __func__, event); break; } Loading Loading @@ -429,7 +419,7 @@ static void bta_hf_client_sco_event(tBTA_HF_CLIENT_CB* client_cb, case BTA_HF_CLIENT_SCO_CONN_OPEN_E: /* close sco connection */ bta_hf_client_sco_remove(client_cb, true); bta_hf_client_sco_remove(client_cb); client_cb->sco_state = BTA_HF_CLIENT_SCO_CLOSING_ST; break; Loading @@ -450,23 +440,21 @@ static void bta_hf_client_sco_event(tBTA_HF_CLIENT_CB* client_cb, case BTA_HF_CLIENT_SCO_OPEN_ST: switch (event) { case BTA_HF_CLIENT_SCO_CLOSE_E: /* close sco connection if active */ if (bta_hf_client_sco_remove(client_cb, true)) { if (bta_hf_client_sco_remove(client_cb)) { client_cb->sco_state = BTA_HF_CLIENT_SCO_CLOSING_ST; } break; case BTA_HF_CLIENT_SCO_SHUTDOWN_E: /* remove all listening connections */ bta_hf_client_sco_remove(client_cb, false); /* remove listening connection */ bta_hf_client_sco_remove(client_cb); client_cb->sco_state = BTA_HF_CLIENT_SCO_SHUTTING_ST; break; case BTA_HF_CLIENT_SCO_CONN_CLOSE_E: /* peer closed sco; create sco listen connection */ bta_hf_client_sco_create(client_cb, false); client_cb->sco_state = BTA_HF_CLIENT_SCO_LISTEN_ST; /* peer closed sco */ client_cb->sco_state = BTA_HF_CLIENT_SCO_SHUTDOWN_ST; break; default: Loading @@ -488,9 +476,7 @@ static void bta_hf_client_sco_event(tBTA_HF_CLIENT_CB* client_cb, case BTA_HF_CLIENT_SCO_CONN_CLOSE_E: /* peer closed sco; create sco listen connection */ bta_hf_client_sco_create(client_cb, false); client_cb->sco_state = BTA_HF_CLIENT_SCO_LISTEN_ST; client_cb->sco_state = BTA_HF_CLIENT_SCO_SHUTDOWN_ST; break; default: Loading Loading @@ -527,7 +513,7 @@ static void bta_hf_client_sco_event(tBTA_HF_CLIENT_CB* client_cb, switch (event) { case BTA_HF_CLIENT_SCO_CONN_OPEN_E: /* close sco connection; wait for conn close event */ bta_hf_client_sco_remove(client_cb, true); bta_hf_client_sco_remove(client_cb); break; case BTA_HF_CLIENT_SCO_CONN_CLOSE_E: Loading @@ -548,6 +534,8 @@ static void bta_hf_client_sco_event(tBTA_HF_CLIENT_CB* client_cb, default: break; } APPL_TRACE_DEBUG("%s: after state: %d", __func__, client_cb->sco_state); } /******************************************************************************* Loading
system/btif/src/btif_a2dp_sink.cc +7 −6 Original line number Diff line number Diff line Loading @@ -473,13 +473,13 @@ static void btif_a2dp_sink_decoder_update_event( btif_a2dp_sink_cb.channel_count = channel_count; btif_a2dp_sink_cb.rx_flush = false; APPL_TRACE_DEBUG("Reset to Sink role"); APPL_TRACE_DEBUG("%s: Reset to Sink role", __func__); status = OI_CODEC_SBC_DecoderReset( &btif_a2dp_sink_context, btif_a2dp_sink_context_data, sizeof(btif_a2dp_sink_context_data), 2, 2, false); if (!OI_SUCCESS(status)) { APPL_TRACE_ERROR("OI_CODEC_SBC_DecoderReset failed with error code %d", status); APPL_TRACE_ERROR("%s: OI_CODEC_SBC_DecoderReset failed with error code %d", __func__, status); } APPL_TRACE_DEBUG("%s: A2dpSink: SBC create track", __func__); Loading @@ -490,16 +490,17 @@ static void btif_a2dp_sink_decoder_update_event( NULL; #endif if (btif_a2dp_sink_cb.audio_track == NULL) { APPL_TRACE_ERROR("%s: A2dpSink: Track creation failed!!!", __func__); APPL_TRACE_ERROR("%s: A2dpSink: Track creation failed", __func__); return; } btif_a2dp_sink_cb.frames_to_process = A2DP_GetSinkFramesCountToProcess( BTIF_SINK_MEDIA_TIME_TICK_MS, p_buf->codec_info); APPL_TRACE_DEBUG("Frames to be processed in 20 ms %d", APPL_TRACE_DEBUG("%s: Frames to be processed in 20 ms %d", __func__, btif_a2dp_sink_cb.frames_to_process); if (btif_a2dp_sink_cb.frames_to_process == 0) { APPL_TRACE_ERROR("Cannot compute the number of frames to process"); APPL_TRACE_ERROR("%s: Cannot compute the number of frames to process", __func__); } } Loading