Infineon Logo AIROC BTSDK v4.2 - Documentation
 
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Bluetooth Stack Platform Interface

Interface between Stack and platform. More...

Data Structures

struct  wiced_bt_stack_platform_t
 AIROC Bluetooth Stack Platform. More...
 

Typedefs

typedef void(* wiced_bt_internal_post_stack_init_cb )(void)
 Function prototype for the post Stack Init Callback.
 
typedef wiced_bool_t(* wiced_bt_internal_stack_evt_handler_cb )(uint8_t *p_event)
 Function prototype for the HCI event monitor function that the application may suppply. More...
 

Functions

wiced_result_t wiced_bt_stack_platform_initialize (wiced_bt_stack_platform_t *platform_interfaces)
 Initialize the platform interfaces, by providing porting functions specific to the underlying platform. More...
 
wiced_result_t wiced_bt_stack_platform_deinit (void)
 DeInitialize the platform interfaces and free the memory allocated by wiced_bt_stack_platform_initialize API. More...
 
void wiced_bt_process_acl_data (uint8_t *pData, uint32_t length)
 Called by the porting layer to process the incoming ACL data received from the remote bluetooth device. More...
 
void wiced_bt_process_hci_events (uint8_t *pData, uint32_t length)
 Called by the porting layer to process the incoming HCI events from the local bluetooth controller. More...
 
void wiced_bt_process_sco_data (uint8_t *pData, uint32_t length)
 Called by the porting layer to process the incoming SCO data received from the remote bluetooth device. More...
 
void wiced_bt_process_isoc_data (uint8_t *pData, uint32_t length)
 Called by the porting layer to process the incoming ISOC data received from the remote bluetooth device. More...
 
void wiced_bt_process_timer (void)
 Called by the porting layer on expiry of the timer to process pending timers. More...
 
void wiced_bt_stack_indicate_lower_tx_complete (void)
 Called by the lower layer transport driver to restart sending ACL data to the controller Note: Porting layer API. More...
 
void wiced_bt_continue_reset (void)
 Called by the porting layer to complete/continue the reset process Typically called after downloading firmware patches to the controller. More...
 
uint32_t wiced_bt_set_stack_config (const wiced_bt_cfg_settings_t *p_bt_new_cfg_settings)
 Set the stack config. More...
 
void wiced_bt_stack_init_internal (wiced_bt_management_cback_t mgmt_cback, wiced_bt_internal_post_stack_init_cb post_stack_cb, wiced_bt_internal_stack_evt_handler_cb evt_handler_cb)
 Internal stack init. More...
 
void wiced_bt_stack_shutdown (void)
 This function blocks until all de-initialisation procedures are complete. More...
 

Detailed Description

Interface between Stack and platform.

Typedef Documentation

typedef wiced_bool_t(* wiced_bt_internal_stack_evt_handler_cb)(uint8_t *p_event)

Function prototype for the HCI event monitor function that the application may suppply.

The application MUST return TRUE if the it handled the event and does not want the stack to process the event. If the application returns FALSE, the stack will process the event.

Function Documentation

void wiced_bt_continue_reset ( void  )

Called by the porting layer to complete/continue the reset process Typically called after downloading firmware patches to the controller.

Returns
void
void wiced_bt_process_acl_data ( uint8_t *  pData,
uint32_t  length 
)

Called by the porting layer to process the incoming ACL data received from the remote bluetooth device.

Parameters
[in]pData: Pointer to the ACL data to be processed
[in]length: Length of the ACL data buffer
Returns
void
void wiced_bt_process_hci_events ( uint8_t *  pData,
uint32_t  length 
)

Called by the porting layer to process the incoming HCI events from the local bluetooth controller.

Parameters
[in]pData: Pointer to the HCI Events to be processed
[in]length: Length of the event buffer
Returns
void
void wiced_bt_process_isoc_data ( uint8_t *  pData,
uint32_t  length 
)

Called by the porting layer to process the incoming ISOC data received from the remote bluetooth device.

Parameters
[in]pData: Pointer to the ISOC data to be processed
[in]length: Length of the ISOC data buffer
Returns
void
void wiced_bt_process_sco_data ( uint8_t *  pData,
uint32_t  length 
)

Called by the porting layer to process the incoming SCO data received from the remote bluetooth device.

Parameters
[in]pData: Pointer to the SCO data to be processed
[in]length: Length of the SCO data buffer
Returns
void
void wiced_bt_process_timer ( void  )

Called by the porting layer on expiry of the timer to process pending timers.

Returns
void
uint32_t wiced_bt_set_stack_config ( const wiced_bt_cfg_settings_t p_bt_new_cfg_settings)

Set the stack config.

Invoked by the porting layer

Parameters
[in]p_bt_new_cfg_settings: Stack configuration settings
Returns
0 if there is any error in the configuration otherwise the dynamic memory size requirements of the stack for the configuration.
void wiced_bt_stack_indicate_lower_tx_complete ( void  )

Called by the lower layer transport driver to restart sending ACL data to the controller Note: Porting layer API.

This API is expected to be invoked by the lower layer transport driver, to restart transfers from the stack to the controller. The lower tx layer is expected to have space for atleast one complete ACL buffer Typically used in cases where the lower Tx has lesser number of buffers than allowed by controller

void wiced_bt_stack_init_internal ( wiced_bt_management_cback_t  mgmt_cback,
wiced_bt_internal_post_stack_init_cb  post_stack_cb,
wiced_bt_internal_stack_evt_handler_cb  evt_handler_cb 
)

Internal stack init.

Parameters
[in]mgmt_cback: Application Bluetooth Management callback
[in]post_stack_cb: Internal post stack init callback
[in]evt_handler_cb: Internal stack event handler
Returns
Dynamic memory size requirements of the stack for the configuration
wiced_result_t wiced_bt_stack_platform_deinit ( void  )

DeInitialize the platform interfaces and free the memory allocated by wiced_bt_stack_platform_initialize API.

Returns
WICED_BT_SUCCESS : on success;
WICED_BT_ERROR : if an error occurred
Note
: After calling this API, DON'T call any Bluetooth API without calling wiced_bt_stack_platform_initialize again.
wiced_result_t wiced_bt_stack_platform_initialize ( wiced_bt_stack_platform_t platform_interfaces)

Initialize the platform interfaces, by providing porting functions specific to the underlying platform.

Returns
WICED_BT_SUCCESS : on success;
WICED_BT_ERROR : if an error occurred
void wiced_bt_stack_shutdown ( void  )

This function blocks until all de-initialisation procedures are complete.

It is recommended that the application disconnect any outstanding connections prior to invoking this function.

Returns
None