bta_dm_int.h revision e5ba8841cd39e17c05aeb4ab65b5b761d41577da
15738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 25738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 35738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * Copyright (C) 2003-2012 Broadcom Corporation 45738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 55738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License"); 65738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * you may not use this file except in compliance with the License. 75738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * You may obtain a copy of the License at: 85738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 95738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * http://www.apache.org/licenses/LICENSE-2.0 105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * Unless required by applicable law or agreed to in writing, software 125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS, 135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * See the License for the specific language governing permissions and 155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * limitations under the License. 165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project ******************************************************************************/ 185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/****************************************************************************** 205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * This is the private interface file for the BTA device manager. 225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * 235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project ******************************************************************************/ 245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_DM_INT_H 255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_DM_INT_H 265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#include "bt_target.h" 285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if (BLE_INCLUDED == TRUE && (defined BTA_GATT_INCLUDED) && (BTA_GATT_INCLUDED == TRUE)) 305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project #include "bta_gatt_api.h" 315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/***************************************************************************** 365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Constants and data types 375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*****************************************************************************/ 385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_COPY_DEVICE_CLASS(coddst, codsrc) {((UINT8 *)(coddst))[0] = ((UINT8 *)(codsrc))[0]; \ 415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project ((UINT8 *)(coddst))[1] = ((UINT8 *)(codsrc))[1]; \ 425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project ((UINT8 *)(coddst))[2] = ((UINT8 *)(codsrc))[2];} 435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_DM_MSG_LEN 50 465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_SERVICE_ID_TO_SERVICE_MASK(id) (1 << (id)) 485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* DM events */ 505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectenum 515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project /* device manager local device API events */ 535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_ENABLE_EVT = BTA_SYS_EVT_START(BTA_ID_DM), 545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_DISABLE_EVT, 555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_SET_NAME_EVT, 565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_SET_VISIBILITY_EVT, 575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_SET_AFH_CHANNELS_EVT, 585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_API_DM_SIG_STRENGTH_EVT, 595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_VENDOR_SPECIFIC_COMMAND_EVT, 605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_TX_INQPWR_EVT, 615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_ACL_CHANGE_EVT, 625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_ADD_DEVICE_EVT, 63ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta BTA_DM_API_REMOVE_ACL_EVT, 645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project /* security API events */ 665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_BOND_EVT, 675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_BOND_CANCEL_EVT, 685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_PIN_REPLY_EVT, 695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_LINK_POLICY_EVT, 705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_AUTH_REPLY_EVT, 715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project /* power manger events */ 735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_PM_BTM_STATUS_EVT, 745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_PM_TIMER_EVT, 755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project /* simple pairing events */ 775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_CONFIRM_EVT, 785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_SET_ENCRYPTION_EVT, 805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 81ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta 825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if (BTM_LOCAL_IO_CAPS != BTM_IO_CAP_NONE) 835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_PASKY_CANCEL_EVT, 845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if (BTM_OOB_INCLUDED == TRUE) 865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_LOC_OOB_EVT, 875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_CI_IO_REQ_EVT, 885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_CI_RMT_OOB_EVT, 895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif /* BTM_OOB_INCLUDED */ 905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_REMOVE_DEVICE_EVT, 925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if BLE_INCLUDED == TRUE 945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_ADD_BLEKEY_EVT, 955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_ADD_BLEDEVICE_EVT, 965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_BLE_PASSKEY_REPLY_EVT, 975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_BLE_SEC_GRANT_EVT, 985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_BLE_SET_BG_CONN_TYPE, 995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_BLE_CONN_PARAM_EVT, 1005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_BLE_SCAN_PARAM_EVT, 101ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta BTA_DM_API_BLE_OBSERVE_EVT, 1027fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta BTA_DM_API_UPDATE_CONN_PARAM_EVT, 103a6ce7751d84218c193eb90d390aef23217b1737eWei Wang 104a6ce7751d84218c193eb90d390aef23217b1737eWei Wang#if BLE_PRIVACY_SPT == TRUE 105a6ce7751d84218c193eb90d390aef23217b1737eWei Wang BTA_DM_API_LOCAL_PRIVACY_EVT, 106a6ce7751d84218c193eb90d390aef23217b1737eWei Wang#endif 107a6ce7751d84218c193eb90d390aef23217b1737eWei Wang 1085c44e45473e5fc2fa89411ab1add7dbfc979f1f8Andre Eisenbach BTA_DM_API_BLE_ADV_PARAM_EVT, 1095c44e45473e5fc2fa89411ab1add7dbfc979f1f8Andre Eisenbach BTA_DM_API_BLE_SET_ADV_CONFIG_EVT, 110eeeac99328c23304ab24698331b6600f3b545700Andre Eisenbach BTA_DM_API_BLE_SET_SCAN_RSP_EVT, 111eeeac99328c23304ab24698331b6600f3b545700Andre Eisenbach BTA_DM_API_BLE_BROADCAST_EVT, 112b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach 113b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach#if BLE_ANDROID_CONTROLLER_SCAN_FILTER == TRUE 114b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach BTA_DM_API_CFG_FILTER_COND_EVT, 1151a9247a1229aa65b3d1dce16426177bc5828e54dSatya Calloji BTA_DM_API_SCAN_FILTER_SETUP_EVT, 1161a9247a1229aa65b3d1dce16426177bc5828e54dSatya Calloji BTA_DM_API_SCAN_FILTER_ENABLE_EVT, 117b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach#endif 118a6ce7751d84218c193eb90d390aef23217b1737eWei Wang BTA_DM_API_BLE_MULTI_ADV_ENB_EVT, 119a6ce7751d84218c193eb90d390aef23217b1737eWei Wang BTA_DM_API_BLE_MULTI_ADV_PARAM_UPD_EVT, 120a6ce7751d84218c193eb90d390aef23217b1737eWei Wang BTA_DM_API_BLE_MULTI_ADV_DATA_EVT, 121a6ce7751d84218c193eb90d390aef23217b1737eWei Wang BTA_DM_API_BLE_MULTI_ADV_DISABLE_EVT, 122c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji BTA_DM_API_BLE_SETUP_STORAGE_EVT, 123c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji BTA_DM_API_BLE_ENABLE_BATCH_SCAN_EVT, 124c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji BTA_DM_API_BLE_DISABLE_BATCH_SCAN_EVT, 125c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji BTA_DM_API_BLE_READ_SCAN_REPORTS_EVT, 126c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji BTA_DM_API_BLE_TRACK_ADVERTISER_EVT, 127e5ba8841cd39e17c05aeb4ab65b5b761d41577daSatya Calloji BTA_DM_API_BLE_ENERGY_INFO_EVT, 1285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if ( BTM_EIR_SERVER_INCLUDED == TRUE )&&( BTA_EIR_CANNED_UUID_LIST != TRUE )&&(BTA_EIR_SERVER_NUM_CUSTOM_UUID > 0) 1315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_UPDATE_EIR_UUID_EVT, 1325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if (BTM_EIR_SERVER_INCLUDED == TRUE) 1345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_SET_EIR_CONFIG_EVT, 1355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 1365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_ENABLE_TEST_MODE_EVT, 1385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_DISABLE_TEST_MODE_EVT, 1395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_EXECUTE_CBACK_EVT, 1405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_SET_AFH_CHANNEL_ASSESMENT_EVT, 1415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_MAX_EVT 1425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project}; 1435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* DM search events */ 1465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectenum 1475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 1485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project /* DM search API events */ 1495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_SEARCH_EVT = BTA_SYS_EVT_START(BTA_ID_DM_SEARCH), 1505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_SEARCH_CANCEL_EVT, 1515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_API_DISCOVER_EVT, 1525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_INQUIRY_CMPL_EVT, 1535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_REMT_NAME_EVT, 1545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_SDP_RESULT_EVT, 1555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_SEARCH_CMPL_EVT, 1565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_DISCOVERY_RESULT_EVT, 1576975b4d711142b885af479721cada448952c6b41Andre Eisenbach BTA_DM_API_DI_DISCOVER_EVT, 1586975b4d711142b885af479721cada448952c6b41Andre Eisenbach BTA_DM_DISC_CLOSE_TOUT_EVT 1595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project}; 1605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_DM_API_ENABLE_EVT */ 1625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 1635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 1645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 1655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_SEC_CBACK *p_sec_cback; 1665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_API_ENABLE; 1675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_DM_API_SET_NAME_EVT */ 1695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 1705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 1715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 172ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta BD_NAME name; /* max 248 bytes name, plus must be Null terminated */ 1735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_API_SET_NAME; 1745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_DM_API_SET_VISIBILITY_EVT */ 1765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 1775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 1785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 1795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_DISC disc_mode; 1805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_CONN conn_mode; 1815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 pair_mode; 1825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 conn_paired_only; 1835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_API_SET_VISIBILITY; 1845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_DM_API_SET_AFH_CHANNELS_EVT */ 1865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 1875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 1885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 1895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 first; 1905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 last; 1915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_API_SET_AFH_CHANNELS_EVT; 1925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_DM_API_VENDOR_SPECIFIC_COMMAND_EVT */ 1945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 1955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 1965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 1975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 opcode; 1985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 param_len; 1995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 *p_param_buf; 2005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_VENDOR_CMPL_CBACK *p_cback; 2015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_API_VENDOR_SPECIFIC_COMMAND; 2035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectenum 2055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 2065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_RS_NONE, /* straight API call */ 2075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_RS_OK, /* the role switch result - successful */ 2085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_RS_FAIL /* the role switch result - failed */ 2095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project}; 2105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef UINT8 tBTA_DM_RS_RES; 2115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_DM_API_SEARCH_EVT */ 2135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 2145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 2155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 2165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_INQ inq_params; 2175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_SERVICE_MASK services; 2185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_SEARCH_CBACK * p_cback; 2195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_RS_RES rs_res; 2205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if BLE_INCLUDED == TRUE && BTA_GATT_INCLUDED == TRUE 2215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 num_uuid; 2225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBT_UUID *p_uuid; 2235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 2245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_API_SEARCH; 2255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_DM_API_DISCOVER_EVT */ 2275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 2285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 2295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 2305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR bd_addr; 2315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_SERVICE_MASK services; 2325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_SEARCH_CBACK * p_cback; 2335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN sdp_search; 2347fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta tBTA_TRANSPORT transport; 2355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if BLE_INCLUDED == TRUE && BTA_GATT_INCLUDED == TRUE 2365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 num_uuid; 2375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBT_UUID *p_uuid; 2385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 2395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tSDP_UUID uuid; 2405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_API_DISCOVER; 2415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_DM_API_DI_DISC_EVT */ 2435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 2445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 2455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 2465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR bd_addr; 2475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DISCOVERY_DB *p_sdp_db; 2485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT32 len; 2495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_SEARCH_CBACK * p_cback; 2505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project}tBTA_DM_API_DI_DISC; 2515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_DM_API_BOND_EVT */ 2535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 2545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 2555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 2565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR bd_addr; 2577fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta tBTA_TRANSPORT transport; 2585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_API_BOND; 2595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_DM_API_BOND_CANCEL_EVT */ 2615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 2625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 2635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 2645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR bd_addr; 2657fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta tBTA_TRANSPORT transport; 2665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_API_BOND_CANCEL; 2675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_DM_API_PIN_REPLY_EVT */ 2695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 2705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 2715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 2725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR bd_addr; 2735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN accept; 2745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 pin_len; 2755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 p_pin[PIN_CODE_LEN]; 2765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_API_PIN_REPLY; 2775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_DM_API_LINK_POLICY_EVT */ 2795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 2805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 2815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 2825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR bd_addr; 2835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 policy_mask; 2845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN set; 2855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_API_LINK_POLICY; 2865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_DM_API_AUTH_REPLY_EVT */ 2885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 2895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 2905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 2915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR bd_addr; 2925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_SERVICE_ID service; 2935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_AUTH_RESP response; 2945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_API_AUTH_REPLY; 2955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 2965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_DM_API_LOC_OOB_EVT */ 2975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 2985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 2995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 3005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_API_LOC_OOB; 3015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_DM_API_CONFIRM_EVT */ 3035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 3045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 3055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 3065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR bd_addr; 3075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN accept; 3085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_API_CONFIRM; 3095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_DM_API_PASKY_CANCEL_EVT*/ 3115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 3125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 3135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 3145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR bd_addr; 3155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_API_PASKY_CANCEL; 3165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_DM_CI_IO_REQ_EVT */ 3185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 3195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 3205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 3215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR bd_addr; 3225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_IO_CAP io_cap; 3235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_OOB_DATA oob_data; 3245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_AUTH_REQ auth_req; 3255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_CI_IO_REQ; 3265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_DM_CI_RMT_OOB_EVT */ 3285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 3295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 3305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 3315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR bd_addr; 3325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_OCTET16 c; 3335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_OCTET16 r; 3345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN accept; 3355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_CI_RMT_OOB; 3365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_DM_REMT_NAME_EVT */ 3385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 3395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 3405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 3415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_SEARCH result; 3425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_REM_NAME; 3435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for tBTA_DM_DISC_RESULT */ 3455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 3465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 3475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 3485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_SEARCH result; 3495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_DISC_RESULT; 3505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_DM_INQUIRY_CMPL_EVT */ 3535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 3545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 3555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 3565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 num; 3575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_INQUIRY_CMPL; 3585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_DM_SDP_RESULT_EVT */ 3605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 3615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 3625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 3635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 sdp_result; 3645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_SDP_RESULT; 3655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_API_DM_SIG_STRENGTH_EVT */ 3675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 3685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 3695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 3705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_SIG_STRENGTH_MASK mask; 3715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 period; 3725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN start; 3735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_API_DM_SIG_STRENGTH; 3745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for tBTA_API_DM_TX_INQPWR */ 3765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 3775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 3785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 3795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project INT8 tx_power; 3805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project}tBTA_API_DM_TX_INQPWR; 3815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_DM_ACL_CHANGE_EVT */ 3835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 3845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 3855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 3865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTM_BL_EVENT event; 3875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 busy_level; 388ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta UINT8 busy_level_flags; 3895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN is_new; 3905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 new_role; 3915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR bd_addr; 3925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 hci_status; 3937fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta#if BLE_INCLUDED == TRUE 3947fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta UINT16 handle; 3957fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta tBT_TRANSPORT transport; 3967fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta#endif 3975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_ACL_CHANGE; 3985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 3995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_DM_PM_BTM_STATUS_EVT */ 4005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 4015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 4025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 4045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR bd_addr; 4055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTM_PM_STATUS status; 4065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 value; 4075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 hci_status; 4085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_PM_BTM_STATUS; 4105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_DM_PM_TIMER_EVT */ 4125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 4135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 4145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 4155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR bd_addr; 4165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_PM_TIMER; 4185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_DM_API_ADD_DEVICE_EVT */ 4215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 4225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 4235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 4245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR bd_addr; 4255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project DEV_CLASS dc; 4265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project LINK_KEY link_key; 4275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_SERVICE_MASK tm; 4285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN is_trusted; 4295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 key_type; 4305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_IO_CAP io_cap; 4315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN link_key_known; 4325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN dc_known; 4335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_NAME bd_name; 4343aa60544585b5fb0f35c1165539a4a859fc0f25cAndre Eisenbach UINT8 features[BTA_FEATURE_BYTES_PER_PAGE * (BTA_EXT_FEATURES_PAGE_MAX + 1)]; 4355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_API_ADD_DEVICE; 4365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_DM_API_REMOVE_ACL_EVT */ 4385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 4395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 4405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 4415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR bd_addr; 4425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_API_REMOVE_DEVICE; 4435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_DM_API_EXECUTE_CBACK_EVT */ 4455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 4465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 4475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 4485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project void * p_param; 4495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_EXEC_CBACK *p_exec_cback; 4505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_API_EXECUTE_CBACK; 4515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for tBTA_DM_API_SET_ENCRYPTION */ 4535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 4545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 4555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 4567fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta tBTA_TRANSPORT transport; 4575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_ENCRYPT_CBACK *p_callback; 4585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_BLE_SEC_ACT sec_act; 4595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR bd_addr; 4605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_API_SET_ENCRYPTION; 4615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if BLE_INCLUDED == TRUE 4635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 4645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 4655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 4665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR bd_addr; 4675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_LE_KEY_VALUE blekey; 4685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_LE_KEY_TYPE key_type; 4695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project}tBTA_DM_API_ADD_BLEKEY; 4715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 4735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 4745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 4755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR bd_addr; 4765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBT_DEVICE_TYPE dev_type ; 4775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBLE_ADDR_TYPE addr_type; 4785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project}tBTA_DM_API_ADD_BLE_DEVICE; 4805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 4825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 4835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 4845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR bd_addr; 4855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN accept; 4865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT32 passkey; 4875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project}tBTA_DM_API_PASSKEY_REPLY; 4885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 4905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 4915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 4925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR bd_addr; 4935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_BLE_SEC_GRANT res; 4945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project}tBTA_DM_API_BLE_SEC_GRANT; 4955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 4975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 4985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 4995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 5005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_BLE_CONN_TYPE bg_conn_type; 5015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_BLE_SEL_CBACK *p_select_cback; 5025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project}tBTA_DM_API_BLE_SET_BG_CONN_TYPE; 5035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* set prefered BLE connection parameters for a device */ 5055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 5065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 5075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 5085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR peer_bda; 5095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 conn_int_min; 5105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 conn_int_max; 5115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 supervision_tout; 5125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 slave_latency; 5135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 5145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project}tBTA_DM_API_BLE_CONN_PARAMS; 5155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 516ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Battatypedef struct 517ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta{ 518ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta BT_HDR hdr; 519ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta BD_ADDR peer_bda; 520ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta BOOLEAN privacy_enable; 521ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta 522ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta}tBTA_DM_API_ENABLE_PRIVACY; 523ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta 524ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Battatypedef struct 525ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta{ 526ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta BT_HDR hdr; 527ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta BOOLEAN privacy_enable; 528ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta}tBTA_DM_API_LOCAL_PRIVACY; 529ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta 5305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* set scan parameter for BLE connections */ 5315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 5325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 5335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 5345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 scan_int; 5355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 scan_window; 5365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project}tBTA_DM_API_BLE_SCAN_PARAMS; 5375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 538ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta/* Data type for start/stop observe */ 539ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Battatypedef struct 540ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta{ 541ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta BT_HDR hdr; 542ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta BOOLEAN start; 543ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta UINT16 duration; 544ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta tBTA_DM_SEARCH_CBACK * p_cback; 545ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta}tBTA_DM_API_BLE_OBSERVE; 5465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 547ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta/* set adv parameter for BLE advertising */ 548ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Battatypedef struct 549ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta{ 550ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta BT_HDR hdr; 551ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta UINT16 adv_int_min; 552ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta UINT16 adv_int_max; 553ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta tBLE_BD_ADDR *p_dir_bda; 554ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta}tBTA_DM_API_BLE_ADV_PARAMS; 555ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta 556ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Battatypedef struct 557ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta{ 558ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta BT_HDR hdr; 559a6ce7751d84218c193eb90d390aef23217b1737eWei Wang BOOLEAN enable; 560a6ce7751d84218c193eb90d390aef23217b1737eWei Wang 561a6ce7751d84218c193eb90d390aef23217b1737eWei Wang}tBTA_DM_API_BLE_FEATURE; 562a6ce7751d84218c193eb90d390aef23217b1737eWei Wang 563a6ce7751d84218c193eb90d390aef23217b1737eWei Wang/* multi adv data structure */ 564a6ce7751d84218c193eb90d390aef23217b1737eWei Wangtypedef struct 565a6ce7751d84218c193eb90d390aef23217b1737eWei Wang{ 566a6ce7751d84218c193eb90d390aef23217b1737eWei Wang BT_HDR hdr; 567a6ce7751d84218c193eb90d390aef23217b1737eWei Wang void *p_cback; 568a6ce7751d84218c193eb90d390aef23217b1737eWei Wang void *p_ref; 569a6ce7751d84218c193eb90d390aef23217b1737eWei Wang tBTA_BLE_ADV_PARAMS *p_params; 570a6ce7751d84218c193eb90d390aef23217b1737eWei Wang}tBTA_DM_API_BLE_MULTI_ADV_ENB; 571a6ce7751d84218c193eb90d390aef23217b1737eWei Wang 572a6ce7751d84218c193eb90d390aef23217b1737eWei Wangtypedef struct 573a6ce7751d84218c193eb90d390aef23217b1737eWei Wang{ 574a6ce7751d84218c193eb90d390aef23217b1737eWei Wang BT_HDR hdr; 575a6ce7751d84218c193eb90d390aef23217b1737eWei Wang UINT8 inst_id; 576a6ce7751d84218c193eb90d390aef23217b1737eWei Wang tBTA_BLE_ADV_PARAMS *p_params; 577a6ce7751d84218c193eb90d390aef23217b1737eWei Wang}tBTA_DM_API_BLE_MULTI_ADV_PARAM; 578a6ce7751d84218c193eb90d390aef23217b1737eWei Wang 579a6ce7751d84218c193eb90d390aef23217b1737eWei Wangtypedef struct 580a6ce7751d84218c193eb90d390aef23217b1737eWei Wang{ 581a6ce7751d84218c193eb90d390aef23217b1737eWei Wang BT_HDR hdr; 582a6ce7751d84218c193eb90d390aef23217b1737eWei Wang UINT8 inst_id; 583a6ce7751d84218c193eb90d390aef23217b1737eWei Wang BOOLEAN is_scan_rsp; 584a6ce7751d84218c193eb90d390aef23217b1737eWei Wang tBTA_BLE_AD_MASK data_mask; 585a6ce7751d84218c193eb90d390aef23217b1737eWei Wang tBTA_BLE_ADV_DATA *p_data; 586a6ce7751d84218c193eb90d390aef23217b1737eWei Wang}tBTA_DM_API_BLE_MULTI_ADV_DATA; 587a6ce7751d84218c193eb90d390aef23217b1737eWei Wang 588a6ce7751d84218c193eb90d390aef23217b1737eWei Wangtypedef struct 589a6ce7751d84218c193eb90d390aef23217b1737eWei Wang{ 590a6ce7751d84218c193eb90d390aef23217b1737eWei Wang BT_HDR hdr; 591a6ce7751d84218c193eb90d390aef23217b1737eWei Wang UINT8 inst_id; 592a6ce7751d84218c193eb90d390aef23217b1737eWei Wang}tBTA_DM_API_BLE_MULTI_ADV_DISABLE; 593a6ce7751d84218c193eb90d390aef23217b1737eWei Wang 594a6ce7751d84218c193eb90d390aef23217b1737eWei Wangtypedef struct 595a6ce7751d84218c193eb90d390aef23217b1737eWei Wang{ 596a6ce7751d84218c193eb90d390aef23217b1737eWei Wang BT_HDR hdr; 597ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta UINT16 data_mask; 598ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta tBTA_BLE_ADV_DATA *p_adv_cfg; 599a6ce7751d84218c193eb90d390aef23217b1737eWei Wang tBTA_SET_ADV_DATA_CMPL_CBACK *p_adv_data_cback; 600ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta}tBTA_DM_API_SET_ADV_CONFIG; 601ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta 602c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Callojitypedef struct 603c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji{ 604c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji BT_HDR hdr; 605c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji UINT8 batch_scan_full_max; 606c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji UINT8 batch_scan_trunc_max; 607c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji UINT8 batch_scan_notify_threshold; 608c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji tBTA_BLE_SCAN_SETUP_CBACK *p_setup_cback; 609c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji tBTA_BLE_SCAN_THRESHOLD_CBACK *p_thres_cback; 610c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji tBTA_BLE_SCAN_REP_CBACK *p_read_rep_cback; 611c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji tBTA_DM_BLE_REF_VALUE ref_value; 612c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji} tBTA_DM_API_SET_STORAGE_CONFIG; 613c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji 614c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Callojitypedef struct 615c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji{ 616c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji BT_HDR hdr; 617c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji tBTA_BLE_SCAN_MODE scan_mode; 618c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji UINT32 scan_int; 619c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji UINT32 scan_window; 620c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji tBTA_BLE_DISCARD_RULE discard_rule; 621c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji tBLE_ADDR_TYPE addr_type; 622c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji tBTA_DM_BLE_REF_VALUE ref_value; 623c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji} tBTA_DM_API_ENABLE_SCAN; 624c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji 625c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Callojitypedef struct 626c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji{ 627c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji BT_HDR hdr; 628c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji tBTA_DM_BLE_REF_VALUE ref_value; 629c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji} tBTA_DM_API_DISABLE_SCAN; 630c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji 631c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Callojitypedef struct 632c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji{ 633c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji BT_HDR hdr; 634c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji tBTA_BLE_SCAN_MODE scan_type; 635c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji tBTA_DM_BLE_REF_VALUE ref_value; 636c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji} tBTA_DM_API_READ_SCAN_REPORTS; 637c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji 638c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Callojitypedef struct 639c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji{ 640c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji BT_HDR hdr; 6411acb61ce065053f91a0f8d43e8328c9eeec4b5edSatya Calloji tBTA_DM_BLE_REF_VALUE ref_value; 6421acb61ce065053f91a0f8d43e8328c9eeec4b5edSatya Calloji tBTA_BLE_TRACK_ADV_CBACK *p_track_adv_cback; 643c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji} tBTA_DM_API_TRACK_ADVERTISER; 644c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji 645e5ba8841cd39e17c05aeb4ab65b5b761d41577daSatya Callojitypedef struct 646e5ba8841cd39e17c05aeb4ab65b5b761d41577daSatya Calloji{ 647e5ba8841cd39e17c05aeb4ab65b5b761d41577daSatya Calloji BT_HDR hdr; 648e5ba8841cd39e17c05aeb4ab65b5b761d41577daSatya Calloji tBTA_BLE_ENERGY_INFO_CBACK *p_energy_info_cback; 649e5ba8841cd39e17c05aeb4ab65b5b761d41577daSatya Calloji} tBTA_DM_API_ENERGY_INFO; 650e5ba8841cd39e17c05aeb4ab65b5b761d41577daSatya Calloji 651a6ce7751d84218c193eb90d390aef23217b1737eWei Wang#endif /* BLE_INCLUDED */ 652ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta 653fc4b2f1953dbe60464d0f5ef7daaa10001fbc62fMatthew Xietypedef struct 654fc4b2f1953dbe60464d0f5ef7daaa10001fbc62fMatthew Xie{ 655fc4b2f1953dbe60464d0f5ef7daaa10001fbc62fMatthew Xie BT_HDR hdr; 656fc4b2f1953dbe60464d0f5ef7daaa10001fbc62fMatthew Xie BOOLEAN enable_or_disable; 657fc4b2f1953dbe60464d0f5ef7daaa10001fbc62fMatthew Xie}tBTA_DM_API_SET_AFH_CHANNEL_ASSESSMENT; 658fc4b2f1953dbe60464d0f5ef7daaa10001fbc62fMatthew Xie 6595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if ( BTM_EIR_SERVER_INCLUDED == TRUE )&&( BTA_EIR_CANNED_UUID_LIST != TRUE )&&(BTA_EIR_SERVER_NUM_CUSTOM_UUID > 0) 6605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_DM_API_UPDATE_EIR_UUID_EVT */ 6615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 6625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 6635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 6645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN is_add; 6655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBT_UUID uuid; 6665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project}tBTA_DM_API_UPDATE_EIR_UUID; 6675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 6695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if (BTM_EIR_SERVER_INCLUDED == TRUE) 6705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* data type for BTA_DM_API_SET_EIR_CONFIG_EVT */ 6715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 6725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 6735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 6745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_EIR_CONF *p_eir_cfg; 6755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project}tBTA_DM_API_SET_EIR_CONFIG; 6765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 6775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 678ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta/* data type for BTA_DM_API_REMOVE_ACL_EVT */ 679ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Battatypedef struct 680ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta{ 681ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta BT_HDR hdr; 682ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta BD_ADDR bd_addr; 683ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta BOOLEAN remove_dev; 6847fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta tBTA_TRANSPORT transport; 6857fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta 686ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta}tBTA_DM_API_REMOVE_ACL; 6877fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Battatypedef struct 6887fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta{ 6897fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta BT_HDR hdr; 6907fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta BD_ADDR bd_addr; 6917fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta UINT16 min_int; 6927fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta UINT16 max_int; 6937fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta UINT16 latency; 6947fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta UINT16 timeout; 6957fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta}tBTA_DM_API_UPDATE_CONN_PARAM; 696ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta 697b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach#if BLE_ANDROID_CONTROLLER_SCAN_FILTER == TRUE 698b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbachtypedef struct 699b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach{ 700b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach BT_HDR hdr; 701b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach tBTA_DM_BLE_SCAN_COND_OP action; 702b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach tBTA_DM_BLE_PF_COND_TYPE cond_type; 7031a9247a1229aa65b3d1dce16426177bc5828e54dSatya Calloji tBTA_DM_BLE_PF_FILT_INDEX filt_index; 704b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach tBTA_DM_BLE_PF_COND_PARAM *p_cond_param; 7051a9247a1229aa65b3d1dce16426177bc5828e54dSatya Calloji tBTA_DM_BLE_PF_CFG_CBACK *p_filt_cfg_cback; 7061a9247a1229aa65b3d1dce16426177bc5828e54dSatya Calloji tBTA_DM_BLE_REF_VALUE ref_value; 707b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach}tBTA_DM_API_CFG_FILTER_COND; 708b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach 709b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbachtypedef struct 710b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach{ 711b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach BT_HDR hdr; 7121a9247a1229aa65b3d1dce16426177bc5828e54dSatya Calloji UINT8 action; 7131a9247a1229aa65b3d1dce16426177bc5828e54dSatya Calloji tBTA_DM_BLE_PF_STATUS_CBACK *p_filt_status_cback; 7141a9247a1229aa65b3d1dce16426177bc5828e54dSatya Calloji tBTA_DM_BLE_REF_VALUE ref_value; 715b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach}tBTA_DM_API_ENABLE_SCAN_FILTER; 7161a9247a1229aa65b3d1dce16426177bc5828e54dSatya Calloji 7171a9247a1229aa65b3d1dce16426177bc5828e54dSatya Callojitypedef struct 7181a9247a1229aa65b3d1dce16426177bc5828e54dSatya Calloji{ 7191a9247a1229aa65b3d1dce16426177bc5828e54dSatya Calloji BT_HDR hdr; 7201a9247a1229aa65b3d1dce16426177bc5828e54dSatya Calloji UINT8 action; 7211a9247a1229aa65b3d1dce16426177bc5828e54dSatya Calloji tBTA_DM_BLE_PF_FILT_INDEX filt_index; 7221a9247a1229aa65b3d1dce16426177bc5828e54dSatya Calloji tBTA_DM_BLE_PF_FILT_PARAMS *p_filt_params; 7231a9247a1229aa65b3d1dce16426177bc5828e54dSatya Calloji tBLE_BD_ADDR *p_target; 7241a9247a1229aa65b3d1dce16426177bc5828e54dSatya Calloji tBTA_DM_BLE_PF_PARAM_CBACK *p_filt_param_cback; 7251a9247a1229aa65b3d1dce16426177bc5828e54dSatya Calloji tBTA_DM_BLE_REF_VALUE ref_value; 7261a9247a1229aa65b3d1dce16426177bc5828e54dSatya Calloji}tBTA_DM_API_SCAN_FILTER_PARAM_SETUP; 727b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach#endif 728b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach 7295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* union of all data types */ 7305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef union 7315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 7325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project /* GKI event buffer header */ 7335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BT_HDR hdr; 7345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_ENABLE enable; 7355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_SET_NAME set_name; 7375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_SET_VISIBILITY set_visibility; 7395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_SET_AFH_CHANNELS_EVT set_afhchannels; 7415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_VENDOR_SPECIFIC_COMMAND vendor_command; 7435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_ADD_DEVICE add_dev; 7455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_REMOVE_DEVICE remove_dev; 7475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_SEARCH search; 7495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_DISCOVER discover; 7515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_BOND bond; 7535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_BOND_CANCEL bond_cancel; 7555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_PIN_REPLY pin_reply; 7575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_LINK_POLICY link_policy; 7585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_LOC_OOB loc_oob; 7605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_CONFIRM confirm; 7615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_PASKY_CANCEL passkey_cancel; 7625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_CI_IO_REQ ci_io_req; 7635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_CI_RMT_OOB ci_rmt_oob; 7645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_AUTH_REPLY auth_reply; 7665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_REM_NAME rem_name; 7685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_DISC_RESULT disc_result; 7705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_INQUIRY_CMPL inq_cmpl; 7725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_SDP_RESULT sdp_event; 7745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_API_DM_SIG_STRENGTH sig_strength; 7765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_API_DM_TX_INQPWR tx_inq_pwr; 7785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_ACL_CHANGE acl_change; 7805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_PM_BTM_STATUS pm_status; 7825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_PM_TIMER pm_timer; 7845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_DI_DISC di_disc; 7865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_EXECUTE_CBACK exec_cback; 7885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_SET_ENCRYPTION set_encryption; 7905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 7915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if BLE_INCLUDED == TRUE 7925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_ADD_BLEKEY add_ble_key; 7935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_ADD_BLE_DEVICE add_ble_device; 7945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_PASSKEY_REPLY ble_passkey_reply; 7955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_BLE_SEC_GRANT ble_sec_grant; 7965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_BLE_SET_BG_CONN_TYPE ble_set_bd_conn_type; 7975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_BLE_CONN_PARAMS ble_set_conn_params; 7985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_BLE_SCAN_PARAMS ble_set_scan_params; 799ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta tBTA_DM_API_BLE_OBSERVE ble_observe; 800ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta tBTA_DM_API_ENABLE_PRIVACY ble_remote_privacy; 801ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta tBTA_DM_API_LOCAL_PRIVACY ble_local_privacy; 802ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta tBTA_DM_API_BLE_ADV_PARAMS ble_set_adv_params; 803ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta tBTA_DM_API_SET_ADV_CONFIG ble_set_adv_data; 804b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach#if BLE_ANDROID_CONTROLLER_SCAN_FILTER == TRUE 8051a9247a1229aa65b3d1dce16426177bc5828e54dSatya Calloji tBTA_DM_API_SCAN_FILTER_PARAM_SETUP ble_scan_filt_param_setup; 806b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach tBTA_DM_API_CFG_FILTER_COND ble_cfg_filter_cond; 8071a9247a1229aa65b3d1dce16426177bc5828e54dSatya Calloji tBTA_DM_API_ENABLE_SCAN_FILTER ble_enable_scan_filt; 808b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach#endif 8097fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta tBTA_DM_API_UPDATE_CONN_PARAM ble_update_conn_params; 810a6ce7751d84218c193eb90d390aef23217b1737eWei Wang tBTA_DM_API_BLE_MULTI_ADV_ENB ble_multi_adv_enb; 811a6ce7751d84218c193eb90d390aef23217b1737eWei Wang tBTA_DM_API_BLE_MULTI_ADV_PARAM ble_multi_adv_param; 812a6ce7751d84218c193eb90d390aef23217b1737eWei Wang tBTA_DM_API_BLE_MULTI_ADV_DATA ble_multi_adv_data; 813a6ce7751d84218c193eb90d390aef23217b1737eWei Wang tBTA_DM_API_BLE_MULTI_ADV_DISABLE ble_multi_adv_disable; 814c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji 815c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji tBTA_DM_API_SET_STORAGE_CONFIG ble_set_storage; 816c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji tBTA_DM_API_ENABLE_SCAN ble_enable_scan; 817c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji tBTA_DM_API_READ_SCAN_REPORTS ble_read_reports; 818c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji tBTA_DM_API_DISABLE_SCAN ble_disable_scan; 819c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji tBTA_DM_API_TRACK_ADVERTISER ble_track_advert; 820e5ba8841cd39e17c05aeb4ab65b5b761d41577daSatya Calloji tBTA_DM_API_ENERGY_INFO ble_energy_info; 8215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 8225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_SET_AFH_CHANNEL_ASSESSMENT set_afh_channel_assessment; 8245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if ( BTM_EIR_SERVER_INCLUDED == TRUE )&&( BTA_EIR_CANNED_UUID_LIST != TRUE )&&(BTA_EIR_SERVER_NUM_CUSTOM_UUID > 0) 8265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_UPDATE_EIR_UUID update_eir_uuid; 8275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 8285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if (BTM_EIR_SERVER_INCLUDED == TRUE) 8295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_SET_EIR_CONFIG set_eir_cfg; 8305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 831ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta tBTA_DM_API_REMOVE_ACL remove_acl; 8325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_MSG; 8345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_DM_NUM_PEER_DEVICE 7 8375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_DM_NOT_CONNECTED 0 8395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_DM_CONNECTED 1 8405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_DM_UNPAIRING 2 8415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef UINT8 tBTA_DM_CONN_STATE; 8425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_DM_DI_NONE 0x00 /* nothing special */ 8455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_DM_DI_USE_SSR 0x10 /* set this bit if ssr is supported for this link */ 8465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_DM_DI_AV_ACTIVE 0x20 /* set this bit if AV is active for this link */ 8475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_DM_DI_SET_SNIFF 0x01 /* set this bit if call BTM_SetPowerMode(sniff) */ 8485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_DM_DI_INT_SNIFF 0x02 /* set this bit if call BTM_SetPowerMode(sniff) & enter sniff mode */ 8495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_DM_DI_ACP_SNIFF 0x04 /* set this bit if peer init sniff */ 8505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef UINT8 tBTA_DM_DEV_INFO; 8515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 8535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 8545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR peer_bdaddr; 8555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 link_policy; 8565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_CONN_STATE conn_state; 8575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_PREF_ROLES pref_role; 8585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN in_use; 8595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_DEV_INFO info; 8607fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta tBTA_DM_ENCRYPT_CBACK *p_encrypt_cback; 8615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if (BTM_SSR_INCLUDED == TRUE) 8625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTM_PM_STATUS prev_low; /* previous low power mode used */ 8635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 8645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_PM_ACTTION pm_mode_attempted; 8655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_PM_ACTTION pm_mode_failed; 866ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta BOOLEAN remove_dev_pending; 8677fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta UINT16 conn_handle; 8687fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta tBT_TRANSPORT transport; 8695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_PEER_DEVICE; 8705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* structure to store list of 8745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project active connections */ 8755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 8765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 8775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_PEER_DEVICE peer_device[BTA_DM_NUM_PEER_DEVICE]; 8785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 count; 8797fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta#if BLE_INCLUDED == TRUE 8807fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta UINT8 le_count; 8817fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta#endif 8825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_ACTIVE_LINK; 8835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 8865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 8875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR peer_bdaddr; 8885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_SYS_ID id; 8895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 app_id; 8905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_SYS_CONN_STATUS state; 8915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_SRVCS; 8945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_DM_NUM_CONN_SRVS 5 8965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 8975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 8985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 8995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 count; 9015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_SRVCS conn_srvc[BTA_DM_NUM_CONN_SRVS]; 9025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_CONNECTED_SRVCS; 9045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 9065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 9075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project TIMER_LIST_ENT timer; 9085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR peer_bdaddr; 9095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN in_use; 9105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_PM_TIMER; 9125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern tBTA_DM_CONNECTED_SRVCS bta_dm_conn_srvcs; 9145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_DM_NUM_PM_TIMER 3 9165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* DM control block */ 9185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 9195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 9205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN is_bta_dm_active; 9215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_ACTIVE_LINK device_list; 9225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_SEC_CBACK *p_sec_cback; 9231acb61ce065053f91a0f8d43e8328c9eeec4b5edSatya Calloji#if ((defined BLE_INCLUDED) && (BLE_INCLUDED == TRUE)) 924c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Calloji tBTA_BLE_SCAN_SETUP_CBACK *p_setup_cback; 9251acb61ce065053f91a0f8d43e8328c9eeec4b5edSatya Calloji#endif 9261a9247a1229aa65b3d1dce16426177bc5828e54dSatya Calloji tBTA_DM_BLE_PF_CFG_CBACK *p_scan_filt_cfg_cback; 9271a9247a1229aa65b3d1dce16426177bc5828e54dSatya Calloji tBTA_DM_BLE_PF_STATUS_CBACK *p_scan_filt_status_cback; 9281a9247a1229aa65b3d1dce16426177bc5828e54dSatya Calloji tBTA_DM_BLE_PF_PARAM_CBACK *p_scan_filt_param_cback; 929e5ba8841cd39e17c05aeb4ab65b5b761d41577daSatya Calloji tBTA_BLE_ENERGY_INFO_CBACK *p_energy_info_cback; 9305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project TIMER_LIST_ENT signal_strength_timer; 9315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_SIG_STRENGTH_MASK signal_strength_mask; 9325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 state; 9335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 signal_strength_period; 9345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN disabling; 9355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project TIMER_LIST_ENT disable_timer; 9365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT32 wbt_sdp_handle; /* WIDCOMM Extensions SDP record handle */ 9375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 wbt_scn; /* WIDCOMM Extensions SCN */ 9385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 num_master_only; 9395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 pm_id; 9405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_PM_TIMER pm_timer[BTA_DM_NUM_PM_TIMER]; 9415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT32 role_policy_mask; /* the bits set indicates the modules that wants to remove role switch from the default link policy */ 9425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 cur_policy; /* current default link policy */ 9435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 rs_event; /* the event waiting for role switch */ 9445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 cur_av_count; /* current AV connecions */ 9455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN disable_pair_mode; /* disable pair mode or not */ 9465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN conn_paired_only; /* allow connectable to paired device only or not */ 9475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_API_SEARCH search_msg; 9485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 page_scan_interval; 9495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 page_scan_window; 9505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 inquiry_scan_interval; 9515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 inquiry_scan_window; 9525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project /* Storage for pin code request parameters */ 9545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR pin_bd_addr; 9555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project DEV_CLASS pin_dev_class; 9565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_SEC_EVT pin_evt; 9575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT32 num_val; /* the numeric value for comparison. If just_works, do not show this number to UI */ 9585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN just_works; /* TRUE, if "Just Works" association model */ 9595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if ( BTM_EIR_SERVER_INCLUDED == TRUE )&&( BTA_EIR_CANNED_UUID_LIST != TRUE ) 9605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project /* store UUID list for EIR */ 9615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project TIMER_LIST_ENT app_ready_timer; 9625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT32 eir_uuid[BTM_EIR_SERVICE_ARRAY_SIZE]; 9635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if (BTA_EIR_SERVER_NUM_CUSTOM_UUID > 0) 9645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBT_UUID custom_uuid[BTA_EIR_SERVER_NUM_CUSTOM_UUID]; 9655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project TIMER_LIST_ENT switch_delay_timer; 9705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_CB; 9725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTA_DM_SDP_DB_SIZE 9745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTA_DM_SDP_DB_SIZE 250 9755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 9765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* DM search control block */ 9785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 9795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 9805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 9815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_SEARCH_CBACK * p_search_cback; 9825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTM_INQ_INFO * p_btm_inq_info; 9835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_SERVICE_MASK services; 9845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_SERVICE_MASK services_to_search; 9855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_SERVICE_MASK services_found; 9865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tSDP_DISCOVERY_DB * p_sdp_db; 9875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 state; 9885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BD_ADDR peer_bdaddr; 9895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN name_discover_done; 990ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta BD_NAME peer_name; 9915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project TIMER_LIST_ENT search_timer; 9925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 service_index; 9935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_MSG * p_search_queue; /* search or discover commands during search cancel stored here */ 9945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN wait_disc; 9955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN sdp_results; 9965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tSDP_UUID uuid; 9975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 peer_scn; 9985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN sdp_search; 9997fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta tBTA_TRANSPORT transport; 10005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if ((defined BLE_INCLUDED) && (BLE_INCLUDED == TRUE)) 1001ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta tBTA_DM_SEARCH_CBACK * p_scan_cback; 10025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if ((defined BTA_GATT_INCLUDED) && (BTA_GATT_INCLUDED == TRUE)) 10035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_GATTC_IF client_if; 10045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 num_uuid; 10055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBT_UUID *p_srvc_uuid; 10065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 uuid_to_search; 10075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN gatt_disc_active; 10085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 conn_id; 10095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 * p_ble_rawdata; 10105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT32 ble_raw_size; 10115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT32 ble_raw_used; 10126975b4d711142b885af479721cada448952c6b41Andre Eisenbach TIMER_LIST_ENT gatt_close_timer; 10136975b4d711142b885af479721cada448952c6b41Andre Eisenbach BD_ADDR pending_close_bda; 10145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_SEARCH_CB; 10195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* DI control block */ 10215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 10225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 10235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tSDP_DISCOVERY_DB * p_di_db; /* pointer to the DI discovery database */ 10245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 di_num; /* total local DI record number */ 10255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT32 di_handle[BTA_DI_NUM_MAX]; /* local DI record handle, the first one is primary record */ 10265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project}tBTA_DM_DI_CB; 10275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* DM search state */ 10295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectenum 10305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 10315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_SEARCH_IDLE, 10335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_SEARCH_ACTIVE, 10345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_SEARCH_CANCELLING, 10355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BTA_DM_DISCOVER_ACTIVE 10365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project}; 10385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 10425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 10435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project DEV_CLASS dev_class; /* local device class */ 10445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 policy_settings; /* link policy setting hold, sniff, park, MS switch */ 10455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 page_timeout; /* timeout for page in slots */ 10465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 link_timeout; /* link supervision timeout in slots */ 10475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project BOOLEAN avoid_scatter; /* TRUE to avoid scatternet when av is streaming (be the master) */ 10485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_CFG; 10505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern const UINT32 bta_service_id_to_btm_srv_id_lkup_tbl[]; 10525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern const tBTA_DM_CFG bta_dm_cfg; 10545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 10575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 10585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 id; 10595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 app_id; 10605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 cfg; 10615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_RM ; 10635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern tBTA_DM_CFG *p_bta_dm_cfg; 10655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern tBTA_DM_RM *p_bta_dm_rm_cfg; 10665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 10685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 10695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 id; 10715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 app_id; 10725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 spec_idx; /* index of spec table to use */ 10735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_PM_CFG; 10755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 10785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 10795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_PM_ACTTION power_mode; 10815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 timeout; 10825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_PM_ACTN; 10845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 10865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 10875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 allow_mask; /* mask of sniff/hold/park modes to allow */ 10895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if (BTM_SSR_INCLUDED == TRUE) 10905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 ssr; /* set SSR on conn open/unpark */ 10915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 10925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project tBTA_DM_PM_ACTN actn_tbl [BTA_DM_PM_NUM_EVTS][2]; 10935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_PM_SPEC; 10955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 10965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 10975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 10985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 max_lat; 10995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 min_rmt_to; 11005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 min_loc_to; 11015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project} tBTA_DM_SSR_SPEC; 11025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef struct 11045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project{ 11055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 manufacturer; 11065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT16 lmp_sub_version; 11075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project UINT8 lmp_version; 11085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project}tBTA_DM_LMP_VER_INFO; 11095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern tBTA_DM_PM_CFG *p_bta_dm_pm_cfg; 11115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern tBTA_DM_PM_SPEC *p_bta_dm_pm_spec; 11125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern tBTM_PM_PWR_MD *p_bta_dm_pm_md; 11135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if (BTM_SSR_INCLUDED == TRUE) 11145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern tBTA_DM_SSR_SPEC *p_bta_dm_ssr_spec; 11155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if ( BTM_EIR_SERVER_INCLUDED == TRUE ) 11185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* update dynamic BRCM Aware EIR data */ 11195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern const tBTA_DM_EIR_CONF bta_dm_eir_cfg; 11205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern tBTA_DM_EIR_CONF *p_bta_dm_eir_cfg; 11215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* DM control block */ 11245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if BTA_DYNAMIC_MEMORY == FALSE 11255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern tBTA_DM_CB bta_dm_cb; 11265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#else 11275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern tBTA_DM_CB *bta_dm_cb_ptr; 11285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define bta_dm_cb (*bta_dm_cb_ptr) 11295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* DM search control block */ 11325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if BTA_DYNAMIC_MEMORY == FALSE 11335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern tBTA_DM_SEARCH_CB bta_dm_search_cb; 11345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#else 11355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern tBTA_DM_SEARCH_CB *bta_dm_search_cb_ptr; 11365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define bta_dm_search_cb (*bta_dm_search_cb_ptr) 11375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/* DI control block */ 11405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if BTA_DYNAMIC_MEMORY == FALSE 11415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern tBTA_DM_DI_CB bta_dm_di_cb; 11425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#else 11435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern tBTA_DM_DI_CB *bta_dm_di_cb_ptr; 11445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define bta_dm_di_cb (*bta_dm_di_cb_ptr) 11455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 11465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern BOOLEAN bta_dm_sm_execute(BT_HDR *p_msg); 11485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_sm_disable( void ); 11495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern BOOLEAN bta_dm_search_sm_execute(BT_HDR *p_msg); 11505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_search_sm_disable( void ); 11515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_enable (tBTA_DM_MSG *p_data); 11545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_disable (tBTA_DM_MSG *p_data); 11555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_set_dev_name (tBTA_DM_MSG *p_data); 11565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_set_visibility (tBTA_DM_MSG *p_data); 11575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_set_afhchannels (tBTA_DM_MSG *p_data); 11585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_vendor_spec_command(tBTA_DM_MSG *p_data); 11595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_bond (tBTA_DM_MSG *p_data); 11605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_bond_cancel (tBTA_DM_MSG *p_data); 11615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_pin_reply (tBTA_DM_MSG *p_data); 11625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_link_policy (tBTA_DM_MSG *p_data); 11635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_auth_reply (tBTA_DM_MSG *p_data); 11645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_signal_strength(tBTA_DM_MSG *p_data); 11655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_tx_inqpower(tBTA_DM_MSG *p_data); 11665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_acl_change(tBTA_DM_MSG *p_data); 11675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_add_device (tBTA_DM_MSG *p_data); 11685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_remove_device (tBTA_DM_MSG *p_data); 1169ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Battaextern void bta_dm_close_acl(tBTA_DM_MSG *p_data); 11705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_pm_btm_status(tBTA_DM_MSG *p_data); 11735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_pm_timer(tBTA_DM_MSG *p_data); 11745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_add_ampkey (tBTA_DM_MSG *p_data); 11755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 11765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if BLE_INCLUDED == TRUE 11775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_add_blekey (tBTA_DM_MSG *p_data); 11785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_add_ble_device (tBTA_DM_MSG *p_data); 11795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_ble_passkey_reply (tBTA_DM_MSG *p_data); 11805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_security_grant (tBTA_DM_MSG *p_data); 11815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_ble_set_bg_conn_type (tBTA_DM_MSG *p_data); 11825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_ble_set_conn_params (tBTA_DM_MSG *p_data); 11835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_ble_set_scan_params (tBTA_DM_MSG *p_data); 11846975b4d711142b885af479721cada448952c6b41Andre Eisenbachextern void bta_dm_close_gatt_conn(tBTA_DM_MSG *p_data); 1185ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Battaextern void bta_dm_ble_observe (tBTA_DM_MSG *p_data); 11867fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Battaextern void bta_dm_ble_update_conn_params (tBTA_DM_MSG *p_data); 1187ed534e330bf63c72e778fc8daae09ddd63c395b2Wei Wang#if BLE_PRIVACY_SPT == TRUE 1188ed534e330bf63c72e778fc8daae09ddd63c395b2Wei Wangextern void bta_dm_ble_config_local_privacy (tBTA_DM_MSG *p_data); 1189ed534e330bf63c72e778fc8daae09ddd63c395b2Wei Wang#endif 11905c44e45473e5fc2fa89411ab1add7dbfc979f1f8Andre Eisenbachextern void bta_dm_ble_set_adv_params (tBTA_DM_MSG *p_data); 11915c44e45473e5fc2fa89411ab1add7dbfc979f1f8Andre Eisenbachextern void bta_dm_ble_set_adv_config (tBTA_DM_MSG *p_data); 1192eeeac99328c23304ab24698331b6600f3b545700Andre Eisenbachextern void bta_dm_ble_set_scan_rsp (tBTA_DM_MSG *p_data); 1193eeeac99328c23304ab24698331b6600f3b545700Andre Eisenbachextern void bta_dm_ble_broadcast (tBTA_DM_MSG *p_data); 11945c44e45473e5fc2fa89411ab1add7dbfc979f1f8Andre Eisenbach 1195b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach#if BLE_ANDROID_CONTROLLER_SCAN_FILTER == TRUE 1196b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbachextern void bta_dm_cfg_filter_cond (tBTA_DM_MSG *p_data); 11971a9247a1229aa65b3d1dce16426177bc5828e54dSatya Callojiextern void bta_dm_scan_filter_param_setup (tBTA_DM_MSG *p_data); 11981a9247a1229aa65b3d1dce16426177bc5828e54dSatya Callojiextern void bta_dm_enable_scan_filter(tBTA_DM_MSG *p_data); 1199b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach#endif 1200a6ce7751d84218c193eb90d390aef23217b1737eWei Wangextern void btm_dm_ble_multi_adv_disable(tBTA_DM_MSG *p_data); 1201a6ce7751d84218c193eb90d390aef23217b1737eWei Wangextern void bta_dm_ble_multi_adv_data(tBTA_DM_MSG *p_data); 1202a6ce7751d84218c193eb90d390aef23217b1737eWei Wangextern void bta_dm_ble_multi_adv_upd_param(tBTA_DM_MSG *p_data); 1203a6ce7751d84218c193eb90d390aef23217b1737eWei Wangextern void bta_dm_ble_multi_adv_enb(tBTA_DM_MSG *p_data); 1204b203d478f4835f5e35217874a1787e1914328f7cAndre Eisenbach 1205c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Callojiextern void bta_dm_ble_setup_storage(tBTA_DM_MSG *p_data); 1206c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Callojiextern void bta_dm_ble_enable_batch_scan(tBTA_DM_MSG * p_data); 1207c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Callojiextern void bta_dm_ble_disable_batch_scan(tBTA_DM_MSG * p_data); 1208c4e2596a112a0dd63ac681b1226548c0f95e828cSatya Callojiextern void bta_dm_ble_read_scan_reports(tBTA_DM_MSG * p_data); 12091acb61ce065053f91a0f8d43e8328c9eeec4b5edSatya Callojiextern void bta_dm_ble_track_advertiser(tBTA_DM_MSG * p_data); 1210e5ba8841cd39e17c05aeb4ab65b5b761d41577daSatya Callojiextern void bta_dm_ble_get_energy_info(tBTA_DM_MSG *p_data); 12111acb61ce065053f91a0f8d43e8328c9eeec4b5edSatya Calloji 12125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 12135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_set_encryption(tBTA_DM_MSG *p_data); 12145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_confirm(tBTA_DM_MSG *p_data); 12155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_passkey_cancel(tBTA_DM_MSG *p_data); 12165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if (BTM_OOB_INCLUDED == TRUE) 12175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_loc_oob(tBTA_DM_MSG *p_data); 12185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_ci_io_req_act(tBTA_DM_MSG *p_data); 12195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_ci_rmt_oob_act(tBTA_DM_MSG *p_data); 12205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif /* BTM_OOB_INCLUDED */ 12215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 12225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_init_pm(void); 12235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_disable_pm(void); 12245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 12255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_search_start (tBTA_DM_MSG *p_data); 12265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_search_cancel (tBTA_DM_MSG *p_data); 12275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_discover (tBTA_DM_MSG *p_data); 12285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_di_disc (tBTA_DM_MSG *p_data); 12295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_inq_cmpl (tBTA_DM_MSG *p_data); 12305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_rmt_name (tBTA_DM_MSG *p_data); 12315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_sdp_result (tBTA_DM_MSG *p_data); 12325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_search_cmpl (tBTA_DM_MSG *p_data); 12335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_free_sdp_db (tBTA_DM_MSG *p_data); 12345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_disc_result (tBTA_DM_MSG *p_data); 12355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_search_result (tBTA_DM_MSG *p_data); 12365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_discovery_cmpl (tBTA_DM_MSG *p_data); 12375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_queue_search (tBTA_DM_MSG *p_data); 12385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_queue_disc (tBTA_DM_MSG *p_data); 12395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_search_clear_queue (tBTA_DM_MSG *p_data); 12405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_search_cancel_cmpl (tBTA_DM_MSG *p_data); 12415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_search_cancel_notify (tBTA_DM_MSG *p_data); 12425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_search_cancel_transac_cmpl(tBTA_DM_MSG *p_data); 12435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_disc_rmt_name (tBTA_DM_MSG *p_data); 12445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern tBTA_DM_PEER_DEVICE * bta_dm_find_peer_device(BD_ADDR peer_addr); 12455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 12467fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta#if BLE_PRIVACY_SPT == TRUE 12477fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Battaextern void bta_dm_ble_config_local_privacy (tBTA_DM_MSG *p_data); 12487fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta#endif 12497fa4fba6f59f97df00aff07dbe8fb21b114b3c2cGanesh Ganapathi Batta 12505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_pm_active(BD_ADDR peer_addr); 12515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 12525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if ( BTM_EIR_SERVER_INCLUDED == TRUE ) 12535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectvoid bta_dm_eir_update_uuid(UINT16 uuid16, BOOLEAN adding); 12545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#else 12555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define bta_dm_eir_update_uuid(x, y) 12565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 12575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 12585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if ( BTM_EIR_SERVER_INCLUDED == TRUE )&&( BTA_EIR_CANNED_UUID_LIST != TRUE )&&(BTA_EIR_SERVER_NUM_CUSTOM_UUID > 0) 12595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_update_eir_uuid (tBTA_DM_MSG *p_data); 12605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 12615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#if (BTM_EIR_SERVER_INCLUDED == TRUE) 12625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_set_eir_config (tBTA_DM_MSG *p_data); 12635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif 12645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_enable_test_mode(tBTA_DM_MSG *p_data); 12655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_disable_test_mode(tBTA_DM_MSG *p_data); 12665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_execute_callback(tBTA_DM_MSG *p_data); 12675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 12685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectextern void bta_dm_set_afh_channel_assesment(tBTA_DM_MSG *p_data); 12695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 12705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif /* BTA_DM_INT_H */ 12715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 1272