Lines Matching refs:p_lcb
165 tL2C_LCB* p_lcb; in L2CA_Deregister() local
172 p_lcb = &l2cb.lcb_pool[0]; in L2CA_Deregister()
173 for (ii = 0; ii < MAX_L2CAP_LINKS; ii++, p_lcb++) { in L2CA_Deregister()
174 if (p_lcb->in_use) { in L2CA_Deregister()
175 p_ccb = p_lcb->ccb_queue.p_first_ccb; in L2CA_Deregister()
176 if ((p_ccb == NULL) || (p_lcb->link_state == LST_DISCONNECTING)) { in L2CA_Deregister()
316 tL2C_LCB* p_lcb = l2cu_find_lcb_by_bd_addr(p_bd_addr, BT_TRANSPORT_BR_EDR); in L2CA_ConnectReq() local
317 if (p_lcb == nullptr) { in L2CA_ConnectReq()
319 p_lcb = l2cu_allocate_lcb(p_bd_addr, false, BT_TRANSPORT_BR_EDR); in L2CA_ConnectReq()
321 if (p_lcb == nullptr) { in L2CA_ConnectReq()
324 << ", p_lcb=" << p_lcb; in L2CA_ConnectReq()
327 l2cu_create_conn_br_edr(p_lcb); in L2CA_ConnectReq()
331 tL2C_CCB* p_ccb = l2cu_allocate_ccb(p_lcb, 0); in L2CA_ConnectReq()
343 if (p_lcb->link_state == LST_CONNECTED) { in L2CA_ConnectReq()
345 } else if (p_lcb->link_state == LST_DISCONNECTING) { in L2CA_ConnectReq()
355 p_lcb->p_pending_ccb = p_ccb; in L2CA_ConnectReq()
466 tL2C_LCB* p_lcb = &l2cb.lcb_pool[0]; in L2CA_DeregisterLECoc() local
467 for (int i = 0; i < MAX_L2CAP_LINKS; i++, p_lcb++) { in L2CA_DeregisterLECoc()
468 if (!p_lcb->in_use || p_lcb->transport != BT_TRANSPORT_LE) continue; in L2CA_DeregisterLECoc()
470 tL2C_CCB* p_ccb = p_lcb->ccb_queue.p_first_ccb; in L2CA_DeregisterLECoc()
471 if ((p_ccb == NULL) || (p_lcb->link_state == LST_DISCONNECTING)) continue; in L2CA_DeregisterLECoc()
526 tL2C_LCB* p_lcb = l2cu_find_lcb_by_bd_addr(p_bd_addr, BT_TRANSPORT_LE); in L2CA_ConnectLECocReq() local
527 if (p_lcb == NULL) { in L2CA_ConnectLECocReq()
529 p_lcb = l2cu_allocate_lcb(p_bd_addr, false, BT_TRANSPORT_LE); in L2CA_ConnectLECocReq()
530 if ((p_lcb == NULL) in L2CA_ConnectLECocReq()
532 || (!l2cu_create_conn_le(p_lcb))) { in L2CA_ConnectLECocReq()
534 __func__, psm, p_lcb); in L2CA_ConnectLECocReq()
540 tL2C_CCB* p_ccb = l2cu_allocate_ccb(p_lcb, 0); in L2CA_ConnectLECocReq()
558 if (p_lcb->link_state == LST_CONNECTED) { in L2CA_ConnectLECocReq()
559 if (p_ccb->p_lcb->transport == BT_TRANSPORT_LE) { in L2CA_ConnectLECocReq()
571 else if (p_lcb->link_state == LST_DISCONNECTING) { in L2CA_ConnectLECocReq()
575 p_lcb->p_pending_ccb = p_ccb; in L2CA_ConnectLECocReq()
646 tL2C_LCB* p_lcb = l2cu_find_lcb_by_bd_addr(p_bd_addr, BT_TRANSPORT_LE); in L2CA_ConnectCreditBasedRsp() local
647 if (p_lcb == NULL) { in L2CA_ConnectCreditBasedRsp()
655 tL2C_CCB* p_ccb = l2cu_find_ccb_by_cid(p_lcb, p_lcb->pending_lead_cid); in L2CA_ConnectCreditBasedRsp()
658 tL2C_CCB* temp_p_ccb = l2cu_find_ccb_by_cid(p_lcb, cid); in L2CA_ConnectCreditBasedRsp()
736 tL2C_LCB* p_lcb = l2cu_find_lcb_by_bd_addr(p_bd_addr, BT_TRANSPORT_LE); in L2CA_ConnectCreditBasedReq() local
737 if (p_lcb == NULL) { in L2CA_ConnectCreditBasedReq()
742 if (p_lcb->link_state != LST_CONNECTED) { in L2CA_ConnectCreditBasedReq()
744 p_lcb->link_state); in L2CA_ConnectCreditBasedReq()
754 tL2C_CCB* p_ccb = l2cu_allocate_ccb(p_lcb, 0); in L2CA_ConnectCreditBasedReq()
784 p_lcb->pending_ecoc_connection_cids[i] = allocated_cids[i]; in L2CA_ConnectCreditBasedReq()
786 p_lcb->pending_ecoc_conn_cnt = (uint16_t)(allocated_cids.size()); in L2CA_ConnectCreditBasedReq()
855 tL2C_LCB* p_lcb = p_ccb->p_lcb; in L2CA_ReconfigCreditBasedConnsReq() local
861 for (p_ccb = p_lcb->ccb_queue.p_first_ccb; p_ccb; p_ccb = p_ccb->p_next_ccb) in L2CA_ReconfigCreditBasedConnsReq()
863 p_ccb->p_lcb->pending_ecoc_reconfig_cfg = *p_cfg; in L2CA_ReconfigCreditBasedConnsReq()
864 p_ccb->p_lcb->pending_ecoc_reconfig_cnt = lcids.size(); in L2CA_ReconfigCreditBasedConnsReq()
949 tL2C_LCB* p_lcb; in L2CA_SetIdleTimeoutByBdAddr() local
952 p_lcb = l2cu_find_lcb_by_bd_addr(bd_addr, transport); in L2CA_SetIdleTimeoutByBdAddr()
953 if ((p_lcb) && (p_lcb->in_use) && (p_lcb->link_state == LST_CONNECTED)) { in L2CA_SetIdleTimeoutByBdAddr()
954 p_lcb->idle_timeout = timeout; in L2CA_SetIdleTimeoutByBdAddr()
956 if (!p_lcb->ccb_queue.p_first_ccb) l2cu_no_dynamic_ccbs(p_lcb); in L2CA_SetIdleTimeoutByBdAddr()
961 tL2C_LCB* p_lcb = &l2cb.lcb_pool[0]; in L2CA_SetIdleTimeoutByBdAddr() local
963 for (xx = 0; xx < MAX_L2CAP_LINKS; xx++, p_lcb++) { in L2CA_SetIdleTimeoutByBdAddr()
964 if ((p_lcb->in_use) && (p_lcb->link_state == LST_CONNECTED)) { in L2CA_SetIdleTimeoutByBdAddr()
965 p_lcb->idle_timeout = timeout; in L2CA_SetIdleTimeoutByBdAddr()
967 if (!p_lcb->ccb_queue.p_first_ccb) l2cu_no_dynamic_ccbs(p_lcb); in L2CA_SetIdleTimeoutByBdAddr()
1064 tL2C_LCB* p_lcb; in L2CA_GetPeerFeatures() local
1067 p_lcb = l2cu_find_lcb_by_bd_addr(bd_addr, BT_TRANSPORT_BR_EDR); in L2CA_GetPeerFeatures()
1068 if (p_lcb == NULL) { in L2CA_GetPeerFeatures()
1075 p_lcb->peer_ext_fea, p_lcb->peer_chnl_mask[0]); in L2CA_GetPeerFeatures()
1077 *p_ext_feat = p_lcb->peer_ext_fea; in L2CA_GetPeerFeatures()
1079 memcpy(p_chnl_mask, p_lcb->peer_chnl_mask, L2CAP_FIXED_CHNL_ARRAY_SIZE); in L2CA_GetPeerFeatures()
1152 tL2C_LCB* p_lcb; in L2CA_ConnectFixedChnl() local
1178 p_lcb = l2cu_find_lcb_by_bd_addr(rem_bda, transport); in L2CA_ConnectFixedChnl()
1179 if (p_lcb != NULL) { in L2CA_ConnectFixedChnl()
1186 peer_channel_mask = p_lcb->peer_chnl_mask[0]; in L2CA_ConnectFixedChnl()
1195 if (!l2cu_initialize_fixed_ccb(p_lcb, fixed_cid)) { in L2CA_ConnectFixedChnl()
1202 if (p_lcb->link_state == LST_DISCONNECTING) { in L2CA_ConnectFixedChnl()
1207 p_lcb->p_pending_ccb = in L2CA_ConnectFixedChnl()
1208 p_lcb->p_fixed_ccbs[fixed_cid - L2CAP_FIRST_FIXED_CHNL]; in L2CA_ConnectFixedChnl()
1213 fixed_cid, p_lcb->remote_bd_addr, true, 0, p_lcb->transport); in L2CA_ConnectFixedChnl()
1218 p_lcb = l2cu_allocate_lcb(rem_bda, false, transport); in L2CA_ConnectFixedChnl()
1219 if (p_lcb == NULL) { in L2CA_ConnectFixedChnl()
1226 if (!l2cu_initialize_fixed_ccb(p_lcb, fixed_cid)) { in L2CA_ConnectFixedChnl()
1229 l2cu_release_lcb(p_lcb); in L2CA_ConnectFixedChnl()
1234 bool ret = l2cu_create_conn_le(p_lcb); in L2CA_ConnectFixedChnl()
1238 l2cu_release_lcb(p_lcb); in L2CA_ConnectFixedChnl()
1242 l2cu_create_conn_br_edr(p_lcb); in L2CA_ConnectFixedChnl()
1267 tL2C_LCB* p_lcb; in L2CA_SendFixedChnlData() local
1288 p_lcb = l2cu_find_lcb_by_bd_addr(rem_bda, transport); in L2CA_SendFixedChnlData()
1289 if (p_lcb == NULL || p_lcb->link_state == LST_DISCONNECTING) { in L2CA_SendFixedChnlData()
1302 peer_channel_mask = p_lcb->peer_chnl_mask[0]; in L2CA_SendFixedChnlData()
1313 if (!p_lcb->p_fixed_ccbs[fixed_cid - L2CAP_FIRST_FIXED_CHNL]) { in L2CA_SendFixedChnlData()
1314 if (!l2cu_initialize_fixed_ccb(p_lcb, fixed_cid)) { in L2CA_SendFixedChnlData()
1321 if (p_lcb->p_fixed_ccbs[fixed_cid - L2CAP_FIRST_FIXED_CHNL]->cong_sent) { in L2CA_SendFixedChnlData()
1327 p_lcb->p_fixed_ccbs[fixed_cid - L2CAP_FIRST_FIXED_CHNL] in L2CA_SendFixedChnlData()
1329 p_lcb->p_fixed_ccbs[fixed_cid - L2CAP_FIRST_FIXED_CHNL]->buff_quota); in L2CA_SendFixedChnlData()
1335 l2c_enqueue_peer_data(p_lcb->p_fixed_ccbs[fixed_cid - L2CAP_FIRST_FIXED_CHNL], in L2CA_SendFixedChnlData()
1338 l2c_link_check_send_pkts(p_lcb, 0, NULL); in L2CA_SendFixedChnlData()
1342 if (p_lcb->in_use && p_lcb->link_state == LST_CONNECTED && in L2CA_SendFixedChnlData()
1343 !p_lcb->ccb_queue.p_first_ccb) { in L2CA_SendFixedChnlData()
1344 l2cu_no_dynamic_ccbs(p_lcb); in L2CA_SendFixedChnlData()
1347 if (p_lcb->p_fixed_ccbs[fixed_cid - L2CAP_FIRST_FIXED_CHNL]->cong_sent) { in L2CA_SendFixedChnlData()
1373 tL2C_LCB* p_lcb; in L2CA_RemoveFixedChnl() local
1390 p_lcb = l2cu_find_lcb_by_bd_addr(rem_bda, transport); in L2CA_RemoveFixedChnl()
1392 if (((p_lcb) == NULL) || in L2CA_RemoveFixedChnl()
1393 (!p_lcb->p_fixed_ccbs[fixed_cid - L2CAP_FIRST_FIXED_CHNL])) { in L2CA_RemoveFixedChnl()
1404 p_ccb = p_lcb->p_fixed_ccbs[fixed_cid - L2CAP_FIRST_FIXED_CHNL]; in L2CA_RemoveFixedChnl()
1406 p_lcb->p_fixed_ccbs[fixed_cid - L2CAP_FIRST_FIXED_CHNL] = NULL; in L2CA_RemoveFixedChnl()
1407 p_lcb->SetDisconnectReason(HCI_ERR_CONN_CAUSE_LOCAL_HOST); in L2CA_RemoveFixedChnl()
1415 if ((fixed_cid == L2CAP_ATT_CID) && !p_lcb->ccb_queue.p_first_ccb) in L2CA_RemoveFixedChnl()
1416 p_lcb->idle_timeout = 0; in L2CA_RemoveFixedChnl()
1446 tL2C_LCB* p_lcb = l2cu_find_lcb_by_bd_addr(rem_bda, BT_TRANSPORT_LE); in L2CA_SetLeGattTimeout() local
1447 if (((p_lcb) == NULL) || in L2CA_SetLeGattTimeout()
1448 (!p_lcb->p_fixed_ccbs[kAttCid - L2CAP_FIRST_FIXED_CHNL])) { in L2CA_SetLeGattTimeout()
1454 p_lcb->p_fixed_ccbs[kAttCid - L2CAP_FIRST_FIXED_CHNL]->fixed_chnl_idle_tout = in L2CA_SetLeGattTimeout()
1457 if (p_lcb->in_use && p_lcb->link_state == LST_CONNECTED && in L2CA_SetLeGattTimeout()
1458 !p_lcb->ccb_queue.p_first_ccb) { in L2CA_SetLeGattTimeout()
1461 l2cu_no_dynamic_ccbs(p_lcb); in L2CA_SetLeGattTimeout()
1549 tL2C_LCB* p_lcb; in L2CA_FlushChannel() local
1554 if (!p_ccb || (p_ccb->p_lcb == NULL)) { in L2CA_FlushChannel()
1559 p_lcb = p_ccb->p_lcb; in L2CA_FlushChannel()
1580 btsnd_hcic_enhanced_flush(p_lcb->Handle(), 0); in L2CA_FlushChannel()
1586 for (const list_node_t* node = list_begin(p_lcb->link_xmit_data_q); in L2CA_FlushChannel()
1587 (num_to_flush > 0) && node != list_end(p_lcb->link_xmit_data_q);) { in L2CA_FlushChannel()
1594 list_remove(p_lcb->link_xmit_data_q, p_buf); in L2CA_FlushChannel()
1614 for (const list_node_t* node = list_begin(p_lcb->link_xmit_data_q); in L2CA_FlushChannel()
1615 node != list_end(p_lcb->link_xmit_data_q); node = list_next(node)) { in L2CA_FlushChannel()