component/bt: add BLE v5.0 feature for bluedroid host

This commit is contained in:
zwj
2020-07-09 20:58:13 +08:00
parent 19d92ef6b2
commit 7c1c669799
246 changed files with 84000 additions and 771 deletions
@@ -132,6 +132,16 @@ typedef struct {
#define BTM_BLE_ADV_DATA_LEN_MAX 31
#define BTM_BLE_CACHE_ADV_DATA_MAX 62
#if (BLE_50_FEATURE_SUPPORT == TRUE)
#define BTM_BLE_EXT_ADV_DATA_LEN_MAX 251
#define BTM_BLE_PERIODIC_ADV_DATA_LEN_MAX 252
#define BTM_BLE_ADV_DATA_OP_INTERMEDIATE_FRAG 0
#define BTM_BLE_ADV_DATA_OP_FIRST_FRAG 1
#define BTM_BLE_ADV_DATA_OP_LAST_FRAG 2
#define BTM_BLE_ADV_DATA_OP_COMPLETE 3
#define BTM_BLE_ADV_DATA_OP_UNCHANGED_DATA 4
#endif // #if (BLE_50_FEATURE_SUPPORT == TRUE)
#define BTM_BLE_ISVALID_PARAM(x, min, max) (((x) >= (min) && (x) <= (max)) || ((x) == BTM_BLE_CONN_PARAM_UNDEF))
@@ -508,6 +518,18 @@ void btm_ble_set_keep_rfu_in_auth_req(BOOLEAN keep_rfu);
BOOLEAN btm_get_current_conn_params(BD_ADDR bda, UINT16 *interval, UINT16 *latency, UINT16 *timeout);
#if (BLE_50_FEATURE_SUPPORT == TRUE)
void btm_ble_update_phy_evt(tBTM_BLE_UPDATE_PHY *params);
void btm_ble_scan_timeout_evt(void);
void btm_ble_adv_set_terminated_evt(tBTM_BLE_ADV_TERMINAT *params);
void btm_ble_ext_adv_report_evt(tBTM_BLE_EXT_ADV_REPORT *params);
void btm_ble_scan_req_received_evt(tBTM_BLE_SCAN_REQ_RECEIVED *params);
void btm_ble_channel_select_algorithm_evt(tBTM_BLE_CHANNEL_SEL_ALG *params);
void btm_ble_periodic_adv_report_evt(tBTM_PERIOD_ADV_REPORT *params);
void btm_ble_periodic_adv_sync_lost_evt(tBTM_BLE_PERIOD_ADV_SYNC_LOST *params);
void btm_ble_periodic_adv_sync_establish_evt(tBTM_BLE_PERIOD_ADV_SYNC_ESTAB *params);
#endif // #if (BLE_50_FEATURE_SUPPORT == TRUE)
/*
#ifdef __cplusplus
}
@@ -550,7 +550,7 @@ typedef struct {
#endif
UINT16 auth_mode; /* Authentication mode */
#endif
#if (BLE_PRIVACY_SPT == TRUE)
#if (BLE_PRIVACY_SPT == TRUE && (!CONTROLLER_RPA_LIST_ENABLE))
tBLE_ADDR_TYPE current_addr_type; /* current adv addr type*/
BD_ADDR current_addr; /* current adv addr*/
bool current_addr_valid; /* current addr info is valid or not*/
@@ -669,6 +669,9 @@ struct tBTM_SEC_DEV_REC{
#if BLE_INCLUDED == TRUE
tBTM_SEC_BLE ble;
tBTM_LE_CONN_PRAMS conn_params;
#if (BLE_50_FEATURE_SUPPORT == TRUE)
tBTM_EXT_CONN_PARAMS ext_conn_params;
#endif // #if (BLE_50_FEATURE_SUPPORT == TRUE)
#endif
// btla-specific ++
@@ -1071,6 +1074,11 @@ void btm_qos_setup_complete (UINT8 status, UINT16 handle, FLOW_SPEC *p_flow);
void btm_qos_setup_timeout (void *p_tle);
#if (BLE_50_FEATURE_SUPPORT == TRUE)
void btm_create_sync_callback(UINT8 status);
void btm_set_phy_callback(UINT8 status);
void btm_read_phy_callback(uint8_t hci_status, uint16_t conn_handle, uint8_t tx_phy, uint8_t rx_phy);
#endif
/* Internal functions provided by btm_sco.c
********************************************
*/