BT/BLE#
Modules#
Functions#
Clear the Bluetooth wait bitmap.
Set the bt wait bitmap.
Register the bt-common callbacks.
Determine the ACL packet type (BT classic) using the frame type.
Determine the BT protocol (BT COMMON / BT classic / BLE ) using the packet type.
Calculate semaphore wait time for a protocol (BT COMMON / BT classic / BLE ) using the packet type.
Handle BT data transfer completion.
Return BT status.
Set BT status.
Get bt status.
Update local Device buffer availability per slave in global ble cb structure.
Update Remote BLE Device info in global ble cb structure.
Remove Remote BLE Device info in global ble cb structure.
Process BT RX packets.
Process BT RX packets.
Initialize bt control block structure.
Initialize bt global control block.
Wait for BT card ready.
Register the GAP extended callbacks.
Register the chip memory stats callbacks.
Register the l2cap callbacks.
Register the hid event callbacks for received HID messages.
Register the bt_hfp callbacks.
Register the PBAP callbacks.
Register the IAP callbacks.
Initailize the BT callbacks register.
Register the function pointers for GATT responses.
Initailize the BT callbacks register.
Chip memory status.
Form the payload of the BT command packet.
Fill the BT Classic command packet payload.
Form the payload of the BT Classic command packet.
Fill commands and places into Bt TX queue.
Initialize bt stack.
Typedef Documentation#
Function Documentation#
rsi_bt_clear_wait_bitmap#
void rsi_bt_clear_wait_bitmap (uint16_t protocol_type, uint8_t sem_type)
Clear the Bluetooth wait bitmap.
[in] | protocol_type | - Protocol type |
[in] | sem_type | - Type |
Returns
void
54
of file driver/rsi_bt_ble.c
rsi_bt_set_wait_bitmap#
void rsi_bt_set_wait_bitmap (uint16_t protocol_type, uint8_t sem_type)
Set the bt wait bitmap.
[in] | protocol_type | - Protocol |
[in] | sem_type | - Type |
Returns
void
100
of file driver/rsi_bt_ble.c
rsi_bt_common_register_callbacks#
void rsi_bt_common_register_callbacks (rsi_bt_get_ber_pkt_t rsi_bt_get_ber_pkt_from_app)
Register the bt-common callbacks.
[in] | rsi_bt_get_ber_pkt_from_app | - BER Call back |
Returns
void
183
of file driver/rsi_bt_ble.c
rsi_bt_get_ACL_type#
uint8_t rsi_bt_get_ACL_type (uint16_t rsp_type)
Determine the ACL packet type (BT classic) using the frame type.
[in] | rsp_type | - packet type |
Returns
1 - HCI Command Packet, 2 - HCI ACL packet ,3 - HCI PER Packet Non-Zero Value - Failure (Not a BT Classic Packet)
202
of file driver/rsi_bt_ble.c
rsi_bt_get_proto_type#
uint16_t rsi_bt_get_proto_type (uint16_t rsp_type, rsi_bt_cb_t ** bt_cb)
Determine the BT protocol (BT COMMON / BT classic / BLE ) using the packet type.
[in] | rsp_type | - Packet type |
[in] | bt_cb | - BT control back |
Returns
0 - Success Non-Zero Value - Failure
254
of file driver/rsi_bt_ble.c
rsi_bt_get_timeout#
uint32_t rsi_bt_get_timeout (uint16_t cmd_type, uint16_t protocol_type)
Calculate semaphore wait time for a protocol (BT COMMON / BT classic / BLE ) using the packet type.
[in] | cmd_type | - Command Type |
[in] | protocol_type | - Protocol type , whether it is BT Common/BT Classic/BLE |
Returns
0 - Success Non-Zero Value - Failure
400
of file driver/rsi_bt_ble.c
rsi_bt_common_tx_done#
void rsi_bt_common_tx_done (rsi_pkt_t * pkt)
Handle BT data transfer completion.
[in] | pkt | - Pointer to packet |
Returns
void
474
of file driver/rsi_bt_ble.c
rsi_get_bt_state#
uint32_t rsi_get_bt_state (rsi_bt_cb_t * bt_cb)
Return BT status.
[in] | bt_cb | - BT control block |
Returns
0 - Success Non-Zero Value - Failure
520
of file driver/rsi_bt_ble.c
rsi_bt_set_status#
void rsi_bt_set_status (rsi_bt_cb_t * bt_cb, int32_t status, None)
Set BT status.
[in] | bt_cb | - BT control block |
[in] | status | - Status value to be set |
[out] | None |
Returns
void
535
of file driver/rsi_bt_ble.c
rsi_bt_get_status#
uint32_t rsi_bt_get_status (rsi_bt_cb_t * bt_cb)
Get bt status.
[in] | bt_cb | - BT control block |
Returns
0 - Success Non-Zero Value - Failure
549
of file driver/rsi_bt_ble.c
rsi_ble_update_le_dev_buf#
void rsi_ble_update_le_dev_buf (rsi_ble_event_le_dev_buf_ind_t * rsi_ble_event_le_dev_buf_ind)
Update local Device buffer availability per slave in global ble cb structure.
[in] | rsi_ble_event_le_dev_buf_ind |
Returns
void
562
of file driver/rsi_bt_ble.c
rsi_add_remote_ble_dev_info#
void rsi_add_remote_ble_dev_info (rsi_ble_event_enhance_conn_status_t * remote_dev_info)
Update Remote BLE Device info in global ble cb structure.
[in] | remote_dev_info |
Returns
void
589
of file driver/rsi_bt_ble.c
rsi_remove_remote_ble_dev_info#
void rsi_remove_remote_ble_dev_info (rsi_ble_event_disconnect_t * remote_dev_info)
Remove Remote BLE Device info in global ble cb structure.
[in] | remote_dev_info | - Remote device information |
Returns
void
618
of file driver/rsi_bt_ble.c
rsi_driver_process_bt_resp#
int32_t rsi_driver_process_bt_resp (rsi_bt_cb_t * bt_cb, rsi_pkt_t * pkt, void(*)(rsi_bt_cb_t *cb, uint16_t type, uint8_t *data, uint16_t length) rsi_bt_async_callback_handler, uint16_t protocol_type)
Process BT RX packets.
[in] | bt_cb | - BT control block |
[in] | pkt | - Pointer to received RX packet |
[in] | rsi_bt_async_callback_handler | |
N/A | protocol_type |
Returns
0 - Success Non-Zero Value - Failure
653
of file driver/rsi_bt_ble.c
rsi_driver_process_bt_resp_handler#
uint16_t rsi_driver_process_bt_resp_handler (rsi_pkt_t * pkt)
Process BT RX packets.
[in] | pkt | - Pointer to received RX packet |
Returns
0 - Success Non-Zero Value - Failure
764
of file driver/rsi_bt_ble.c
rsi_bt_cb_init#
int8_t rsi_bt_cb_init (rsi_bt_cb_t * bt_cb, uint16_t protocol_type)
Initialize bt control block structure.
[in] | bt_cb | - Pointer to bt_cb structure |
[in] | protocol_type | - Protocol type |
Returns
0 - Success Non-Zero Value - Failure
834
of file driver/rsi_bt_ble.c
rsi_bt_global_cb_init#
uint16_t rsi_bt_global_cb_init (rsi_driver_cb_t * driver_cb, uint8_t * buffer)
Initialize bt global control block.
[in] | driver_cb | - Pointer to bt_cb structure |
[in] | buffer | - Buffer |
Returns
0 - Success Non-Zero Value - Failure
880
of file driver/rsi_bt_ble.c
rsi_bt_common_init#
void rsi_bt_common_init (void )
Wait for BT card ready.
[in] |
Returns
void
920
of file driver/rsi_bt_ble.c
rsi_bt_gatt_extended_register_callbacks#
void rsi_bt_gatt_extended_register_callbacks (rsi_bt_on_gatt_connection_t bt_on_gatt_connection_event, rsi_bt_on_gatt_disconnection_t bt_on_gatt_disconnection_event)
Register the GAP extended callbacks.
[in] | bt_on_gatt_connection_event | - GATT Connection status callback |
[in] | bt_on_gatt_disconnection_event | - GATT Disconnection status callback |
Returns
void
1023
of file driver/rsi_bt_ble.c
rsi_bt_on_chip_memory_status_callbacks_register#
void rsi_bt_on_chip_memory_status_callbacks_register (rsi_bt_on_chip_memory_stats_handler_t bt_on_chip_memory_stats_event)
Register the chip memory stats callbacks.
[in] | bt_on_chip_memory_stats_event | - Memory utilization Event callback |
Note
This API is not supported in the current release.
Returns
void
1085
of file driver/rsi_bt_ble.c
rsi_bt_l2cap_register_callbacks#
void rsi_bt_l2cap_register_callbacks (rsi_bt_on_l2cap_connect_t bt_on_l2cap_connect_event, rsi_bt_on_l2cap_rx_data_t bt_on_l2cap_rx_data_event)
Register the l2cap callbacks.
[in] | bt_on_l2cap_connect_event | - HID connection status callback |
[in] | bt_on_l2cap_rx_data_event | - HID data transfer status callback |
Returns
void
1126
of file driver/rsi_bt_ble.c
rsi_bt_hid_register_callbacks#
void rsi_bt_hid_register_callbacks (rsi_bt_on_hid_connect_t bt_on_hid_connect_event, rsi_bt_on_hid_rx_data_t bt_on_hid_rx_data_event, rsi_bt_on_hid_handshake_t bt_on_hid_handshake_event, rsi_bt_on_hid_control_t bt_on_hid_control_event, rsi_bt_on_hid_get_report_t bt_on_hid_get_report, rsi_bt_on_hid_set_report_t bt_on_hid_set_report, rsi_bt_on_hid_get_protocol_t bt_on_hid_get_proto, rsi_bt_on_hid_set_protocol_t bt_on_hid_set_proto)
Register the hid event callbacks for received HID messages.
[in] | bt_on_hid_connect_event | - HID connection status callback |
[in] | bt_on_hid_rx_data_event | - HID data transfer status callback |
[in] | bt_on_hid_handshake_event | - Callback on HID profile handshake msg is received. |
[in] | bt_on_hid_control_event | - Callback on HID profile control msg is received |
[in] | bt_on_hid_get_report | - Callback on HID profile get report msg is received |
[in] | bt_on_hid_set_report | - Callback on HID profile set report msg is received |
[in] | bt_on_hid_get_proto | - Callback on HID profile get protocol msg is received |
[in] | bt_on_hid_set_proto | - Callback on HID profile set protocol msg is received |
Returns
void
1152
of file driver/rsi_bt_ble.c
rsi_bt_hfp_register_callbacks#
void rsi_bt_hfp_register_callbacks (rsi_bt_on_hfp_connect_t bt_on_hfp_connect_event, rsi_bt_on_hfp_disconnect_t bt_on_hfp_disconnect_event, rsi_bt_on_hfp_ring_t bt_on_hfp_ring_event, rsi_bt_on_hfp_callcallerid_t bt_on_hfp_callcallerid_event, rsi_bt_on_hfp_audioconnected_t bt_on_hfp_audioconnected_event, rsi_bt_on_hfp_audiodisconnected_t bt_on_hfp_audiodisconnected_event, rsi_bt_on_hfp_dialcomplete_t bt_on_hfp_dialcomplete_event, rsi_bt_on_hfp_answercomplete_t bt_on_hfp_answercomplete_event, rsi_bt_on_hfp_hangupcomplete_t bt_on_hfp_hangupcomplete_event, rsi_bt_on_hfp_senddtmfcomplete_t bt_on_hfp_senddtmfcomplete_event, rsi_bt_on_hfp_callwait_t bt_on_hfp_callwait_event, rsi_bt_on_hfp_callvoicerecogdeactivated_t bt_on_hfp_callvoicerecogdeactivated_event, rsi_bt_on_hfp_callvoicerecogactivated_t bt_on_hfp_callvoicerecogactivated_event, rsi_bt_on_hfp_servicenotfound_t bt_on_hfp_servicenotfound_event, rsi_bt_app_on_hfp_callstatus_t bt_on_hfp_callstatus_event, rsi_bt_app_on_hfp_signalstrength_t bt_on_hfp_signalstrength_event, rsi_bt_app_on_hfp_batterylevel_t bt_on_hfp_batterylevel_event, rsi_bt_app_on_hfp_phoneservice_t bt_on_hfp_phoneservice_event, rsi_bt_app_on_hfp_roamingstatus_t bt_on_hfp_roamingstatus_event, rsi_bt_app_on_hfp_callsetup_t bt_on_hfp_callsetup_event, rsi_bt_app_on_hfp_callheld_t bt_on_hfp_callheld_event, rsi_bt_app_on_hfp_voice_data_t bt_on_hfp_voice_data_event, rsi_bt_app_on_hfp_audio_codecselect_t bt_on_hfp_audio_codecselect_event)
Register the bt_hfp callbacks.
[in] | bt_on_hfp_connect_event | - HFP connect event |
[in] | bt_on_hfp_disconnect_event | - HFP disconnect event |
[in] | bt_on_hfp_ring_event | - HFP ring event |
[in] | bt_on_hfp_callcallerid_event | - HFP call callerid event |
[in] | bt_on_hfp_audioconnected_event | - HFP audio connected event |
[in] | bt_on_hfp_audiodisconnected_event | - HFP audio disconnected event |
[in] | bt_on_hfp_dialcomplete_event | - HFP dail complete event |
[in] | bt_on_hfp_answercomplete_event | - HFP answer complete event |
[in] | bt_on_hfp_hangupcomplete_event | - HFP hangup complete event |
[in] | bt_on_hfp_senddtmfcomplete_event | - HFP send dtmf complete event |
[in] | bt_on_hfp_callwait_event | - HFP call wait event |
[in] | bt_on_hfp_callvoicerecogdeactivated_event | - HFP call voice record deactivated event |
[in] | bt_on_hfp_callvoicerecogactivated_event | - HFP call voice record activated |
[in] | bt_on_hfp_servicenotfound_event | - HFP service not found |
[in] | bt_on_hfp_callstatus_event | - HFP call status event |
[in] | bt_on_hfp_signalstrength_event | - HFP signal strength event |
[in] | bt_on_hfp_batterylevel_event | - HFP battery level event |
[in] | bt_on_hfp_phoneservice_event | - HFP phone service event |
[in] | bt_on_hfp_roamingstatus_event | - HFP roaming status event |
[in] | bt_on_hfp_callsetup_event | - HFP call setup event |
[in] | bt_on_hfp_callheld_event | - HFP call held event |
N/A | bt_on_hfp_voice_data_event | |
N/A | bt_on_hfp_audio_codecselect_event |
Returns
void
1395
of file driver/rsi_bt_ble.c
rsi_bt_pbap_register_callbacks#
void rsi_bt_pbap_register_callbacks (rsi_bt_on_pbap_connect_t bt_on_pbap_connect_event, rsi_bt_on_pbap_disconnect_t bt_on_pbap_disconnect_event, rsi_bt_on_pbap_data_t bt_on_pbap_data_event)
Register the PBAP callbacks.
[in] | bt_on_pbap_connect_event | - PBAP connection status callback |
[in] | bt_on_pbap_disconnect_event | - PBAP disconnection status callback |
[in] | bt_on_pbap_data_event | - PBAP data status callback |
Returns
void
1459
of file driver/rsi_bt_ble.c
rsi_bt_iap_register_callbacks#
void rsi_bt_iap_register_callbacks (rsi_bt_app_iap_conn_t bt_app_iap_conn, rsi_bt_app_iap_disconn_t bt_app_iap_disconn, rsi_bt_app_iap_acc_auth_strt_t bt_app_iap_acc_auth_strt, rsi_bt_app_iap_acc_auth_fail_t bt_app_iap_acc_auth_fail, rsi_bt_app_iap_acc_auth_complete_t bt_app_iap_acc_auth_complete, rsi_bt_app_iap2_auth_start_t bt_app_iap2_auth_start, rsi_bt_app_iap2_auth_complete_t bt_app_iap2_auth_complete, rsi_bt_app_iap2_auth_fail_t bt_app_iap2_auth_fail, rsi_bt_app_iap2_identification_start_t bt_app_iap2_identification_start, rsi_bt_app_iap2_identification_complete_t bt_app_iap2_identification_complete, rsi_bt_app_iap2_identification_reject_t bt_app_iap2_identification_reject, rsi_bt_app_on_iap2_data_rx_t bt_app_on_iap2_data_rx, rsi_bt_app_iap2_File_Tx_state_t bt_app_iap2_File_Transfer_state, rsi_bt_app_iap2_File_Transfer_rx_data_t bt_app_iap2_File_Transfer_data)
Register the IAP callbacks.
[in] | bt_app_iap_conn | - IAP connection status |
[in] | bt_app_iap_disconn | - IAP disconnection status |
[in] | bt_app_iap_acc_auth_strt | - IAP access authentication start status |
[in] | bt_app_iap_acc_auth_fail | - IAP access authentication failed status |
[in] | bt_app_iap_acc_auth_complete | - IAP access authentication complete status |
[in] | bt_app_iap2_auth_start | - IAP2 authentication start status |
[in] | bt_app_iap2_auth_complete | - IAP2 authentication complete status |
[in] | bt_app_iap2_auth_fail | - IAP2 authentication fail status |
[in] | bt_app_iap2_identification_start | - IAP2 identification start status |
[in] | bt_app_iap2_identification_complete | - IAP2 identification complete status |
[in] | bt_app_iap2_identification_reject | - IAP2 identification reject status |
[in] | bt_app_on_iap2_data_rx | - IAP2 data receive |
[in] | bt_app_iap2_File_Transfer_state | - IAP2 file transfer state |
[in] | bt_app_iap2_File_Transfer_data | - IAP2 file transfer data |
Returns
void
1492
of file driver/rsi_bt_ble.c
rsi_bt_callbacks_handler#
void rsi_bt_callbacks_handler (rsi_bt_cb_t * bt_classic_cb, uint16_t rsp_type, uint8_t * payload, uint16_t payload_length)
Initailize the BT callbacks register.
[in] | bt_classic_cb | - BT BLE struct pointer |
[in] | rsp_type | - BT Packet type |
[in] | payload | - Payload |
[in] | payload_length | - payload length |
Returns
void
1543
of file driver/rsi_bt_ble.c
rsi_ble_l2cap_cbsc_register_callbacks#
void rsi_ble_l2cap_cbsc_register_callbacks (rsi_ble_on_cbfc_conn_req_event_t ble_on_cbsc_conn_req, rsi_ble_on_cbfc_conn_complete_event_t ble_on_cbsc_conn_complete, rsi_ble_on_cbfc_rx_data_event_t ble_on_cbsc_rx_data, rsi_ble_on_cbfc_disconn_event_t ble_on_cbsc_disconn)
Register the function pointers for GATT responses.
[in] | ble_on_cbsc_conn_req | - Callback function for CBFC connection request event |
[in] | ble_on_cbsc_conn_complete | - Callback function for CBFC connection complete status event |
[in] | ble_on_cbsc_rx_data | - Callback function for CBFC data receive event |
[in] | ble_on_cbsc_disconn | - Callback function for CBFC disconnect event |
Returns
void
2568
of file driver/rsi_bt_ble.c
rsi_ble_callbacks_handler#
void rsi_ble_callbacks_handler (rsi_bt_cb_t * ble_cb, uint16_t rsp_type, uint8_t * payload, uint16_t payload_length)
Initailize the BT callbacks register.
[in] | ble_cb | - BLE control back |
[in] | rsp_type | - BLE Packet type |
[in] | payload | - Payload |
[in] | payload_length | - Payload length |
Returns
void
2599
of file driver/rsi_bt_ble.c
rsi_ble_on_chip_memory_status_callbacks_register#
void rsi_ble_on_chip_memory_status_callbacks_register (chip_ble_buffers_stats_handler_t ble_on_chip_memory_status_event)
Chip memory status.
[in] | ble_on_chip_memory_status_event | - Memory status |
Returns
0 - Success Non-Zero Value - Failure
3004
of file driver/rsi_bt_ble.c
rsi_bt_prepare_common_pkt#
uint16_t rsi_bt_prepare_common_pkt (uint16_t cmd_type, void * cmd_struct, rsi_pkt_t * pkt)
Form the payload of the BT command packet.
[in] | cmd_type | - Type of the command |
[in] | cmd_struct | - Pointer of the command structure |
[out] | pkt | - Pointer of the packet to fill the contents of the payload |
Returns
0 - Success Non-Zero Value - Failure
3025
of file driver/rsi_bt_ble.c
rsi_bt_prepare_classic_pkt#
uint16_t rsi_bt_prepare_classic_pkt (uint16_t cmd_type, void * cmd_struct, rsi_pkt_t * pkt)
Fill the BT Classic command packet payload.
[in] | cmd_type | - Type of the command |
[in] | cmd_struct | - Pointer of the command structure |
[out] | pkt | - Pointer of the packet to fill the contents of the payload |
Returns
0 - Success Non-Zero Value - Failure
3205
of file driver/rsi_bt_ble.c
rsi_bt_prepare_le_pkt#
uint16_t rsi_bt_prepare_le_pkt (uint16_t cmd_type, void * cmd_struct, rsi_pkt_t * pkt)
Form the payload of the BT Classic command packet.
[in] | cmd_type | - Type of the command |
[in] | cmd_struct | - Pointer of the command structure |
[out] | pkt | - Pointer of the packet to fill the contents of the payload |
Returns
0 - Success Non-Zero Value - Failure
3795
of file driver/rsi_bt_ble.c
rsi_bt_driver_send_cmd#
int32_t rsi_bt_driver_send_cmd (uint16_t cmd, void * cmd_struct, void * resp)
Fill commands and places into Bt TX queue.
[in] | cmd | - Type of the command to send |
[in] | cmd_struct | - Pointer of the packet structure to send |
[in] | resp | - Pointer of the packet to fill the contents of the payload |
Returns
0 - Success Non-Zero Value - Failure
4339
of file driver/rsi_bt_ble.c
intialize_bt_stack#
int32_t intialize_bt_stack (uint8_t mode)
Initialize bt stack.
[in] | mode | - Mode |
Returns
0 - Success Non-Zero Value - Failure
4552
of file driver/rsi_bt_ble.c