#ifndef BTA_API_H
#define BTA_API_H
-#include "data_types.h"
#include "bt_target.h"
#include "bt_types.h"
#include "btm_api.h"
#define BTA_NAP_SERVICE_ID 15 /* PAN Network access point */
#define BTA_GN_SERVICE_ID 16 /* PAN Group Ad-hoc networks */
#define BTA_SAP_SERVICE_ID 17 /* SIM Access profile */
-#define BTA_A2DP_SERVICE_ID 18 /* A2DP Sink */
+#define BTA_A2DP_SINK_SERVICE_ID 18 /* A2DP Sink */
#define BTA_AVRCP_SERVICE_ID 19 /* A/V remote control */
#define BTA_HID_SERVICE_ID 20 /* HID */
#define BTA_VDP_SERVICE_ID 21 /* Video distribution */
#define BTA_MN_SERVICE_ID 26 /* Message Notification Service */
#define BTA_HDP_SERVICE_ID 27 /* Health Device Profile */
#define BTA_PCE_SERVICE_ID 28 /* PhoneBook Access Client*/
-
+#define BTA_SDP_SERVICE_ID 29 /* SDP Search*/
#if BLE_INCLUDED == TRUE && BTA_GATT_INCLUDED == TRUE
/* BLE profile service ID */
-#define BTA_BLE_SERVICE_ID 29 /* GATT profile */
+#define BTA_BLE_SERVICE_ID 30 /* GATT profile */
// btla-specific ++
-#define BTA_USER_SERVICE_ID 30 /* User requested UUID */
+#define BTA_USER_SERVICE_ID 31 /* User requested UUID */
-#define BTA_MAX_SERVICE_ID 31
+#define BTA_MAX_SERVICE_ID 32
// btla-specific --
#else
-#define BTA_USER_SERVICE_ID 29 /* User requested UUID */
-#define BTA_MAX_SERVICE_ID 30
+#define BTA_USER_SERVICE_ID 30 /* User requested UUID */
+#define BTA_MAX_SERVICE_ID 31
#endif
/* service IDs (BTM_SEC_SERVICE_FIRST_EMPTY + 1) to (BTM_SEC_MAX_SERVICES - 1)
* are used by BTA JV */
#define BTA_SEC_AUTHORIZE (BTM_SEC_IN_AUTHORIZE ) /* Authorization required (only needed for out going connection )*/
#define BTA_SEC_AUTHENTICATE (BTM_SEC_IN_AUTHENTICATE | BTM_SEC_OUT_AUTHENTICATE) /* Authentication required. */
#define BTA_SEC_ENCRYPT (BTM_SEC_IN_ENCRYPT | BTM_SEC_OUT_ENCRYPT) /* Encryption required. */
+#define BTA_SEC_MODE4_LEVEL4 (BTM_SEC_MODE4_LEVEL4) /* Mode 4 level 4 service, i.e. incoming/outgoing MITM and P-256 encryption */
typedef UINT8 tBTA_SEC;
#define BTA_DM_CONN_PAIRED 1
/* Inquiry Modes */
-#define BTA_DM_INQUIRY_NONE BTM_INQUIRY_NONE /*No BR inquiry. */
+#define BTA_DM_INQUIRY_NONE BTM_INQUIRY_NONE /*No BR inquiry. */
#define BTA_DM_GENERAL_INQUIRY BTM_GENERAL_INQUIRY /* Perform general inquiry. */
#define BTA_DM_LIMITED_INQUIRY BTM_LIMITED_INQUIRY /* Perform limited inquiry. */
#define BTA_BLE_RSSI_ALERT_LO 2
typedef UINT8 tBTA_DM_BLE_RSSI_ALERT_TYPE;
-#define BTA_BLE_RSSI_ALERT_NONE BTM_BLE_RSSI_ALERT_NONE /* (0) */
-#define BTA_BLE_RSSI_ALERT_HI_BIT BTM_BLE_RSSI_ALERT_HI_BIT /* (1) */
-#define BTA_BLE_RSSI_ALERT_RANGE_BIT BTM_BLE_RSSI_ALERT_RANGE_BIT /* (1 << 1) */
-#define BTA_BLE_RSSI_ALERT_LO_BIT BTM_BLE_RSSI_ALERT_LO_BIT /* (1 << 2) */
+#define BTA_BLE_RSSI_ALERT_NONE BTM_BLE_RSSI_ALERT_NONE /* (0) */
+#define BTA_BLE_RSSI_ALERT_HI_BIT BTM_BLE_RSSI_ALERT_HI_BIT /* (1) */
+#define BTA_BLE_RSSI_ALERT_RANGE_BIT BTM_BLE_RSSI_ALERT_RANGE_BIT /* (1 << 1) */
+#define BTA_BLE_RSSI_ALERT_LO_BIT BTM_BLE_RSSI_ALERT_LO_BIT /* (1 << 2) */
typedef UINT8 tBTA_DM_BLE_RSSI_ALERT_MASK;
#define BTA_DM_BLE_MAX_UUID_FILTER BTM_BLE_MAX_UUID_FILTER /* 8 */
#define BTA_DM_BLE_MAX_ADDR_FILTER BTM_BLE_MAX_ADDR_FILTER /* 8 */
#define BTA_DM_BLE_PF_STR_COND_MAX BTM_BLE_PF_STR_COND_MAX /* 4 apply to manu data , or local name */
-#define BTA_DM_BLE_PF_STR_LEN_MAX BTM_BLE_PF_STR_LEN_MAX /* match for first 20 bytes */
+#define BTA_DM_BLE_PF_STR_LEN_MAX BTM_BLE_PF_STR_LEN_MAX /* match for first 20 bytes */
#define BTA_DM_BLE_PF_LOGIC_OR 0
#define BTA_DM_BLE_PF_LOGIC_AND 1
typedef UINT8 tBTA_DM_LINK_QUALITY_VALUE;
-/* signal strength mask */
-#define BTA_SIG_STRENGTH_RSSI_MASK 1
-#define BTA_SIG_STRENGTH_LINK_QUALITY_MASK 2
-
typedef UINT8 tBTA_SIG_STRENGTH_MASK;
#define BTA_DM_BLE_OOB_REQ_EVT 19 /* SMP OOB request event */
#define BTA_DM_BLE_LOCAL_IR_EVT 20 /* BLE local IR event */
#define BTA_DM_BLE_LOCAL_ER_EVT 21 /* BLE local ER event */
+#define BTA_DM_BLE_NC_REQ_EVT 22 /* SMP Numeric Comparison request event */
// btla-specific ++
-#define BTA_DM_BLE_AUTH_CMPL_EVT 22 /* BLE Auth complete */
+#define BTA_DM_SP_RMT_OOB_EXT_EVT 23 /* Simple Pairing Remote OOB Extended Data request. */
+#define BTA_DM_BLE_AUTH_CMPL_EVT 24 /* BLE Auth complete */
// btla-specific --
-#define BTA_DM_DEV_UNPAIRED_EVT 23
-#define BTA_DM_HW_ERROR_EVT 24 /* BT Chip H/W error */
-#define BTA_DM_LE_FEATURES_READ 25 /* Cotroller specific LE features are read */
-#define BTA_DM_ENER_INFO_READ 26 /* Energy info read */
+#define BTA_DM_DEV_UNPAIRED_EVT 25
+#define BTA_DM_HW_ERROR_EVT 26 /* BT Chip H/W error */
+#define BTA_DM_LE_FEATURES_READ 27 /* Cotroller specific LE features are read */
+#define BTA_DM_ENER_INFO_READ 28 /* Energy info read */
typedef UINT8 tBTA_DM_SEC_EVT;
/* Structure associated with BTA_DM_ENABLE_EVT */
typedef struct
{
- BD_ADDR bd_addr; /* BD address of local device. */
tBTA_STATUS status;
} tBTA_DM_ENABLE;
#define BTA_DM_AUTH_SMP_INVALID_CMD (BTA_DM_AUTH_FAIL_BASE + SMP_INVALID_CMD)
#define BTA_DM_AUTH_SMP_UNKNOWN_ERR (BTA_DM_AUTH_FAIL_BASE + SMP_PAIR_FAIL_UNKNOWN)
#define BTA_DM_AUTH_SMP_REPEATED_ATTEMPT (BTA_DM_AUTH_FAIL_BASE + SMP_REPEATED_ATTEMPTS)
+#define BTA_DM_AUTH_SMP_INVALID_PARAMETERS (BTA_DM_AUTH_FAIL_BASE + SMP_INVALID_PARAMETERS)
#define BTA_DM_AUTH_SMP_INTERNAL_ERR (BTA_DM_AUTH_FAIL_BASE + SMP_PAIR_INTERNAL_ERR)
#define BTA_DM_AUTH_SMP_UNKNOWN_IO (BTA_DM_AUTH_FAIL_BASE + SMP_UNKNOWN_IO_CAP)
#define BTA_DM_AUTH_SMP_INIT_FAIL (BTA_DM_AUTH_FAIL_BASE + SMP_INIT_FAIL)
tBTA_LE_PID_KEYS pid_key; /* peer device ID key */
tBTA_LE_LENC_KEYS lenc_key; /* local encryption reproduction keys LTK = = d1(ER,DIV,0)*/
tBTA_LE_LCSRK_KEYS lcsrk_key; /* local device CSRK = d1(ER,DIV,1)*/
+ tBTA_LE_PID_KEYS lid_key; /* local device ID key for the particular remote */
}tBTA_LE_KEY_VALUE;
#define BTA_BLE_LOCAL_KEY_TYPE_ID 1
{
BD_ADDR bd_addr; /* peer address */
tBTM_LE_KEY_TYPE key_type;
- tBTM_LE_KEY_VALUE key_value;
+ tBTM_LE_KEY_VALUE *p_key_value;
}tBTA_DM_BLE_KEY;
/* Structure associated with BTA_DM_AUTH_CMPL_EVT */
UINT8 key_type; /* The type of Link Key */
BOOLEAN success; /* TRUE of authentication succeeded, FALSE if failed. */
UINT8 fail_reason; /* The HCI reason/error code for when success=FALSE */
-
+#if BLE_INCLUDED == TRUE && SMP_INCLUDED == TRUE
+ tBLE_ADDR_TYPE addr_type; /* peer device address type */
+#endif
} tBTA_DM_AUTH_CMPL;
UINT8 new_role; /* the new connection role */
} tBTA_DM_ROLE_CHG;
-/* Structure associated with BTA_DM_SIG_STRENGTH_EVT */
-typedef struct
-{
- BD_ADDR bd_addr; /* BD address peer device. */
- tBTA_SIG_STRENGTH_MASK mask; /* mask for the values that are valid */
- tBTA_DM_RSSI_VALUE rssi_value;
- tBTA_DM_LINK_QUALITY_VALUE link_quality_value;
-
-} tBTA_DM_SIG_STRENGTH;
-
/* Structure associated with BTA_DM_BUSY_LEVEL_EVT */
typedef struct
{
UINT8 level_flags; /* indicates individual flags */
} tBTA_DM_BUSY_LEVEL;
-#define BTA_IO_CAP_OUT BTM_IO_CAP_OUT /* DisplayOnly */
-#define BTA_IO_CAP_IO BTM_IO_CAP_IO /* DisplayYesNo */
-#define BTA_IO_CAP_IN BTM_IO_CAP_IN /* KeyboardOnly */
-#define BTA_IO_CAP_NONE BTM_IO_CAP_NONE /* NoInputNoOutput */
+#define BTA_IO_CAP_OUT BTM_IO_CAP_OUT /* 0 DisplayOnly */
+#define BTA_IO_CAP_IO BTM_IO_CAP_IO /* 1 DisplayYesNo */
+#define BTA_IO_CAP_IN BTM_IO_CAP_IN /* 2 KeyboardOnly */
+#define BTA_IO_CAP_NONE BTM_IO_CAP_NONE /* 3 NoInputNoOutput */
+#if BLE_INCLUDED == TRUE && SMP_INCLUDED == TRUE
+#define BTA_IO_CAP_KBDISP BTM_IO_CAP_KBDISP /* 4 Keyboard display */
+#endif
typedef tBTM_IO_CAP tBTA_IO_CAP;
#define BTA_AUTH_SP_NO BTM_AUTH_SP_NO /* 0 MITM Protection Not Required - Single Profile/non-bonding
#define BTA_LE_AUTH_NO_BOND BTM_LE_AUTH_REQ_NO_BOND /* 0*/
#define BTA_LE_AUTH_BOND BTM_LE_AUTH_REQ_BOND /* 1 << 0 */
#define BTA_LE_AUTH_REQ_MITM BTM_LE_AUTH_REQ_MITM /* 1 << 2 */
+
+#define BTA_LE_AUTH_REQ_SC_ONLY BTM_LE_AUTH_REQ_SC_ONLY /* 1 << 3 */
+#define BTA_LE_AUTH_REQ_SC_BOND BTM_LE_AUTH_REQ_SC_BOND /* 1001 */
+#define BTA_LE_AUTH_REQ_SC_MITM BTM_LE_AUTH_REQ_SC_MITM /* 1100 */
+#define BTA_LE_AUTH_REQ_SC_MITM_BOND BTM_LE_AUTH_REQ_SC_MITM_BOND /* 1101 */
typedef tBTM_LE_AUTH_REQ tBTA_LE_AUTH_REQ; /* combination of the above bit pattern */
#define BTA_OOB_NONE BTM_OOB_NONE
tBTA_DM_AUTHORIZE authorize; /* Authorization request. */
tBTA_DM_LINK_UP link_up; /* ACL connection down event */
tBTA_DM_LINK_DOWN link_down; /* ACL connection down event */
- tBTA_DM_SIG_STRENGTH sig_strength; /* rssi and link quality value */
tBTA_DM_BUSY_LEVEL busy_level; /* System busy level */
tBTA_DM_SP_CFM_REQ cfm_req; /* user confirm request */
tBTA_DM_SP_KEY_NOTIF key_notif; /* passkey notification */
#define BTA_DM_BLE_PF_CONFIG_EVT BTM_BLE_PF_CONFIG
typedef UINT8 tBTA_DM_BLE_PF_EVT;
-typedef UINT8 tBTA_DM_BLE_PF_COND_TYPE;
-
-#define BTA_DM_BLE_PF_LOGIC_OR 0
-#define BTA_DM_BLE_PF_LOGIC_AND 1
-typedef UINT8 tBTA_DM_BLE_PF_LOGIC_TYPE;
-
#define BTA_DM_BLE_PF_ENABLE 1
#define BTA_DM_BLE_PF_CONFIG 2
typedef UINT8 tBTA_DM_BLE_PF_ACTION;
-typedef UINT8 tBTA_DM_BLE_PF_FILT_INDEX;
-
-typedef UINT8 tBTA_DM_BLE_PF_AVBL_SPACE;
-
/* Config callback */
typedef void (tBTA_DM_BLE_PF_CFG_CBACK) (tBTA_DM_BLE_PF_ACTION action,
tBTA_DM_BLE_PF_COND_TYPE cfg_cond,
typedef UINT8 tBTA_DM_BLE_PF_DELIVERY_MODE;
typedef UINT16 tBTA_DM_BLE_PF_TIMEOUT;
typedef UINT8 tBTA_DM_BLE_PF_TIMEOUT_CNT;
+typedef UINT16 tBTA_DM_BLE_PF_ADV_TRACK_ENTRIES;
typedef struct
{
tBTA_DM_BLE_PF_TIMEOUT found_timeout;
tBTA_DM_BLE_PF_TIMEOUT lost_timeout;
tBTA_DM_BLE_PF_TIMEOUT_CNT found_timeout_cnt;
+ tBTA_DM_BLE_PF_ADV_TRACK_ENTRIES num_of_tracking_entries;
} tBTA_DM_BLE_PF_FILT_PARAMS;
-/* Vendor Specific Command Callback */
-typedef tBTM_VSC_CMPL_CB tBTA_VENDOR_CMPL_CBACK;
-
/* Search callback events */
#define BTA_DM_INQ_RES_EVT 0 /* Inquiry result for a peer device. */
#define BTA_DM_INQ_CMPL_EVT 1 /* Inquiry complete. */
typedef UINT8 tBTA_DM_CONTRL_STATE;
+typedef UINT8 tBTA_DM_BLE_ADV_STATE;
+typedef UINT8 tBTA_DM_BLE_ADV_INFO_PRESENT;
+typedef UINT8 tBTA_DM_BLE_RSSI_VALUE;
+typedef UINT16 tBTA_DM_BLE_ADV_INFO_TIMESTAMP;
+
+typedef tBTM_BLE_TRACK_ADV_DATA tBTA_DM_BLE_TRACK_ADV_DATA;
typedef void (tBTA_BLE_SCAN_THRESHOLD_CBACK)(tBTA_DM_BLE_REF_VALUE ref_value);
tBTA_DM_BLE_PF_AVBL_SPACE avbl_space,
tBTA_DM_BLE_REF_VALUE ref_value);
-typedef void (tBTA_BLE_TRACK_ADV_CBACK)(int filt_index, tBLE_ADDR_TYPE addr_type, BD_ADDR bda,
- int adv_state, tBTA_DM_BLE_REF_VALUE ref_value);
+typedef void (tBTA_BLE_TRACK_ADV_CBACK)(tBTA_DM_BLE_TRACK_ADV_DATA *p_adv_data);
typedef void (tBTA_BLE_ENERGY_INFO_CBACK)(tBTA_DM_BLE_TX_TIME_MS tx_time,
tBTA_DM_BLE_RX_TIME_MS rx_time,
** BTA_FAIL if internal failure.
**
*******************************************************************************/
-BTA_API extern tBTA_STATUS BTA_EnableBluetooth(tBTA_DM_SEC_CBACK *p_cback);
+extern tBTA_STATUS BTA_EnableBluetooth(tBTA_DM_SEC_CBACK *p_cback);
/*******************************************************************************
**
** Returns void
**
*******************************************************************************/
-BTA_API extern tBTA_STATUS BTA_DisableBluetooth(void);
+extern tBTA_STATUS BTA_DisableBluetooth(void);
/*******************************************************************************
**
** Returns tBTA_STATUS
**
*******************************************************************************/
-BTA_API extern tBTA_STATUS BTA_EnableTestMode(void);
+extern tBTA_STATUS BTA_EnableTestMode(void);
/*******************************************************************************
**
** Returns None
**
*******************************************************************************/
-BTA_API extern void BTA_DisableTestMode(void);
-
-/*******************************************************************************
-**
-** Function BTA_DmIsDeviceUp
-**
-** Description This function tests whether the Bluetooth module is up
-** and ready. This is a direct execution function that
-** may lock task scheduling on some platforms.
-**
-**
-** Returns TRUE if the module is ready.
-** FALSE if the module is not ready.
-**
-*******************************************************************************/
-BTA_API extern BOOLEAN BTA_DmIsDeviceUp(void);
+extern void BTA_DisableTestMode(void);
/*******************************************************************************
**
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmSetDeviceName(char *p_name);
+extern void BTA_DmSetDeviceName(char *p_name);
/*******************************************************************************
**
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmSetVisibility(tBTA_DM_DISC disc_mode, tBTA_DM_CONN conn_mode, UINT8 pairable_mode, UINT8 conn_filter);
-
-/*******************************************************************************
-**
-** Function BTA_DmSetScanParam
-**
-** Description This function sets the parameters for page scan and
-** inquiry scan.
-**
-**
-** Returns void
-**
-*******************************************************************************/
-BTA_API extern void BTA_DmSetScanParam (UINT16 page_scan_interval, UINT16 page_scan_window,
- UINT16 inquiry_scan_interval, UINT16 inquiry_scan_window);
-
-/*******************************************************************************
-**
-** Function BTA_DmSetAfhChannels
-**
-** Description This function sets the AFH first and
-** last disable channel, so channels within
-** that range are disabled.
-** In order to use this API, BTM_BYPASS_AMP_AUTO_AFH must be set
-** to be TRUE
-**
-** Returns void
-**
-*******************************************************************************/
-BTA_API extern void BTA_DmSetAfhChannels(UINT8 first, UINT8 last);
-
-
-/*******************************************************************************
-**
-** Function BTA_DmVendorSpecificCommand
-**
-** Description This function sends the vendor specific command
-** to the controller
-**
-**
-** Returns tBTA_STATUS
-**
-*******************************************************************************/
-BTA_API extern tBTA_STATUS BTA_DmVendorSpecificCommand (UINT16 opcode, UINT8 param_len,UINT8 *p_param_buf, tBTA_VENDOR_CMPL_CBACK *p_cback);
-
+extern void BTA_DmSetVisibility(tBTA_DM_DISC disc_mode, tBTA_DM_CONN conn_mode, UINT8 pairable_mode, UINT8 conn_filter);
/*******************************************************************************
**
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmSearch(tBTA_DM_INQ *p_dm_inq, tBTA_SERVICE_MASK services,
- tBTA_DM_SEARCH_CBACK *p_cback);
+extern void BTA_DmSearch(tBTA_DM_INQ *p_dm_inq, tBTA_SERVICE_MASK services,
+ tBTA_DM_SEARCH_CBACK *p_cback);
/*******************************************************************************
**
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmSearchCancel(void);
+extern void BTA_DmSearchCancel(void);
/*******************************************************************************
**
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmDiscover(BD_ADDR bd_addr, tBTA_SERVICE_MASK services,
- tBTA_DM_SEARCH_CBACK *p_cback, BOOLEAN sdp_search);
+extern void BTA_DmDiscover(BD_ADDR bd_addr, tBTA_SERVICE_MASK services,
+ tBTA_DM_SEARCH_CBACK *p_cback, BOOLEAN sdp_search);
// btla-specific ++
/*******************************************************************************
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmDiscoverUUID(BD_ADDR bd_addr, tSDP_UUID *uuid,
- tBTA_DM_SEARCH_CBACK *p_cback, BOOLEAN sdp_search);
+extern void BTA_DmDiscoverUUID(BD_ADDR bd_addr, tSDP_UUID *uuid,
+ tBTA_DM_SEARCH_CBACK *p_cback, BOOLEAN sdp_search);
/*******************************************************************************
**
/*******************************************************************************
**
-** Function BTA_DmIsMaster
-**
-** Description This function checks if the local device is the master of
-** the link to the given device
-**
-** Returns TRUE if master.
-** FALSE if not.
-**
-*******************************************************************************/
-BTA_API extern BOOLEAN BTA_DmIsMaster(BD_ADDR bd_addr);
-
-/*******************************************************************************
-**
** Function BTA_DmBond
**
** Description This function initiates a bonding procedure with a peer
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmBond(BD_ADDR bd_addr);
+extern void BTA_DmBond(BD_ADDR bd_addr);
/*******************************************************************************
**
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmBondByTransport(BD_ADDR bd_addr, tBTA_TRANSPORT transport);
+extern void BTA_DmBondByTransport(BD_ADDR bd_addr, tBTA_TRANSPORT transport);
/*******************************************************************************
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmBondCancel(BD_ADDR bd_addr);
+extern void BTA_DmBondCancel(BD_ADDR bd_addr);
/*******************************************************************************
**
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmPinReply(BD_ADDR bd_addr, BOOLEAN accept, UINT8 pin_len,
- UINT8 *p_pin);
-
-/*******************************************************************************
-**
-** Function BTA_DmLinkPolicy
-**
-** Description This function sets/clears the link policy mask to the given
-** bd_addr.
-** If clearing the sniff or park mode mask, the link is put
-** in active mode.
-**
-** Returns void
-**
-*******************************************************************************/
-BTA_API extern void BTA_DmLinkPolicy(BD_ADDR bd_addr, tBTA_DM_LP_MASK policy_mask,
- BOOLEAN set);
+extern void BTA_DmPinReply(BD_ADDR bd_addr, BOOLEAN accept, UINT8 pin_len,
+ UINT8 *p_pin);
#if (BTM_OOB_INCLUDED == TRUE)
/*******************************************************************************
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmLocalOob(void);
+extern void BTA_DmLocalOob(void);
#endif /* BTM_OOB_INCLUDED */
/*******************************************************************************
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmConfirm(BD_ADDR bd_addr, BOOLEAN accept);
-
-/*******************************************************************************
-**
-** Function BTA_DmPasskeyCancel
-**
-** Description This function is called to cancel the simple pairing process
-** reported by BTA_DM_SP_KEY_NOTIF_EVT
-**
-** Returns void
-**
-*******************************************************************************/
-BTA_API extern void BTA_DmPasskeyCancel(BD_ADDR bd_addr);
+extern void BTA_DmConfirm(BD_ADDR bd_addr, BOOLEAN accept);
/*******************************************************************************
**
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmAddDevice(BD_ADDR bd_addr, DEV_CLASS dev_class,
- LINK_KEY link_key, tBTA_SERVICE_MASK trusted_mask,
- BOOLEAN is_trusted, UINT8 key_type,
- tBTA_IO_CAP io_cap);
-
-/*******************************************************************************
-**
-** Function BTA_DmAddDevWithName
-**
-** Description This function is newer version of BTA_DmAddDevice()
-** which added bd_name and features as input parameters.
-**
-**
-** Returns void
-**
-** Note: features points to the remote device features array.
-** The array size is
-** BTA_FEATURE_BYTES_PER_PAGE * (BTA_EXT_FEATURES_PAGE_MAX + 1)
-**
-*******************************************************************************/
-BTA_API extern void BTA_DmAddDevWithName (BD_ADDR bd_addr, DEV_CLASS dev_class,
- BD_NAME bd_name, UINT8 *features,
- LINK_KEY link_key, tBTA_SERVICE_MASK trusted_mask,
- BOOLEAN is_trusted, UINT8 key_type, tBTA_IO_CAP io_cap);
+extern void BTA_DmAddDevice(BD_ADDR bd_addr, DEV_CLASS dev_class,
+ LINK_KEY link_key, tBTA_SERVICE_MASK trusted_mask,
+ BOOLEAN is_trusted, UINT8 key_type,
+ tBTA_IO_CAP io_cap);
/*******************************************************************************
**
** BTA_FAIL if operation failed.
**
*******************************************************************************/
-BTA_API extern tBTA_STATUS BTA_DmRemoveDevice(BD_ADDR bd_addr);
-
-/*******************************************************************************
-**
-** Function BTA_DmAuthorizeReply
-**
-** Description This function provides an authorization reply when
-** authorization is requested by BTA. The application calls
-** this function after the security callback is called with
-** a BTA_DM_AUTHORIZE_EVT.
-**
-**
-** Returns void
-**
-*******************************************************************************/
-BTA_API extern void BTA_DmAuthorizeReply(BD_ADDR bd_addr, tBTA_SERVICE_ID service,
- tBTA_AUTH_RESP response);
-
-/*******************************************************************************
-**
-** Function BTA_DmSignalStrength
-**
-** Description This function initiates RSSI and channnel quality
-** measurments. BTA_DM_SIG_STRENGTH_EVT is sent to
-** application with the values of RSSI and channel
-** quality
-**
-**
-** Returns void
-**
-*******************************************************************************/
-BTA_API extern void BTA_DmSignalStrength(tBTA_SIG_STRENGTH_MASK mask, UINT16 period, BOOLEAN start);
-
-/*******************************************************************************
-**
-** Function BTA_DmWriteInqTxPower
-**
-** Description This command is used to write the inquiry transmit power level
-** used to transmit the inquiry (ID) data packets.
-**
-** Parameters tx_power - tx inquiry power to use, valid value is -70 ~ 20
-
-** Returns void
-**
-*******************************************************************************/
-BTA_API extern void BTA_DmWriteInqTxPower(INT8 tx_power);
-
-/*******************************************************************************
-**
-** Function BTA_DmEirAddUUID
-**
-** Description This function is called to add UUID into EIR.
-**
-** Parameters tBT_UUID - UUID
-**
-** Returns None
-**
-*******************************************************************************/
-BTA_API extern void BTA_DmEirAddUUID (tBT_UUID *p_uuid);
-
-/*******************************************************************************
-**
-** Function BTA_DmEirRemoveUUID
-**
-** Description This function is called to remove UUID from EIR.
-**
-** Parameters tBT_UUID - UUID
-**
-** Returns None
-**
-*******************************************************************************/
-BTA_API extern void BTA_DmEirRemoveUUID (tBT_UUID *p_uuid);
-
-/*******************************************************************************
-**
-** Function BTA_DmSetEIRConfig
-**
-** Description This function is called to override the BTA default EIR parameters.
-** This funciton is only valid in a system where BTU & App task
-** are in the same memory space.
-**
-** Parameters Pointer to User defined EIR config
-**
-** Returns None
-**
-*******************************************************************************/
-BTA_API extern void BTA_DmSetEIRConfig (tBTA_DM_EIR_CONF *p_eir_cfg);
-
-/*******************************************************************************
-**
-** Function BTA_CheckEirData
-**
-** Description This function is called to get EIR data from significant part.
-**
-** Parameters p_eir - pointer of EIR significant part
-** type - finding EIR data type
-** p_length - return the length of EIR data
-**
-** Returns pointer of EIR data
-**
-*******************************************************************************/
-BTA_API extern UINT8 *BTA_CheckEirData( UINT8 *p_eir, UINT8 tag, UINT8 *p_length );
+extern tBTA_STATUS BTA_DmRemoveDevice(BD_ADDR bd_addr);
/*******************************************************************************
**
** Returns None
**
*******************************************************************************/
-BTA_API extern void BTA_GetEirService( UINT8 *p_eir, tBTA_SERVICE_MASK *p_services );
-
-/*******************************************************************************
-**
-** Function BTA_DmUseSsr
-**
-** Description This function is called to check if the connected peer device
-** supports SSR or not.
-**
-** Returns TRUE, if SSR is supported
-**
-*******************************************************************************/
-BTA_API extern BOOLEAN BTA_DmUseSsr( BD_ADDR bd_addr );
+extern void BTA_GetEirService( UINT8 *p_eir, tBTA_SERVICE_MASK *p_services );
/*******************************************************************************
**
** Returns 0 if the device is NOT connected.
**
*******************************************************************************/
-BTA_API extern UINT16 BTA_DmGetConnectionState( BD_ADDR bd_addr );
+extern UINT16 BTA_DmGetConnectionState( BD_ADDR bd_addr );
/*******************************************************************************
** Returns BTA_SUCCESS if record set sucessfully, otherwise error code.
**
*******************************************************************************/
-BTA_API extern tBTA_STATUS BTA_DmSetLocalDiRecord( tBTA_DI_RECORD *p_device_info,
- UINT32 *p_handle );
-
-/*******************************************************************************
-**
-** Function BTA_DmGetLocalDiRecord
-**
-** Description Get a specified DI record to the local SDP database. If no
-** record handle is provided, the primary DI record will be
-** returned.
-**
-** Returns BTA_SUCCESS if record set sucessfully, otherwise error code.
-**
-*******************************************************************************/
-BTA_API extern tBTA_STATUS BTA_DmGetLocalDiRecord( tBTA_DI_GET_RECORD *p_device_info,
- UINT32 *p_handle );
-
-/*******************************************************************************
-**
-** Function BTA_DmDiDiscover
-**
-** Description This function queries a remote device for DI information.
-**
-** Returns None.
-**
-*******************************************************************************/
-BTA_API extern void BTA_DmDiDiscover( BD_ADDR remote_device, tBTA_DISCOVERY_DB *p_db,
- UINT32 len, tBTA_DM_SEARCH_CBACK *p_cback );
-
-/*******************************************************************************
-**
-** Function BTA_DmGetDiRecord
-**
-** Description This function retrieves a remote device's DI record from
-** the specified database.
-**
-** Returns None.
-**
-*******************************************************************************/
-BTA_API extern tBTA_STATUS BTA_DmGetDiRecord( UINT8 get_record_index, tBTA_DI_GET_RECORD *p_device_info,
- tBTA_DISCOVERY_DB *p_db );
+extern tBTA_STATUS BTA_DmSetLocalDiRecord( tBTA_DI_RECORD *p_device_info,
+ UINT32 *p_handle );
/*******************************************************************************
**
** Returns void.
**
*******************************************************************************/
-BTA_API extern void BTA_DmCloseACL(BD_ADDR bd_addr, BOOLEAN remove_dev, tBTA_TRANSPORT transport);
-
-/*******************************************************************************
-**
-** Function BTA_SysFeatures
-**
-** Description This function is called to set system features.
-**
-** Returns void
-**
-*******************************************************************************/
-BTA_API extern void BTA_SysFeatures (UINT16 sys_features);
+extern void BTA_DmCloseACL(BD_ADDR bd_addr, BOOLEAN remove_dev, tBTA_TRANSPORT transport);
/*******************************************************************************
**
** Returns void
**
*******************************************************************************/
-BTA_API extern void bta_dmexecutecallback (tBTA_DM_EXEC_CBACK* p_callback, void * p_param);
+extern void bta_dmexecutecallback (tBTA_DM_EXEC_CBACK* p_callback, void * p_param);
#if (BTM_SCO_HCI_INCLUDED == TRUE)
/*******************************************************************************
** Returns none
**
*******************************************************************************/
-BTA_API extern void BTA_DmPcmInitSamples (UINT32 src_sps, UINT32 bits, UINT32 n_channels);
+extern void BTA_DmPcmInitSamples (UINT32 src_sps, UINT32 bits, UINT32 n_channels);
/**************************************************************************************
** Function BTA_DmPcmResample
** Returns INT32: number of samples converted.
**
**************************************************************************************/
-BTA_API extern INT32 BTA_DmPcmResample (void *p_src, UINT32 in_bytes, void *p_dst);
+extern INT32 BTA_DmPcmResample (void *p_src, UINT32 in_bytes, void *p_dst);
#endif
#if ((defined BLE_INCLUDED) && (BLE_INCLUDED == TRUE))
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmBleSecurityGrant(BD_ADDR bd_addr, tBTA_DM_BLE_SEC_GRANT res);
+extern void BTA_DmBleSecurityGrant(BD_ADDR bd_addr, tBTA_DM_BLE_SEC_GRANT res);
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmBleSetBgConnType(tBTA_DM_BLE_CONN_TYPE bg_conn_type, tBTA_DM_BLE_SEL_CBACK *p_select_cback);
+extern void BTA_DmBleSetBgConnType(tBTA_DM_BLE_CONN_TYPE bg_conn_type, tBTA_DM_BLE_SEL_CBACK *p_select_cback);
/*******************************************************************************
**
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmBlePasskeyReply(BD_ADDR bd_addr, BOOLEAN accept, UINT32 passkey);
+extern void BTA_DmBlePasskeyReply(BD_ADDR bd_addr, BOOLEAN accept, UINT32 passkey);
+
+/*******************************************************************************
+**
+** Function BTA_DmBleConfirmReply
+**
+** Description Send BLE SMP SC user confirmation reply.
+**
+** Parameters: bd_addr - BD address of the peer
+** accept - numbers to compare are the same or different.
+**
+** Returns void
+**
+*******************************************************************************/
+extern void BTA_DmBleConfirmReply(BD_ADDR bd_addr, BOOLEAN accept);
/*******************************************************************************
**
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmAddBleDevice(BD_ADDR bd_addr, tBLE_ADDR_TYPE addr_type,
- tBT_DEVICE_TYPE dev_type);
+extern void BTA_DmAddBleDevice(BD_ADDR bd_addr, tBLE_ADDR_TYPE addr_type,
+ tBT_DEVICE_TYPE dev_type);
/*******************************************************************************
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmAddBleKey (BD_ADDR bd_addr,
- tBTA_LE_KEY_VALUE *p_le_key,
- tBTA_LE_KEY_TYPE key_type);
+extern void BTA_DmAddBleKey (BD_ADDR bd_addr,
+ tBTA_LE_KEY_VALUE *p_le_key,
+ tBTA_LE_KEY_TYPE key_type);
/*******************************************************************************
**
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmSetBlePrefConnParams(BD_ADDR bd_addr,
- UINT16 min_conn_int, UINT16 max_conn_int,
- UINT16 slave_latency, UINT16 supervision_tout );
+extern void BTA_DmSetBlePrefConnParams(BD_ADDR bd_addr,
+ UINT16 min_conn_int, UINT16 max_conn_int,
+ UINT16 slave_latency, UINT16 supervision_tout );
/*******************************************************************************
**
** Description This function is called to set scan parameters used in
** BLE connection request
**
-** Parameters: bd_addr - BD address of the peripheral
-** scan_interval - scan interval
+** Parameters: scan_interval - scan interval
** scan_window - scan window
**
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmSetBleConnScanParams(UINT16 scan_interval,
- UINT16 scan_window );
+extern void BTA_DmSetBleConnScanParams(UINT16 scan_interval,
+ UINT16 scan_window );
/*******************************************************************************
**
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmSetBleAdvParams (UINT16 adv_int_min, UINT16 adv_int_max,
- tBLE_BD_ADDR *p_dir_bda);
+extern void BTA_DmSetBleAdvParams (UINT16 adv_int_min, UINT16 adv_int_max,
+ tBLE_BD_ADDR *p_dir_bda);
/*******************************************************************************
**
** Function BTA_DmSearchExt
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmSearchExt(tBTA_DM_INQ *p_dm_inq, tBTA_SERVICE_MASK_EXT *p_services,
- tBTA_DM_SEARCH_CBACK *p_cback);
+extern void BTA_DmSearchExt(tBTA_DM_INQ *p_dm_inq, tBTA_SERVICE_MASK_EXT *p_services,
+ tBTA_DM_SEARCH_CBACK *p_cback);
/*******************************************************************************
**
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmDiscoverExt(BD_ADDR bd_addr, tBTA_SERVICE_MASK_EXT *p_services,
- tBTA_DM_SEARCH_CBACK *p_cback, BOOLEAN sdp_search);
+extern void BTA_DmDiscoverExt(BD_ADDR bd_addr, tBTA_SERVICE_MASK_EXT *p_services,
+ tBTA_DM_SEARCH_CBACK *p_cback, BOOLEAN sdp_search);
/*******************************************************************************
**
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmDiscoverByTransport(BD_ADDR bd_addr, tBTA_SERVICE_MASK_EXT *p_services,
- tBTA_DM_SEARCH_CBACK *p_cback, BOOLEAN sdp_search,
- tBTA_TRANSPORT transport);
+extern void BTA_DmDiscoverByTransport(BD_ADDR bd_addr, tBTA_SERVICE_MASK_EXT *p_services,
+ tBTA_DM_SEARCH_CBACK *p_cback, BOOLEAN sdp_search,
+ tBTA_TRANSPORT transport);
/*******************************************************************************
**
**
**
*******************************************************************************/
-BTA_API extern void BTA_DmSetEncryption(BD_ADDR bd_addr, tBTA_TRANSPORT transport,
- tBTA_DM_ENCRYPT_CBACK *p_callback,
- tBTA_DM_BLE_SEC_ACT sec_act);
+extern void BTA_DmSetEncryption(BD_ADDR bd_addr, tBTA_TRANSPORT transport,
+ tBTA_DM_ENCRYPT_CBACK *p_callback,
+ tBTA_DM_BLE_SEC_ACT sec_act);
/*******************************************************************************
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmBleObserve(BOOLEAN start, UINT8 duration,
- tBTA_DM_SEARCH_CBACK *p_results_cb);
+extern void BTA_DmBleObserve(BOOLEAN start, UINT8 duration,
+ tBTA_DM_SEARCH_CBACK *p_results_cb);
#endif
-// btla-specific ++
-/*******************************************************************************
-**
-** Function BTA_DmSetAfhChannelAssessment
-**
-** Description This function is called to set the channel assessment mode on or off
-**
-** Returns status
-**
-*******************************************************************************/
-BTA_API extern void BTA_DmSetAfhChannelAssessment (BOOLEAN enable_or_disable);
-
#if BLE_INCLUDED == TRUE
// btla-specific --
/*******************************************************************************
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmBleConfigLocalPrivacy(BOOLEAN privacy_enable);
+extern void BTA_DmBleConfigLocalPrivacy(BOOLEAN privacy_enable);
/*******************************************************************************
**
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmBleEnableRemotePrivacy(BD_ADDR bd_addr, BOOLEAN privacy_enable);
+extern void BTA_DmBleEnableRemotePrivacy(BD_ADDR bd_addr, BOOLEAN privacy_enable);
/*******************************************************************************
** Returns None
**
*******************************************************************************/
-BTA_API extern void BTA_DmBleSetAdvConfig (tBTA_BLE_AD_MASK data_mask,
- tBTA_BLE_ADV_DATA *p_adv_cfg,
- tBTA_SET_ADV_DATA_CMPL_CBACK *p_adv_data_cback);
+extern void BTA_DmBleSetAdvConfig (tBTA_BLE_AD_MASK data_mask,
+ tBTA_BLE_ADV_DATA *p_adv_cfg,
+ tBTA_SET_ADV_DATA_CMPL_CBACK *p_adv_data_cback);
/*******************************************************************************
**
** Returns None
**
*******************************************************************************/
-BTA_API extern void BTA_DmBleSetScanRsp (tBTA_BLE_AD_MASK data_mask,
- tBTA_BLE_ADV_DATA *p_adv_cfg,
- tBTA_SET_ADV_DATA_CMPL_CBACK *p_adv_data_cback);
+extern void BTA_DmBleSetScanRsp (tBTA_BLE_AD_MASK data_mask,
+ tBTA_BLE_ADV_DATA *p_adv_cfg,
+ tBTA_SET_ADV_DATA_CMPL_CBACK *p_adv_data_cback);
/*******************************************************************************
**
** Returns None
**
*******************************************************************************/
-BTA_API extern void BTA_DmBleBroadcast (BOOLEAN start);
+extern void BTA_DmBleBroadcast (BOOLEAN start);
/*******************************************************************************
** Returns None
**
*******************************************************************************/
-BTA_API extern void BTA_BleEnableAdvInstance (tBTA_BLE_ADV_PARAMS *p_params,
+extern void BTA_BleEnableAdvInstance (tBTA_BLE_ADV_PARAMS *p_params,
tBTA_BLE_MULTI_ADV_CBACK *p_cback,void *p_ref);
/*******************************************************************************
** Returns None
**
*******************************************************************************/
-BTA_API extern void BTA_BleUpdateAdvInstParam (UINT8 inst_id,
+extern void BTA_BleUpdateAdvInstParam (UINT8 inst_id,
tBTA_BLE_ADV_PARAMS *p_params);
/*******************************************************************************
** Returns None
**
*******************************************************************************/
-BTA_API extern void BTA_BleCfgAdvInstData (UINT8 inst_id, BOOLEAN is_scan_rsp,
+extern void BTA_BleCfgAdvInstData (UINT8 inst_id, BOOLEAN is_scan_rsp,
tBTA_BLE_AD_MASK data_mask, tBTA_BLE_ADV_DATA *p_data);
/*******************************************************************************
** Returns None
**
*******************************************************************************/
-BTA_API extern void BTA_BleDisableAdvInstance(UINT8 inst_id);
+extern void BTA_BleDisableAdvInstance(UINT8 inst_id);
/*******************************************************************************
**
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmBleUpdateConnectionParams(BD_ADDR bd_addr, UINT16 min_int,
+extern void BTA_DmBleUpdateConnectionParams(BD_ADDR bd_addr, UINT16 min_int,
UINT16 max_int, UINT16 latency, UINT16 timeout);
/*******************************************************************************
** Returns None
**
*******************************************************************************/
-BTA_API extern void BTA_DmBleSetStorageParams(UINT8 batch_scan_full_max,
+extern void BTA_DmBleSetStorageParams(UINT8 batch_scan_full_max,
UINT8 batch_scan_trunc_max,
UINT8 batch_scan_notify_threshold,
tBTA_BLE_SCAN_SETUP_CBACK *p_setup_cback,
** Returns None
**
*******************************************************************************/
-BTA_API extern void BTA_DmBleEnableBatchScan(tBTA_BLE_SCAN_MODE scan_mode,
+extern void BTA_DmBleEnableBatchScan(tBTA_BLE_SCAN_MODE scan_mode,
UINT32 scan_interval, UINT32 scan_window,
tBTA_BLE_DISCARD_RULE discard_rule,
tBLE_ADDR_TYPE addr_type,
** Returns None
**
*******************************************************************************/
-BTA_API extern void BTA_DmBleReadScanReports(tBTA_BLE_SCAN_MODE scan_type,
+extern void BTA_DmBleReadScanReports(tBTA_BLE_SCAN_MODE scan_type,
tBTA_DM_BLE_REF_VALUE ref_value);
/*******************************************************************************
** Returns None
**
*******************************************************************************/
-BTA_API extern void BTA_DmBleDisableBatchScan(tBTA_DM_BLE_REF_VALUE ref_value);
+extern void BTA_DmBleDisableBatchScan(tBTA_DM_BLE_REF_VALUE ref_value);
/*******************************************************************************
**
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmEnableScanFilter(UINT8 action,
+extern void BTA_DmEnableScanFilter(UINT8 action,
tBTA_DM_BLE_PF_STATUS_CBACK *p_cmpl_cback,
tBTA_DM_BLE_REF_VALUE ref_value);
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmBleScanFilterSetup(UINT8 action,
+extern void BTA_DmBleScanFilterSetup(UINT8 action,
tBTA_DM_BLE_PF_FILT_INDEX filt_index,
tBTA_DM_BLE_PF_FILT_PARAMS *p_filt_params,
tBLE_BD_ADDR *p_target,
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmBleCfgFilterCondition(tBTA_DM_BLE_SCAN_COND_OP action,
+extern void BTA_DmBleCfgFilterCondition(tBTA_DM_BLE_SCAN_COND_OP action,
tBTA_DM_BLE_PF_COND_TYPE cond_type,
tBTA_DM_BLE_PF_FILT_INDEX filt_index,
tBTA_DM_BLE_PF_COND_PARAM *p_cond,
** Returns None
**
*******************************************************************************/
-BTA_API extern void BTA_DmBleTrackAdvertiser(tBTA_DM_BLE_REF_VALUE ref_value,
+extern void BTA_DmBleTrackAdvertiser(tBTA_DM_BLE_REF_VALUE ref_value,
tBTA_BLE_TRACK_ADV_CBACK *p_track_adv_cback);
/*******************************************************************************
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_DmBleGetEnergyInfo(tBTA_BLE_ENERGY_INFO_CBACK *p_cmpl_cback);
+extern void BTA_DmBleGetEnergyInfo(tBTA_BLE_ENERGY_INFO_CBACK *p_cmpl_cback);
/*******************************************************************************
**
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_VendorInit (void);
+extern void BTA_VendorInit (void);
/*******************************************************************************
**
** Returns void
**
*******************************************************************************/
-BTA_API extern void BTA_VendorCleanup (void);
+extern void BTA_VendorCleanup (void);
#endif
#endif
#endif /* BTA_API_H */
-