![]()
![]()
#define BTM_BLE_INT_H
![]()
![]()
#include "common/bt_target.h"
![]()
![]()
#include "osi/fixed_queue.h"
![]()
![]()
#include "osi/pkt_queue.h"
![]()
![]()
#include "osi/thread.h"
![]()
![]()
#include "stack/hcidefs.h"
![]()
![]()
#include "stack/btm_ble_api.h"
![]()
![]()
#include "btm_int.h"
![]()
![]()
#include "stack/smp_api.h"
![]()
![]()
#define BTM_BLE_SCAN_ENABLE
![]()
![]()
#define BTM_BLE_SCAN_DISABLE
![]()
![]()
#define BTM_BLE_ADV_ENABLE
![]()
![]()
#define BTM_BLE_ADV_DISABLE
![]()
![]()
#define BTM_BLE_SELECT_SCAN
![]()
![]()
#define BTM_BLE_NAME_REQUEST
![]()
![]()
#define BTM_BLE_OBSERVE
![]()
![]()
#define BTM_BLE_MAX_WL_ENTRY
![]()
![]()
#define BTM_BLE_AD_DATA_LEN
![]()
![]()
#define BTM_BLE_ENC_MASK
![]()
![]()
#define BTM_BLE_DUPLICATE_DISABLE
![]()
![]()
#define BTM_BLE_DUPLICATE_ENABLE
![]()
![]()
#define BTM_BLE_DUPLICATE_MAX
![]()
![]()
#define BTM_BLE_GAP_DISC_SCAN_INT
![]()
![]()
#define BTM_BLE_GAP_DISC_SCAN_WIN
![]()
![]()
#define BTM_BLE_GAP_ADV_INT
![]()
![]()
#define BTM_BLE_GAP_LIM_TOUT
![]()
![]()
#define BTM_BLE_LOW_LATENCY_SCAN_INT
![]()
![]()
#define BTM_BLE_LOW_LATENCY_SCAN_WIN
![]()
![]()
#define BTM_BLE_GAP_ADV_FAST_INT_1
![]()
![]()
#define BTM_BLE_GAP_ADV_FAST_INT_2
![]()
![]()
#define BTM_BLE_GAP_ADV_SLOW_INT
![]()
![]()
#define BTM_BLE_GAP_ADV_DIR_MAX_INT
![]()
![]()
#define BTM_BLE_GAP_ADV_DIR_MIN_INT
![]()
![]()
#define BTM_BLE_GAP_FAST_ADV_TOUT
![]()
![]()
#define BTM_BLE_SEC_REQ_ACT_NONE
![]()
![]()
#define BTM_BLE_SEC_REQ_ACT_ENCRYPT
![]()
![]()
#define BTM_BLE_SEC_REQ_ACT_PAIR
![]()
![]()
#define BTM_BLE_SEC_REQ_ACT_DISCARD
![]()
![]()
tBTM_BLE_SEC_REQ_ACT
![]()
![]()
#define BLE_STATIC_PRIVATE_MSB_MASK
![]()
![]()
#define BLE_NON_RESOLVE_ADDR_MSB
![]()
![]()
#define BLE_RESOLVE_ADDR_MSB
![]()
![]()
#define BLE_RESOLVE_ADDR_MASK
![]()
![]()
#define BTM_BLE_IS_NON_RESLVE_BDA
![]()
![]()
#define BTM_BLE_IS_RESOLVE_BDA
![]()
![]()
#define BTM_LE_SELECT_CONN_ACTIVE
![]()
![]()
#define BTM_LE_OBSERVE_ACTIVE
![]()
![]()
#define BTM_LE_DISCOVER_ACTIVE
![]()
![]()
#define BTM_BLE_IS_SCAN_ACTIVE
![]()
![]()
#define BTM_BLE_IS_INQ_ACTIVE
![]()
![]()
#define BTM_BLE_IS_OBS_ACTIVE
![]()
![]()
#define BTM_BLE_IS_DISCO_ACTIVE
![]()
![]()
#define BTM_BLE_IS_SEL_CONN_ACTIVE
![]()
![]()
#define BLE_ADDR_TYPE_ID_BIT
![]()
![]()
#define BTM_VSC_CHIP_CAPABILITY_L_VERSION
![]()
![]()
#define BTM_VSC_CHIP_CAPABILITY_M_VERSION
![]()
![]()
tBTM_BLE_GAP_STATE
![]()
![]()
BTM_BLE_IDLE
![]()
![]()
BTM_BLE_SCANNING
![]()
![]()
BTM_BLE_ADVERTISING
![]()
![]()
tBTM_BLE_LOCAL_ADV_DATA
![]()
![]()
data_mask
![]()
![]()
p_flags
![]()
![]()
ad_data
![]()
![]()
p_pad
![]()
![]()
tINQ_LE_BDADDR
![]()
![]()
inq_count
![]()
![]()
scan_rsp
![]()
![]()
le_bda
![]()
![]()
#define BTM_BLE_ADV_DATA_LEN_MAX
![]()
![]()
#define BTM_BLE_CACHE_ADV_DATA_MAX
![]()
![]()
#define BTM_BLE_EXT_ADV_DATA_LEN_MAX
![]()
![]()
#define BTM_BLE_PERIODIC_ADV_DATA_LEN_MAX
![]()
![]()
#define BTM_BLE_ADV_DATA_OP_INTERMEDIATE_FRAG
![]()
![]()
#define BTM_BLE_ADV_DATA_OP_FIRST_FRAG
![]()
![]()
#define BTM_BLE_ADV_DATA_OP_LAST_FRAG
![]()
![]()
#define BTM_BLE_ADV_DATA_OP_COMPLETE
![]()
![]()
#define BTM_BLE_ADV_DATA_OP_UNCHANGED_DATA
![]()
![]()
#define BTM_BLE_ISVALID_PARAM
![]()
![]()
tBTM_BLE_INQ_CB
![]()
![]()
discoverable_mode
![]()
![]()
connectable_mode
![]()
![]()
scan_params_set
![]()
![]()
scan_window
![]()
![]()
scan_interval
![]()
![]()
scan_type
![]()
![]()
scan_duplicate_filter
![]()
![]()
adv_interval_min
![]()
![]()
adv_interval_max
![]()
![]()
afp
![]()
![]()
sfp
![]()
![]()
p_adv_cb
![]()
![]()
p_stop_adv_cb
![]()
![]()
p_clear_adv_cb
![]()
![]()
adv_addr_type
![]()
![]()
evt_type
![]()
![]()
adv_mode
![]()
![]()
direct_bda
![]()
![]()
directed_conn
![]()
![]()
fast_adv_on
![]()
![]()
fast_adv_timer
![]()
![]()
adv_len
![]()
![]()
adv_data_cache
![]()
![]()
adv_addr
![]()
![]()
num_bd_entries
![]()
![]()
max_bd_entries
![]()
![]()
adv_data
![]()
![]()
adv_chnl_map
![]()
![]()
inq_timer_ent
![]()
![]()
scan_rsp
![]()
![]()
state
![]()
![]()
tx_power
![]()
![]()
tBTM_BLE_RESOLVE_CBACK
![]()
![]()
tBTM_BLE_ADDR_CBACK
![]()
![]()
#define BTM_BLE_GAP_ADDR_BIT_RANDOM
![]()
![]()
#define BTM_BLE_GAP_ADDR_BIT_RESOLVABLE
![]()
![]()
tBTM_LE_RANDOM_CB
![]()
![]()
own_addr_type
![]()
![]()
exist_addr_bit
![]()
![]()
static_rand_addr
![]()
![]()
resolvale_addr
![]()
![]()
private_addr
![]()
![]()
random_bda
![]()
![]()
busy
![]()
![]()
p_dev_rec
![]()
![]()
p_resolve_cback
![]()
![]()
p_generate_cback
![]()
![]()
p
![]()
![]()
raddr_timer_ent
![]()
![]()
set_local_privacy_cback
![]()
![]()
#define BTM_BLE_MAX_BG_CONN_DEV_NUM
![]()
![]()
tBTM_LE_CONN_PRAMS
![]()
![]()
scan_interval
![]()
![]()
scan_window
![]()
![]()
min_conn_int
![]()
![]()
max_conn_int
![]()
![]()
slave_latency
![]()
![]()
supervision_tout
![]()
![]()
min_ce_len
![]()
![]()
max_ce_len
![]()
![]()
tBTM_LE_BG_CONN_DEV
![]()
![]()
bd_addr
![]()
![]()
attr
![]()
![]()
is_connected
![]()
![]()
in_use
![]()
![]()
#define BTM_BLE_WL_IDLE
![]()
![]()
#define BTM_BLE_WL_INIT
![]()
![]()
#define BTM_BLE_WL_SCAN
![]()
![]()
#define BTM_BLE_WL_ADV
![]()
![]()
tBTM_BLE_WL_STATE
![]()
![]()
#define BTM_BLE_RL_IDLE
![]()
![]()
#define BTM_BLE_RL_INIT
![]()
![]()
#define BTM_BLE_RL_SCAN
![]()
![]()
#define BTM_BLE_RL_ADV
![]()
![]()
tBTM_BLE_RL_STATE
![]()
![]()
#define BLE_CONN_IDLE
![]()
![]()
#define BLE_DIR_CONN
![]()
![]()
#define BLE_BG_CONN
![]()
![]()
#define BLE_CONN_CANCEL
![]()
![]()
tBTM_BLE_CONN_ST
![]()
![]()
tBTM_BLE_CONN_REQ
![]()
![]()
p_param
![]()
![]()
#define BTM_BLE_STATE_INVALID
![]()
![]()
#define BTM_BLE_STATE_CONN_ADV
![]()
![]()
#define BTM_BLE_STATE_INIT
![]()
![]()
#define BTM_BLE_STATE_MASTER
![]()
![]()
#define BTM_BLE_STATE_SLAVE
![]()
![]()
#define BTM_BLE_STATE_LO_DUTY_DIR_ADV
![]()
![]()
#define BTM_BLE_STATE_HI_DUTY_DIR_ADV
![]()
![]()
#define BTM_BLE_STATE_NON_CONN_ADV
![]()
![]()
#define BTM_BLE_STATE_PASSIVE_SCAN
![]()
![]()
#define BTM_BLE_STATE_ACTIVE_SCAN
![]()
![]()
#define BTM_BLE_STATE_SCAN_ADV
![]()
![]()
#define BTM_BLE_STATE_MAX
![]()
![]()
tBTM_BLE_STATE
![]()
![]()
#define BTM_BLE_STATE_CONN_ADV_BIT
![]()
![]()
#define BTM_BLE_STATE_INIT_BIT
![]()
![]()
#define BTM_BLE_STATE_MASTER_BIT
![]()
![]()
#define BTM_BLE_STATE_SLAVE_BIT
![]()
![]()
#define BTM_BLE_STATE_LO_DUTY_DIR_ADV_BIT
![]()
![]()
#define BTM_BLE_STATE_HI_DUTY_DIR_ADV_BIT
![]()
![]()
#define BTM_BLE_STATE_NON_CONN_ADV_BIT
![]()
![]()
#define BTM_BLE_STATE_PASSIVE_SCAN_BIT
![]()
![]()
#define BTM_BLE_STATE_ACTIVE_SCAN_BIT
![]()
![]()
#define BTM_BLE_STATE_SCAN_ADV_BIT
![]()
![]()
tBTM_BLE_STATE_MASK
![]()
![]()
#define BTM_BLE_STATE_ALL_MASK
![]()
![]()
#define BTM_BLE_STATE_ALL_ADV_MASK
![]()
![]()
#define BTM_BLE_STATE_ALL_SCAN_MASK
![]()
![]()
#define BTM_BLE_STATE_ALL_CONN_MASK
![]()
![]()
#define BTM_LE_RESOLVING_LIST_MAX
![]()
![]()
#define BTM_DUPLICATE_SCAN_EXCEPTIONAL_INFO_ADV_ADDR
![]()
![]()
#define BTM_DUPLICATE_SCAN_EXCEPTIONAL_INFO_MESH_LINK_ID
![]()
![]()
#define BTM_DUPLICATE_SCAN_EXCEPTIONAL_INFO_MESH_BEACON_TYPE
![]()
![]()
#define BTM_DUPLICATE_SCAN_EXCEPTIONAL_INFO_MESH_PROV_SRV_ADV
![]()
![]()
#define BTM_DUPLICATE_SCAN_EXCEPTIONAL_INFO_MESH_PROXY_SRV_ADV
![]()
![]()
tBTM_BLE_RESOLVE_Q
![]()
![]()
resolve_q_random_pseudo
![]()
![]()
resolve_q_action
![]()
![]()
q_next
![]()
![]()
q_pending
![]()
![]()
tBTM_BLE_WL_OP
![]()
![]()
in_use
![]()
![]()
to_add
![]()
![]()
bd_addr
![]()
![]()
addr_type
![]()
![]()
attr
![]()
![]()
#define BTM_PRIVACY_NONE
![]()
![]()
#define BTM_PRIVACY_1_1
![]()
![]()
#define BTM_PRIVACY_1_2
![]()
![]()
#define BTM_PRIVACY_MIXED
![]()
![]()
tBTM_PRIVACY_MODE
![]()
![]()
tBTM_DATA_LENGTH_CHANGE_CBACK
![]()
![]()
tBTM_BLE_CB
![]()
![]()
scan_activity
![]()
![]()
inq_var
![]()
![]()
p_obs_results_cb
![]()
![]()
p_obs_cmpl_cb
![]()
![]()
p_obs_discard_cb
![]()
![]()
obs_timer_ent
![]()
![]()
p_scan_results_cb
![]()
![]()
p_scan_cmpl_cb
![]()
![]()
scan_timer_ent
![]()
![]()
adv_rpt_queue
![]()
![]()
adv_rpt_ready
![]()
![]()
bg_conn_type
![]()
![]()
scan_int
![]()
![]()
scan_win
![]()
![]()
p_select_cback
![]()
![]()
white_list_avail_size
![]()
![]()
update_wl_cb
![]()
![]()
wl_state
![]()
![]()
conn_pending_q
![]()
![]()
conn_state
![]()
![]()
addr_mgnt_cb
![]()
![]()
enabled
![]()
![]()
mixed_mode
![]()
![]()
privacy_mode
![]()
![]()
resolving_list_avail_size
![]()
![]()
resolving_list_pend_q
![]()
![]()
suspended_rl_state
![]()
![]()
irk_list_mask
![]()
![]()
rl_state
![]()
![]()
wl_op_q
![]()
![]()
cur_states
![]()
![]()
link_count
![]()
![]()
update_exceptional_list_cmp_cb
![]()
![]()
set_csa_support_cmpl_cb
![]()
![]()
btm_ble_timeout(TIMER_LIST_ENT *);
![]()
![]()
btm_ble_process_adv_pkt(UINT8 *);
![]()
![]()
btm_ble_process_adv_discard_evt(UINT8 *);
![]()
![]()
btm_ble_process_direct_adv_pkt(UINT8 *);
![]()
![]()
btm_ble_adv_pkt_ready();
![]()
![]()
btm_ble_adv_pkt_post(pkt_linked_item_t *);
![]()
![]()
btm_ble_proc_scan_rsp_rpt(UINT8 *);
![]()
![]()
btm_ble_read_remote_name(UINT8 *, tBTM_INQ_INFO *, tBTM_CMPL_CB *);
![]()
![]()
btm_ble_cancel_remote_name(UINT8 *);
![]()
![]()
btm_ble_set_discoverability(UINT16);
![]()
![]()
btm_ble_set_connectability(UINT16);
![]()
![]()
btm_ble_start_inquiry(UINT8, UINT8);
![]()
![]()
btm_ble_stop_scan();
![]()
![]()
btm_clear_all_pending_le_entry();
![]()
![]()
btm_ble_send_extended_scan_params(UINT8, UINT32, UINT32, UINT8, UINT8);
![]()
![]()
btm_ble_stop_inquiry();
![]()
![]()
btm_ble_init();
![]()
![]()
btm_ble_free();
![]()
![]()
btm_ble_connected(UINT8 *, UINT16, UINT8, UINT8, tBLE_ADDR_TYPE, BOOLEAN);
![]()
![]()
btm_ble_read_remote_features_complete(UINT8 *);
![]()
![]()
btm_ble_write_adv_enable_complete(UINT8 *);
![]()
![]()
btm_ble_conn_complete(UINT8 *, UINT16, BOOLEAN);
![]()
![]()
btm_read_ble_local_supported_states_complete(UINT8 *, UINT16);
![]()
![]()
btm_ble_get_conn_st();
![]()
![]()
btm_ble_set_conn_st(tBTM_BLE_CONN_ST);
![]()
![]()
btm_ble_build_adv_data(tBTM_BLE_AD_MASK *, UINT8 **, tBTM_BLE_ADV_DATA *);
![]()
![]()
btm_ble_start_adv();
![]()
![]()
btm_ble_stop_adv();
![]()
![]()
btm_ble_start_scan();
![]()
![]()
btm_ble_create_ll_conn_complete(UINT8);
![]()
![]()
btm_ble_create_conn_cancel_complete(UINT8 *);
![]()
![]()
btm_ble_set_random_addr(UINT8 *);
![]()
![]()
btm_ble_link_sec_check(UINT8 *, tBTM_LE_AUTH_REQ, tBTM_BLE_SEC_REQ_ACT *);
![]()
![]()
btm_ble_ltk_request_reply(UINT8 *, BOOLEAN, UINT8 *);
![]()
![]()
btm_proc_smp_cback(tSMP_EVT, UINT8 *, tSMP_EVT_DATA *);
![]()
![]()
btm_ble_set_encryption(UINT8 *, void *, UINT8);
![]()
![]()
btm_ble_ltk_request(UINT16, UINT8 *, UINT16);
![]()
![]()
btm_ble_start_encrypt(UINT8 *, BOOLEAN, UINT8 *);
![]()
![]()
btm_ble_link_encrypted(UINT8 *, UINT8);
![]()
![]()
btm_ble_reset_id();
![]()
![]()
btm_ble_increment_sign_ctr(UINT8 *, BOOLEAN);
![]()
![]()
btm_get_local_div(UINT8 *, UINT16 *);
![]()
![]()
btm_ble_get_enc_key_type(UINT8 *, UINT8 *);
![]()
![]()
btm_ble_test_command_complete(UINT8 *);
![]()
![]()
btm_ble_rand_enc_complete(UINT8 *, UINT16, tBTM_RAND_ENC_CB *);
![]()
![]()
btm_sec_save_le_key(UINT8 *, tBTM_LE_KEY_TYPE, tBTM_LE_KEY_VALUE *, BOOLEAN);
![]()
![]()
btm_ble_update_sec_key_size(UINT8 *, UINT8);
![]()
![]()
btm_ble_read_sec_key_size(UINT8 *);
![]()
![]()
btm_update_dev_to_white_list(BOOLEAN, UINT8 *, tBLE_ADDR_TYPE, tBTM_UPDATE_WHITELIST_CBACK *);
![]()
![]()
btm_update_scanner_filter_policy(tBTM_BLE_SFP);
![]()
![]()
btm_update_adv_filter_policy(tBTM_BLE_AFP);
![]()
![]()
btm_ble_clear_white_list(tBTM_UPDATE_WHITELIST_CBACK *);
![]()
![]()
btm_read_white_list_size_complete(UINT8 *, UINT16);
![]()
![]()
btm_ble_add_2_white_list_complete(UINT8);
![]()
![]()
btm_ble_remove_from_white_list_complete(UINT8 *, UINT16);
![]()
![]()
btm_ble_clear_white_list_complete(UINT8 *, UINT16);
![]()
![]()
btm_ble_white_list_init(UINT8);
![]()
![]()
btm_ble_suspend_bg_conn();
![]()
![]()
btm_ble_resume_bg_conn();
![]()
![]()
btm_ble_initiate_select_conn(UINT8 *);
![]()
![]()
btm_ble_start_auto_conn(BOOLEAN);
![]()
![]()
btm_ble_start_select_conn(BOOLEAN, tBTM_BLE_SEL_CBACK *);
![]()
![]()
btm_ble_renew_bg_conn_params(BOOLEAN, UINT8 *);
![]()
![]()
btm_write_dir_conn_wl(UINT8 *);
![]()
![]()
btm_ble_update_mode_operation(UINT8, UINT8 *, UINT8);
![]()
![]()
btm_execute_wl_dev_operation();
![]()
![]()
btm_ble_update_link_topology_mask(UINT8, BOOLEAN);
![]()
![]()
btm_send_pending_direct_conn();
![]()
![]()
btm_ble_enqueue_direct_conn_req(void *);
![]()
![]()
btm_gen_resolvable_private_addr(void *);
![]()
![]()
btm_gen_non_resolvable_private_addr(tBTM_BLE_ADDR_CBACK *, void *);
![]()
![]()
btm_ble_resolve_random_addr(UINT8 *, tBTM_BLE_RESOLVE_CBACK *, void *);
![]()
![]()
btm_gen_resolve_paddr_low(tBTM_RAND_ENC *);
![]()
![]()
btm_identity_addr_to_random_pseudo(UINT8 *, UINT8 *, BOOLEAN);
![]()
![]()
btm_random_pseudo_to_identity_addr(UINT8 *, UINT8 *);
![]()
![]()
btm_ble_refresh_peer_resolvable_private_addr(UINT8 *, UINT8 *, UINT8);
![]()
![]()
btm_ble_refresh_local_resolvable_private_addr(UINT8 *, UINT8 *);
![]()
![]()
btm_ble_read_resolving_list_entry_complete(UINT8 *, UINT16);
![]()
![]()
btm_ble_set_addr_resolution_enable_complete(UINT8 *, UINT16);
![]()
![]()
btm_ble_set_rpa_timeout_complete(UINT8 *, UINT16);
![]()
![]()
btm_ble_remove_resolving_list_entry_complete(UINT8 *, UINT16);
![]()
![]()
btm_ble_add_resolving_list_entry_complete(UINT8 *, UINT16);
![]()
![]()
btm_ble_clear_resolving_list_complete(UINT8 *, UINT16);
![]()
![]()
btm_read_ble_resolving_list_size_complete(UINT8 *, UINT16);
![]()
![]()
btm_ble_enable_resolving_list(UINT8);
![]()
![]()
btm_ble_disable_resolving_list(UINT8, BOOLEAN);
![]()
![]()
btm_ble_enable_resolving_list_for_platform(UINT8);
![]()
![]()
btm_ble_resolving_list_init(UINT8);
![]()
![]()
btm_ble_resolving_list_cleanup();
![]()
![]()
btm_ble_add_default_entry_to_resolving_list();
![]()
![]()
btm_ble_set_privacy_mode_complete(UINT8 *, UINT16);
![]()
![]()
btm_ble_multi_adv_configure_rpa(tBTM_BLE_MULTI_ADV_INST *);
![]()
![]()
btm_ble_multi_adv_init();
![]()
![]()
btm_ble_multi_adv_get_ref(UINT8);
![]()
![]()
btm_ble_multi_adv_cleanup();
![]()
![]()
btm_ble_multi_adv_reenable(UINT8);
![]()
![]()
btm_ble_multi_adv_enb_privacy(BOOLEAN);
![]()
![]()
btm_ble_map_adv_tx_power(int);
![]()
![]()
btm_ble_batchscan_init();
![]()
![]()
btm_ble_batchscan_cleanup();
![]()
![]()
btm_ble_adv_filter_init();
![]()
![]()
btm_ble_adv_filter_cleanup();
![]()
![]()
btm_ble_topology_check(tBTM_BLE_STATE_MASK);
![]()
![]()
btm_ble_clear_topology_mask(tBTM_BLE_STATE_MASK);
![]()
![]()
btm_ble_set_topology_mask(tBTM_BLE_STATE_MASK);
![]()
![]()
btm_ble_get_topology_mask();
![]()
![]()
btm_get_current_conn_params(UINT8 *, UINT16 *, UINT16 *, UINT16 *);