Mistake on this page? Email us
Data Structures | Typedefs | Functions | Variables
hci_core.h File Reference

HCI core interfaces. More...

#include "hci_core_ps.h"
#include "wsf_queue.h"
#include "wsf_os.h"
#include "hci_api.h"
#include "cfg_stack.h"
Include dependency graph for hci_core.h:

Go to the source code of this file.

Data Structures

struct  hciCoreConn_t
 Per-connection structure for ACL packet accounting. More...
 
struct  hciCoreCb_t
 Main control block for dual-chip implementation. More...
 

Typedefs

typedef void(* hciResetSeq_t) (uint8_t *pMsg, uint16_t opcode)
 HCI Reset sequence callback type.
 

Functions

void hciCoreInit (void)
 HCI core initialization. More...
 
void hciCoreResetStart (void)
 Start the HCI reset sequence. More...
 
void hciCoreConnOpen (uint16_t handle)
 Perform internal processing on HCI connection open. More...
 
void hciCoreConnClose (uint16_t handle)
 Perform internal processing on HCI connection close. More...
 
hciCoreConn_thciCoreConnByHandle (uint16_t handle)
 Get a connection structure by handle. More...
 
void hciCoreSendAclData (hciCoreConn_t *pConn, uint8_t *pData)
 Send ACL data to transport. More...
 
void hciCoreTxReady (uint8_t bufs)
 Service the TX data path. More...
 
void hciCoreTxAclStart (hciCoreConn_t *pConn, uint16_t len, uint8_t *pData)
 Send ACL packets, start of packet. More...
 
bool_t hciCoreTxAclContinue (hciCoreConn_t *pConn)
 Send ACL packets, continuation of fragmented packets. More...
 
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. More...
 
uint8_t * hciCoreAclReassembly (uint8_t *pData)
 Reassemble an ACL packet. More...
 
bool_t hciCoreTxAclDataFragmented (hciCoreConn_t *pConn)
 Check if a TX ACL packet is being fragmented. More...
 

Variables

hciCoreCb_t hciCoreCb
 Control block.
 
const uint8_t hciEventMask [HCI_EVT_MASK_LEN]
 Event mask.
 
const uint8_t hciLeEventMask [HCI_LE_EVT_MASK_LEN]
 LE event mask.
 
const uint8_t hciEventMaskPage2 [HCI_EVT_MASK_LEN]
 Event mask page 2.
 
uint32_t hciLeSupFeatCfg
 LE supported features configuration mask.
 

Detailed Description

HCI core interfaces.

Copyright (c) 2009-2018 Arm Ltd. All Rights Reserved. Arm Ltd. confidential and proprietary.

IMPORTANT. Your use of this file is governed by a Software License Agreement ("Agreement") that must be accepted in order to download or otherwise receive a copy of this file. You may not use or copy this file for any purpose other than as described in the Agreement. If you do not agree to all of the terms of the Agreement do not use this file and delete all copies in your possession or control; if you do not have a copy of the Agreement, you must contact Arm Ltd. prior to any use, copying or further distribution of this software.

Definition in file hci_core.h.

Function Documentation

void hciCoreInit ( void  )

HCI core initialization.

Returns
None.
hciCoreResetStart ( void  )

Start the HCI reset sequence.

Returns
None.
void hciCoreConnOpen ( uint16_t  handle)

Perform internal processing on HCI connection open.

Parameters
handleConnection handle.
Returns
None.
void hciCoreConnClose ( uint16_t  handle)

Perform internal processing on HCI connection close.

Parameters
handleConnection handle.
Returns
None.
hciCoreConn_t* hciCoreConnByHandle ( uint16_t  handle)

Get a connection structure by handle.

Parameters
handleConnection handle.
Returns
Pointer to connection structure or NULL if not found.
void hciCoreSendAclData ( hciCoreConn_t pConn,
uint8_t *  pData 
)

Send ACL data to transport.

Parameters
pConnPointer to connection structure.
pDataWSF buffer containing an ACL packet.
Returns
None.
void hciCoreTxReady ( uint8_t  bufs)

Service the TX data path.

Parameters
bufsNumber of new buffers now available.
Returns
None.
void hciCoreTxAclStart ( hciCoreConn_t pConn,
uint16_t  len,
uint8_t *  pData 
)

Send ACL packets, start of packet.

Parameters
pConnPointer to connection structure.
lenACL packet length.
pDataWSF buffer containing an ACL packet.
Returns
None.
bool_t hciCoreTxAclContinue ( hciCoreConn_t pConn)

Send ACL packets, continuation of fragmented packets.

Parameters
pConnPointer to connection structure. If set non-NULL, then a fragment is sent from this connection structure. If NULL the function finds the next connection structure with a fragment to be sent.
Returns
TRUE if packet sent, FALSE otherwise.
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.

Parameters
pConnPointer to connection structure.
pDataWSF buffer containing an ACL packet.
Returns
None.
uint8_t* hciCoreAclReassembly ( uint8_t *  pData)

Reassemble an ACL packet.

Parameters
pDataInput ACL packet.
Returns
pointer to ACL packet to send, or NULL if no packet to send.
bool_t hciCoreTxAclDataFragmented ( hciCoreConn_t pConn)

Check if a TX ACL packet is being fragmented.

Parameters
pConnConnection context.
Returns
TRUE if fragmenting a TX ACL packet, FALSE otherwise.
Important Information for this Arm website

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies. If you are not happy with the use of these cookies, please review our Cookie Policy to learn how they can be disabled. By disabling cookies, some features of the site will not work.