hciCoreCis_t * hciCoreCisByHandle(uint16_t handle)
Get a CIS connection structure by handle.
uint8_t * pRxAclPkt
RX ACL packet pointer.
hciCoreConn_t * hciCoreConnByHandle(uint16_t handle)
Get a connection structure by handle.
uint64_t hciLeSupFeatCfg
LE supported features configuration mask.
wsfQueue_t aclQueue
HCI ACL TX queue.
void hciCoreCisOpen(uint16_t handle)
Perform internal processing on HCI CIS connection open.
Per-connection structure for OSI packet accounting.
const uint8_t hciEventMask[HCI_EVT_MASK_LEN]
Event mask.
uint16_t bufSize
Controller ACL data buffer size.
uint8_t availBufs
Current avail ACL data buffers.
void hciCoreInit(void)
HCI core initialization.
void hciCoreTxAclComplete(hciCoreConn_t *pConn, uint8_t *pData)
This function is called from the HCI transport layer when transmission of an ACL packet is complete...
HCI core platform-specific interfaces for dual-chip.
bdAddr_t bdAddr
Bluetooth device address.
uint8_t numCmdPkts
Controller command packed count.
#define HCI_LE_STATES_LEN
uint64_t leSupFeat
Controller LE supported features.
bool_t hciCoreTxAclDataFragmented(hciCoreConn_t *pConn)
Check if a TX ACL packet is being fragmented.
const uint8_t hciLeEventMask[HCI_LE_EVT_MASK_LEN]
LE event mask.
bool_t hciCoreTxAclContinue(hciCoreConn_t *pConn)
Send ACL packets, continuation of fragmented packets.
Main control block for dual-chip implementation.
void hciCoreSendAclData(hciCoreConn_t *pConn, uint8_t *pData)
Send ACL data to transport.
#define HCI_LE_EVT_MASK_LEN
uint16_t handle
Connection handle.
int8_t advTxPwr
Controller advertising TX power.
uint8_t numBufs
Controller number of ACL data buffers.
uint8_t * pNextTxFrag
Next TX ACL packet fragment.
void hciCoreTxAclStart(hciCoreConn_t *pConn, uint16_t len, uint8_t *pData)
Send ACL packets, start of packet.
void(* hciResetSeq_t)(uint8_t *pMsg, uint16_t opcode)
HCI Reset sequence callback type.
hciCoreCb_t hciCoreCb
Control block.
uint8_t aclQueueLo
Enable flow when this many ACL buffers queued.
uint8_t bdAddr_t[6]
BD address data type.
const uint8_t hciEventMaskPage2[HCI_EVT_MASK_LEN]
Event mask page 2.
uint16_t txAclRemLen
Fragmenting TX ACL packet remaining length.
uint8_t queuedBufs
Queued ACL buffers on this connection.
uint16_t maxAdvDataLen
Controller maximum advertisement (or scan response) data length.
uint8_t * hciCoreAclReassembly(uint8_t *pData)
Reassemble an ACL packet.
uint8_t * pNextRxFrag
Next RX ACL packet fragment.
bool_t fragmenting
TRUE if fragmenting a TX ACL packet.
uint16_t rxAclRemLen
Fragmented RX ACL packet remaining length.
void hciCoreConnOpen(uint16_t handle)
Perform internal processing on HCI connection open.
uint8_t resListSize
Controller resolving list size.
void hciCoreTxReady(uint8_t bufs)
Service the TX data path.
uint8_t outBufs
Outstanding ACL buffers sent to controller.
uint8_t numSupAdvSets
Controller maximum number of advertising sets.
General purpose queue service.
#define DM_CONN_MAX
Maximum number of connections.
hciLocalVerInfo_t locVerInfo
Controller version information.
uint16_t handle
Connection handle.
uint8_t * pTxAclPkt
Fragmenting TX ACL packet pointer.
bool_t flowDisabled
TRUE if data flow disabled.
hciCoreConn_t * pConnRx
Connection struct for current transport RX packet.
void hciCoreResetStart(void)
Start the HCI reset sequence.
void hciCoreCisClose(uint16_t handle)
Perform internal processing on HCI CIS connection close.
Software foundation OS API.
Per-connection structure for ACL packet accounting.
uint8_t aclQueueHi
Disable flow when this many ACL buffers queued.
hciResetSeq_t extResetSeq
HCI extended reset sequence callback.
void hciCoreConnClose(uint16_t handle)
Perform internal processing on HCI connection close.
#define DM_CIS_MAX
Maximum number of connected isochronous streams, it is shared by CIGs.
uint8_t whiteListSize
Controller white list size.
Local version information.
uint16_t maxRxAclLen
Maximum reassembled RX ACL packet length.
uint8_t perAdvListSize
Controller periodic advertising list size.