Loading system/bta/av/bta_av_aact.cc +9 −21 Original line number Diff line number Diff line Loading @@ -1193,7 +1193,6 @@ void bta_av_setconfig_rsp(tBTA_AV_SCB* p_scb, tBTA_AV_DATA* p_data) { void bta_av_str_opened(tBTA_AV_SCB* p_scb, tBTA_AV_DATA* p_data) { tBTA_AV_CONN_CHG msg; uint8_t* p; uint16_t mtu; APPL_TRACE_DEBUG("%s: peer %s handle: %d", __func__, p_scb->PeerAddress().ToString().c_str(), p_scb->hndl); Loading @@ -1209,10 +1208,8 @@ void bta_av_str_opened(tBTA_AV_SCB* p_scb, tBTA_AV_DATA* p_data) { p_scb->stream_mtu = p_data->str_msg.msg.open_ind.peer_mtu - AVDT_MEDIA_HDR_SIZE; mtu = bta_av_chk_mtu(p_scb, p_scb->stream_mtu); APPL_TRACE_DEBUG("%s: l2c_cid: 0x%x stream_mtu: %d mtu: %d", __func__, p_scb->l2c_cid, p_scb->stream_mtu, mtu); if (mtu == 0 || mtu > p_scb->stream_mtu) mtu = p_scb->stream_mtu; APPL_TRACE_DEBUG("%s: l2c_cid: 0x%x stream_mtu: %d", __func__, p_scb->l2c_cid, p_scb->stream_mtu); /* Set the media channel as high priority */ L2CA_SetTxPriority(p_scb->l2c_cid, L2CAP_CHNL_PRIORITY_HIGH); Loading @@ -1222,7 +1219,7 @@ void bta_av_str_opened(tBTA_AV_SCB* p_scb, tBTA_AV_DATA* p_data) { memset(&p_scb->q_info, 0, sizeof(tBTA_AV_Q_INFO)); p_scb->l2c_bufs = 0; p_scb->p_cos->open(p_scb->hndl, p_scb->PeerAddress(), mtu); p_scb->p_cos->open(p_scb->hndl, p_scb->PeerAddress(), p_scb->stream_mtu); { /* TODO check if other audio channel is open. Loading Loading @@ -1605,13 +1602,8 @@ void bta_av_set_use_rc(tBTA_AV_SCB* p_scb, UNUSED_ATTR tBTA_AV_DATA* p_data) { * ******************************************************************************/ void bta_av_cco_close(tBTA_AV_SCB* p_scb, UNUSED_ATTR tBTA_AV_DATA* p_data) { uint16_t mtu; APPL_TRACE_DEBUG("%s: peer %s handle:%d", __func__, p_scb->PeerAddress().ToString().c_str(), p_scb->hndl); mtu = bta_av_chk_mtu(p_scb, BTA_AV_MAX_A2DP_MTU); p_scb->p_cos->close(p_scb->hndl, p_scb->PeerAddress()); } Loading Loading @@ -2582,11 +2574,10 @@ void bta_av_rcfg_str_ok(tBTA_AV_SCB* p_scb, tBTA_AV_DATA* p_data) { // p_data could be NULL if the reconfig was triggered by the local device p_scb->stream_mtu = p_data->str_msg.msg.open_ind.peer_mtu - AVDT_MEDIA_HDR_SIZE; uint16_t mtu = bta_av_chk_mtu(p_scb, p_scb->stream_mtu); APPL_TRACE_DEBUG("%s: l2c_cid: 0x%x stream_mtu: %d mtu: %d", __func__, p_scb->l2c_cid, p_scb->stream_mtu, mtu); if (mtu == 0 || mtu > p_scb->stream_mtu) mtu = p_scb->stream_mtu; p_scb->p_cos->update_mtu(p_scb->hndl, p_scb->PeerAddress(), mtu); APPL_TRACE_DEBUG("%s: l2c_cid: 0x%x stream_mtu: %d", __func__, p_scb->l2c_cid, p_scb->stream_mtu); p_scb->p_cos->update_mtu(p_scb->hndl, p_scb->PeerAddress(), p_scb->stream_mtu); } /* rc listen */ Loading Loading @@ -3103,7 +3094,6 @@ void bta_av_offload_req(tBTA_AV_SCB* p_scb, tBTA_AV_DATA* p_data) { (*bta_av_cb.p_cback)(BTA_AV_OFFLOAD_START_RSP_EVT, &bta_av_data); } /* TODO(eisenbach): RE-IMPLEMENT USING VSC OR HAL EXTENSION uint16_t mtu = bta_av_chk_mtu(p_scb, p_scb->stream_mtu); else if (bta_av_cb.audio_open_cnt == 1 && p_scb->seps[p_scb->sep_idx].tsep == AVDT_TSEP_SRC && p_scb->chnl == BTA_AV_CHNL_AUDIO) { Loading @@ -3120,8 +3110,7 @@ void bta_av_offload_req(tBTA_AV_SCB* p_scb, tBTA_AV_DATA* p_data) { a2dp_offload_start.bta_av_handle = p_scb->hndl; a2dp_offload_start.xmit_quota = BTA_AV_A2DP_OFFLOAD_XMIT_QUOTA; a2dp_offload_start.stream_mtu = (mtu < p_scb->stream_mtu) ? mtu : p_scb->stream_mtu; a2dp_offload_start.stream_mtu = p_scb->stream_mtu; a2dp_offload_start.local_cid = p_scb->l2c_cid; a2dp_offload_start.is_flushable = true; a2dp_offload_start.stream_source = Loading Loading @@ -3175,8 +3164,7 @@ static void bta_av_offload_codec_builder(tBTA_AV_SCB* p_scb, btav_a2dp_codec_index_t codec_index = A2DP_SourceCodecIndex(p_scb->cfg.codec_info); uint32_t codec_type = 0; uint16_t mtu = bta_av_chk_mtu(p_scb, p_scb->stream_mtu); if (mtu == 0 || mtu > p_scb->stream_mtu) mtu = p_scb->stream_mtu; uint16_t mtu = p_scb->stream_mtu; APPL_TRACE_DEBUG("%s:codec_index = %d", __func__, codec_index); switch (codec_index) { case BTAV_A2DP_CODEC_INDEX_SOURCE_SBC: Loading system/bta/av/bta_av_int.h +0 −1 Original line number Diff line number Diff line Loading @@ -659,7 +659,6 @@ extern void bta_av_sink_data_cback(uint8_t handle, BT_HDR* p_pkt, extern tBTA_AV_SCB* bta_av_hndl_to_scb(uint16_t handle); extern bool bta_av_chk_start(tBTA_AV_SCB* p_scb); extern void bta_av_restore_switch(void); extern uint16_t bta_av_chk_mtu(tBTA_AV_SCB* p_scb, uint16_t mtu); extern void bta_av_conn_cback(uint8_t handle, const RawAddress& bd_addr, uint8_t event, tAVDT_CTRL* p_data, uint8_t scb_index); Loading system/bta/av/bta_av_main.cc +0 −40 Original line number Diff line number Diff line Loading @@ -1080,46 +1080,6 @@ bool bta_av_link_role_ok(tBTA_AV_SCB* p_scb, uint8_t bits) { return is_ok; } /******************************************************************************* * * Function bta_av_chk_mtu * * Description if this is audio channel, check if more than one audio * channel is connected. * * Returns The smallest mtu of the connected audio channels * ******************************************************************************/ uint16_t bta_av_chk_mtu(tBTA_AV_SCB* p_scb, UNUSED_ATTR uint16_t mtu) { uint16_t ret_mtu = BTA_AV_MAX_A2DP_MTU; tBTA_AV_SCB* p_scbi; int i; uint8_t mask; /* TODO_MV mess with the mtu according to the number of EDR/non-EDR headsets */ if (p_scb->chnl == BTA_AV_CHNL_AUDIO) { if (bta_av_cb.audio_open_cnt >= 2) { /* more than one audio channel is connected */ for (i = 0; i < BTA_AV_NUM_STRS; i++) { p_scbi = bta_av_cb.p_scb[i]; if ((p_scb != p_scbi) && p_scbi && (p_scbi->chnl == BTA_AV_CHNL_AUDIO)) { mask = BTA_AV_HNDL_TO_MSK(i); APPL_TRACE_DEBUG("%s: [%d] mtu: %d, mask:0x%x", __func__, i, p_scbi->stream_mtu, mask); if (bta_av_cb.conn_audio & mask) { if (ret_mtu > p_scbi->stream_mtu) ret_mtu = p_scbi->stream_mtu; } } } } APPL_TRACE_DEBUG("%s: count:%d, conn_audio:0x%x, ret:%d", __func__, bta_av_cb.audio_open_cnt, bta_av_cb.conn_audio, ret_mtu); } return ret_mtu; } /******************************************************************************* * * Function bta_av_dup_audio_buf Loading system/btif/co/bta_av_co.cc +6 −4 Original line number Diff line number Diff line Loading @@ -1403,10 +1403,7 @@ void BtaAvCo::GetPeerEncoderParameters( const RawAddress& peer_address, tA2DP_ENCODER_INIT_PEER_PARAMS* p_peer_params) { uint16_t min_mtu = 0xFFFF; APPL_TRACE_DEBUG("%s: peer_address=%s", __func__, peer_address.ToString().c_str()); CHECK(p_peer_params != nullptr); CHECK(p_peer_params != nullptr) << "Peer address " << peer_address; std::lock_guard<std::recursive_mutex> lock(codec_lock_); Loading @@ -1421,6 +1418,11 @@ void BtaAvCo::GetPeerEncoderParameters( p_peer_params->is_peer_edr = btif_av_is_peer_edr(peer_address); p_peer_params->peer_supports_3mbps = btif_av_peer_supports_3mbps(peer_address); APPL_TRACE_DEBUG( "%s: peer_address=%s peer_mtu=%d is_peer_edr=%s peer_supports_3mbps=%s", __func__, peer_address.ToString().c_str(), p_peer_params->peer_mtu, logbool(p_peer_params->is_peer_edr).c_str(), logbool(p_peer_params->peer_supports_3mbps).c_str()); } const tA2DP_ENCODER_INTERFACE* BtaAvCo::GetSourceEncoderInterface() { Loading Loading
system/bta/av/bta_av_aact.cc +9 −21 Original line number Diff line number Diff line Loading @@ -1193,7 +1193,6 @@ void bta_av_setconfig_rsp(tBTA_AV_SCB* p_scb, tBTA_AV_DATA* p_data) { void bta_av_str_opened(tBTA_AV_SCB* p_scb, tBTA_AV_DATA* p_data) { tBTA_AV_CONN_CHG msg; uint8_t* p; uint16_t mtu; APPL_TRACE_DEBUG("%s: peer %s handle: %d", __func__, p_scb->PeerAddress().ToString().c_str(), p_scb->hndl); Loading @@ -1209,10 +1208,8 @@ void bta_av_str_opened(tBTA_AV_SCB* p_scb, tBTA_AV_DATA* p_data) { p_scb->stream_mtu = p_data->str_msg.msg.open_ind.peer_mtu - AVDT_MEDIA_HDR_SIZE; mtu = bta_av_chk_mtu(p_scb, p_scb->stream_mtu); APPL_TRACE_DEBUG("%s: l2c_cid: 0x%x stream_mtu: %d mtu: %d", __func__, p_scb->l2c_cid, p_scb->stream_mtu, mtu); if (mtu == 0 || mtu > p_scb->stream_mtu) mtu = p_scb->stream_mtu; APPL_TRACE_DEBUG("%s: l2c_cid: 0x%x stream_mtu: %d", __func__, p_scb->l2c_cid, p_scb->stream_mtu); /* Set the media channel as high priority */ L2CA_SetTxPriority(p_scb->l2c_cid, L2CAP_CHNL_PRIORITY_HIGH); Loading @@ -1222,7 +1219,7 @@ void bta_av_str_opened(tBTA_AV_SCB* p_scb, tBTA_AV_DATA* p_data) { memset(&p_scb->q_info, 0, sizeof(tBTA_AV_Q_INFO)); p_scb->l2c_bufs = 0; p_scb->p_cos->open(p_scb->hndl, p_scb->PeerAddress(), mtu); p_scb->p_cos->open(p_scb->hndl, p_scb->PeerAddress(), p_scb->stream_mtu); { /* TODO check if other audio channel is open. Loading Loading @@ -1605,13 +1602,8 @@ void bta_av_set_use_rc(tBTA_AV_SCB* p_scb, UNUSED_ATTR tBTA_AV_DATA* p_data) { * ******************************************************************************/ void bta_av_cco_close(tBTA_AV_SCB* p_scb, UNUSED_ATTR tBTA_AV_DATA* p_data) { uint16_t mtu; APPL_TRACE_DEBUG("%s: peer %s handle:%d", __func__, p_scb->PeerAddress().ToString().c_str(), p_scb->hndl); mtu = bta_av_chk_mtu(p_scb, BTA_AV_MAX_A2DP_MTU); p_scb->p_cos->close(p_scb->hndl, p_scb->PeerAddress()); } Loading Loading @@ -2582,11 +2574,10 @@ void bta_av_rcfg_str_ok(tBTA_AV_SCB* p_scb, tBTA_AV_DATA* p_data) { // p_data could be NULL if the reconfig was triggered by the local device p_scb->stream_mtu = p_data->str_msg.msg.open_ind.peer_mtu - AVDT_MEDIA_HDR_SIZE; uint16_t mtu = bta_av_chk_mtu(p_scb, p_scb->stream_mtu); APPL_TRACE_DEBUG("%s: l2c_cid: 0x%x stream_mtu: %d mtu: %d", __func__, p_scb->l2c_cid, p_scb->stream_mtu, mtu); if (mtu == 0 || mtu > p_scb->stream_mtu) mtu = p_scb->stream_mtu; p_scb->p_cos->update_mtu(p_scb->hndl, p_scb->PeerAddress(), mtu); APPL_TRACE_DEBUG("%s: l2c_cid: 0x%x stream_mtu: %d", __func__, p_scb->l2c_cid, p_scb->stream_mtu); p_scb->p_cos->update_mtu(p_scb->hndl, p_scb->PeerAddress(), p_scb->stream_mtu); } /* rc listen */ Loading Loading @@ -3103,7 +3094,6 @@ void bta_av_offload_req(tBTA_AV_SCB* p_scb, tBTA_AV_DATA* p_data) { (*bta_av_cb.p_cback)(BTA_AV_OFFLOAD_START_RSP_EVT, &bta_av_data); } /* TODO(eisenbach): RE-IMPLEMENT USING VSC OR HAL EXTENSION uint16_t mtu = bta_av_chk_mtu(p_scb, p_scb->stream_mtu); else if (bta_av_cb.audio_open_cnt == 1 && p_scb->seps[p_scb->sep_idx].tsep == AVDT_TSEP_SRC && p_scb->chnl == BTA_AV_CHNL_AUDIO) { Loading @@ -3120,8 +3110,7 @@ void bta_av_offload_req(tBTA_AV_SCB* p_scb, tBTA_AV_DATA* p_data) { a2dp_offload_start.bta_av_handle = p_scb->hndl; a2dp_offload_start.xmit_quota = BTA_AV_A2DP_OFFLOAD_XMIT_QUOTA; a2dp_offload_start.stream_mtu = (mtu < p_scb->stream_mtu) ? mtu : p_scb->stream_mtu; a2dp_offload_start.stream_mtu = p_scb->stream_mtu; a2dp_offload_start.local_cid = p_scb->l2c_cid; a2dp_offload_start.is_flushable = true; a2dp_offload_start.stream_source = Loading Loading @@ -3175,8 +3164,7 @@ static void bta_av_offload_codec_builder(tBTA_AV_SCB* p_scb, btav_a2dp_codec_index_t codec_index = A2DP_SourceCodecIndex(p_scb->cfg.codec_info); uint32_t codec_type = 0; uint16_t mtu = bta_av_chk_mtu(p_scb, p_scb->stream_mtu); if (mtu == 0 || mtu > p_scb->stream_mtu) mtu = p_scb->stream_mtu; uint16_t mtu = p_scb->stream_mtu; APPL_TRACE_DEBUG("%s:codec_index = %d", __func__, codec_index); switch (codec_index) { case BTAV_A2DP_CODEC_INDEX_SOURCE_SBC: Loading
system/bta/av/bta_av_int.h +0 −1 Original line number Diff line number Diff line Loading @@ -659,7 +659,6 @@ extern void bta_av_sink_data_cback(uint8_t handle, BT_HDR* p_pkt, extern tBTA_AV_SCB* bta_av_hndl_to_scb(uint16_t handle); extern bool bta_av_chk_start(tBTA_AV_SCB* p_scb); extern void bta_av_restore_switch(void); extern uint16_t bta_av_chk_mtu(tBTA_AV_SCB* p_scb, uint16_t mtu); extern void bta_av_conn_cback(uint8_t handle, const RawAddress& bd_addr, uint8_t event, tAVDT_CTRL* p_data, uint8_t scb_index); Loading
system/bta/av/bta_av_main.cc +0 −40 Original line number Diff line number Diff line Loading @@ -1080,46 +1080,6 @@ bool bta_av_link_role_ok(tBTA_AV_SCB* p_scb, uint8_t bits) { return is_ok; } /******************************************************************************* * * Function bta_av_chk_mtu * * Description if this is audio channel, check if more than one audio * channel is connected. * * Returns The smallest mtu of the connected audio channels * ******************************************************************************/ uint16_t bta_av_chk_mtu(tBTA_AV_SCB* p_scb, UNUSED_ATTR uint16_t mtu) { uint16_t ret_mtu = BTA_AV_MAX_A2DP_MTU; tBTA_AV_SCB* p_scbi; int i; uint8_t mask; /* TODO_MV mess with the mtu according to the number of EDR/non-EDR headsets */ if (p_scb->chnl == BTA_AV_CHNL_AUDIO) { if (bta_av_cb.audio_open_cnt >= 2) { /* more than one audio channel is connected */ for (i = 0; i < BTA_AV_NUM_STRS; i++) { p_scbi = bta_av_cb.p_scb[i]; if ((p_scb != p_scbi) && p_scbi && (p_scbi->chnl == BTA_AV_CHNL_AUDIO)) { mask = BTA_AV_HNDL_TO_MSK(i); APPL_TRACE_DEBUG("%s: [%d] mtu: %d, mask:0x%x", __func__, i, p_scbi->stream_mtu, mask); if (bta_av_cb.conn_audio & mask) { if (ret_mtu > p_scbi->stream_mtu) ret_mtu = p_scbi->stream_mtu; } } } } APPL_TRACE_DEBUG("%s: count:%d, conn_audio:0x%x, ret:%d", __func__, bta_av_cb.audio_open_cnt, bta_av_cb.conn_audio, ret_mtu); } return ret_mtu; } /******************************************************************************* * * Function bta_av_dup_audio_buf Loading
system/btif/co/bta_av_co.cc +6 −4 Original line number Diff line number Diff line Loading @@ -1403,10 +1403,7 @@ void BtaAvCo::GetPeerEncoderParameters( const RawAddress& peer_address, tA2DP_ENCODER_INIT_PEER_PARAMS* p_peer_params) { uint16_t min_mtu = 0xFFFF; APPL_TRACE_DEBUG("%s: peer_address=%s", __func__, peer_address.ToString().c_str()); CHECK(p_peer_params != nullptr); CHECK(p_peer_params != nullptr) << "Peer address " << peer_address; std::lock_guard<std::recursive_mutex> lock(codec_lock_); Loading @@ -1421,6 +1418,11 @@ void BtaAvCo::GetPeerEncoderParameters( p_peer_params->is_peer_edr = btif_av_is_peer_edr(peer_address); p_peer_params->peer_supports_3mbps = btif_av_peer_supports_3mbps(peer_address); APPL_TRACE_DEBUG( "%s: peer_address=%s peer_mtu=%d is_peer_edr=%s peer_supports_3mbps=%s", __func__, peer_address.ToString().c_str(), p_peer_params->peer_mtu, logbool(p_peer_params->is_peer_edr).c_str(), logbool(p_peer_params->peer_supports_3mbps).c_str()); } const tA2DP_ENCODER_INTERFACE* BtaAvCo::GetSourceEncoderInterface() { Loading