15738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************
25738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *
35738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *  Copyright (C) 2009-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 *  Filename:      btif_api.h
225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *
235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *  Description:   Main API header file for all BTIF functions accessed
245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *                 from main bluetooth HAL. All HAL extensions will not
255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *                 require headerfiles as they would be accessed through
265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *                 callout/callins.
275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *
285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *******************************************************************************/
295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#ifndef BTIF_API_H
315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_API_H
325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#include "btif_common.h"
345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#include "btif_dm.h"
355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*******************************************************************************
375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**  BTIF CORE API
385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project********************************************************************************/
395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*******************************************************************************
415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function         btif_init_bluetooth
435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description      Creates BTIF task and prepares BT scheduler for startup
455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns          bt_status_t
475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/
495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectbt_status_t btif_init_bluetooth(void);
505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*******************************************************************************
525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function         btif_enable_bluetooth
545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description      Performs chip power on and kickstarts OS scheduler
565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns          bt_status_t
585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/
605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectbt_status_t btif_enable_bluetooth(void);
615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*******************************************************************************
635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function         btif_disable_bluetooth
655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description      Inititates shutdown of Bluetooth system.
675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                  Any active links will be dropped and device entering
685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                  non connectable/discoverable mode
695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns          void
715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/
735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectbt_status_t btif_disable_bluetooth(void);
745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*******************************************************************************
765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function         btif_shutdown_bluetooth
785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description      Finalizes BT scheduler shutdown and terminates BTIF
805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                  task.
815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns          void
845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/
865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectbt_status_t btif_shutdown_bluetooth(void);
875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*******************************************************************************
895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function         btif_get_adapter_properties
915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description      Fetches all local adapter properties
935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns          bt_status_t
955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/
975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectbt_status_t btif_get_adapter_properties(void);
985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*******************************************************************************
1005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function         btif_get_adapter_property
1025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description      Fetches property value from local cache
1045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns          bt_status_t
1065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/
1085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectbt_status_t btif_get_adapter_property( bt_property_type_t type);
1095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*******************************************************************************
1115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function         btif_set_adapter_property
1135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description      Updates core stack with property value and stores it in
1155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                  local cache
1165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns          bt_status_t
1185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/
1205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectbt_status_t btif_set_adapter_property( const bt_property_t *property);
1215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*******************************************************************************
1235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function         btif_get_remote_device_property
1255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description      Fetches the remote device property from the NVRAM
1275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns          bt_status_t
1295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/
1315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectbt_status_t btif_get_remote_device_property( bt_bdaddr_t *remote_addr,
1325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project                                             bt_property_type_t type);
1335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*******************************************************************************
1355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function         btif_get_remote_device_properties
1375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description      Fetches all the remote device properties from NVRAM
1395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns          bt_status_t
1415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/
1435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectbt_status_t btif_get_remote_device_properties( bt_bdaddr_t *remote_addr);
1445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*******************************************************************************
1465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function         btif_set_remote_device_property
1485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description      Writes the remote device property to NVRAM.
1505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                  Currently, BT_PROPERTY_REMOTE_FRIENDLY_NAME is the only
1515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                  remote device property that can be set
1525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns          bt_status_t
1545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/
1565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectbt_status_t btif_set_remote_device_property( bt_bdaddr_t *remote_addr,
1575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project                                             const bt_property_t *property);
1585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*******************************************************************************
1605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function         btif_get_remote_service_record
1625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description      Looks up the service matching uuid on the remote device
1645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                  and fetches the SCN and service_name if the UUID is found
1655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns          bt_status_t
1675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/
1695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectbt_status_t btif_get_remote_service_record( bt_bdaddr_t *remote_addr,
1705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project                                            bt_uuid_t *uuid);
1715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*******************************************************************************
1745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**  BTIF DM API
1755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project********************************************************************************/
1765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*******************************************************************************
1785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function         btif_dm_start_discovery
1805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description      Start device discovery/inquiry
1825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns          bt_status_t
1855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/
1875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectbt_status_t btif_dm_start_discovery(void);
1885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
1895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*******************************************************************************
1905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function         btif_dm_cancel_discovery
1925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description      Cancels search
1945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns          bt_status_t
1965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
1975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/
1985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectbt_status_t btif_dm_cancel_discovery(void);
1995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
2005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*******************************************************************************
2015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function         btif_dm_create_bond
2035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description      Initiate bonding with the specified device
2055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns          bt_status_t
2075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/
209b0daa5d79d4e2950701fb9a5f76a306e1da42de0Andre Eisenbachbt_status_t btif_dm_create_bond(const bt_bdaddr_t *bd_addr, int transport);
2105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
2115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*******************************************************************************
2125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function         btif_dm_cancel_bond
2145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description      Initiate bonding with the specified device
2165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns          bt_status_t
2185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/
2205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectbt_status_t btif_dm_cancel_bond(const bt_bdaddr_t *bd_addr);
2215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
2225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*******************************************************************************
2235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function         btif_dm_remove_bond
2255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description      Removes bonding with the specified device
2275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns          bt_status_t
2295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/
2315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectbt_status_t btif_dm_remove_bond(const bt_bdaddr_t *bd_addr);
2325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
2335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*******************************************************************************
2345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2355c0b052090a57b3926669c23349b0f0db68853f8Andre Eisenbach** Function         btif_dm_get_connection_state
2365c0b052090a57b3926669c23349b0f0db68853f8Andre Eisenbach**
2375c0b052090a57b3926669c23349b0f0db68853f8Andre Eisenbach** Description      Returns whether the remote device is currently connected
2385c0b052090a57b3926669c23349b0f0db68853f8Andre Eisenbach**
2395c0b052090a57b3926669c23349b0f0db68853f8Andre Eisenbach** Returns          0 if not connected
2405c0b052090a57b3926669c23349b0f0db68853f8Andre Eisenbach**
2415c0b052090a57b3926669c23349b0f0db68853f8Andre Eisenbach*******************************************************************************/
2425c0b052090a57b3926669c23349b0f0db68853f8Andre Eisenbachuint16_t btif_dm_get_connection_state(const bt_bdaddr_t *bd_addr);
2435c0b052090a57b3926669c23349b0f0db68853f8Andre Eisenbach
2445c0b052090a57b3926669c23349b0f0db68853f8Andre Eisenbach/*******************************************************************************
2455c0b052090a57b3926669c23349b0f0db68853f8Andre Eisenbach**
2465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function         btif_dm_pin_reply
2475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description      BT legacy pairing - PIN code reply
2495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns          bt_status_t
2515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/
2535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectbt_status_t btif_dm_pin_reply( const bt_bdaddr_t *bd_addr, uint8_t accept,
2545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project                               uint8_t pin_len, bt_pin_code_t *pin_code);
2555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
2565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*******************************************************************************
2575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function         btif_dm_passkey_reply
2595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description      BT SSP passkey reply
2615738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2625738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns          bt_status_t
2635738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/
2655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectbt_status_t btif_dm_passkey_reply( const bt_bdaddr_t *bd_addr,
2665738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project                                   uint8_t accept, uint32_t passkey);
2675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
2685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*******************************************************************************
2695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function         btif_dm_ssp_reply
2715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description      BT SSP Reply - Just Works, Numeric Comparison & Passkey Entry
2735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns          bt_status_t
2755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/
2775738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectbt_status_t btif_dm_ssp_reply( const bt_bdaddr_t *bd_addr,
2785738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project                              bt_ssp_variant_t variant, uint8_t accept,
2795738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project                              uint32_t passkey);
2805738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
2815738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*******************************************************************************
2825738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2835738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function         btif_dm_get_adapter_property
2845738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2855738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description      Queries the BTA for the adapter property
2865738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2875738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns          bt_status_t
2885738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2895738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/
2905738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectbt_status_t btif_dm_get_adapter_property(bt_property_t *prop);
2915738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
2925738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*******************************************************************************
2935738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2945738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function         btif_dm_get_remote_services
2955738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2965738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description      Start SDP to get remote services
2975738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
2985738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns          bt_status_t
2995738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
3005738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/
3015738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectbt_status_t btif_dm_get_remote_service_record(bt_bdaddr_t *remote_addr,
3025738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project                                              bt_uuid_t *uuid);
3035738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
3045738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
3055738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*******************************************************************************
3065738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
3075738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function         btif_dm_get_remote_services
3085738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
3095738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description      Start SDP to get remote services
3105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
3115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns          bt_status_t
3125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
3135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/
3145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectbt_status_t btif_dm_get_remote_services(bt_bdaddr_t *remote_addr);
3155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
3165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*******************************************************************************
3175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
3185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function         btif_dut_mode_configure
3195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
3205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description      Configure Test Mode - 'enable' to 1 puts the device in test mode and 0 exits
3215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**                       test mode
3225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
3235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns          BT_STATUS_SUCCESS on success
3245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
3255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/
3265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectbt_status_t btif_dut_mode_configure(uint8_t enable);
3275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
3285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*******************************************************************************
3295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
3305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Function         btif_dut_mode_send
3315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
3325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Description     Sends a HCI Vendor specific command to the controller
3335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
3345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Returns          BT_STATUS_SUCCESS on success
3355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project**
3365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project*******************************************************************************/
3375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectbt_status_t btif_dut_mode_send(uint16_t opcode, uint8_t *buf, uint8_t len);
3385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
339ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta/*******************************************************************************
340ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta**
341ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta** Function         btif_le_test_mode
342ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta**
343ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta** Description     Sends a HCI BLE Test command to the Controller
344ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta**
345ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta** Returns          BT_STATUS_SUCCESS on success
346ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta**
347ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta*******************************************************************************/
348ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Battabt_status_t btif_le_test_mode(uint16_t opcode, uint8_t *buf, uint8_t len);
349bad70b1d0071ee9b16a029ff145e8e53038571ffZhihai Xu
350bad70b1d0071ee9b16a029ff145e8e53038571ffZhihai Xu/*******************************************************************************
351bad70b1d0071ee9b16a029ff145e8e53038571ffZhihai Xu**
352e5ba8841cd39e17c05aeb4ab65b5b761d41577daSatya Calloji** Function         btif_dm_read_energy_info
353e5ba8841cd39e17c05aeb4ab65b5b761d41577daSatya Calloji**
354e5ba8841cd39e17c05aeb4ab65b5b761d41577daSatya Calloji** Description     Reads the energy info from controller
355e5ba8841cd39e17c05aeb4ab65b5b761d41577daSatya Calloji**
356e5ba8841cd39e17c05aeb4ab65b5b761d41577daSatya Calloji** Returns          void
357e5ba8841cd39e17c05aeb4ab65b5b761d41577daSatya Calloji**
358e5ba8841cd39e17c05aeb4ab65b5b761d41577daSatya Calloji*******************************************************************************/
359e5ba8841cd39e17c05aeb4ab65b5b761d41577daSatya Callojivoid btif_dm_read_energy_info();
360e5ba8841cd39e17c05aeb4ab65b5b761d41577daSatya Calloji
361e5ba8841cd39e17c05aeb4ab65b5b761d41577daSatya Calloji/*******************************************************************************
362e5ba8841cd39e17c05aeb4ab65b5b761d41577daSatya Calloji**
363bad70b1d0071ee9b16a029ff145e8e53038571ffZhihai Xu** Function         btif_config_hci_snoop_log
364bad70b1d0071ee9b16a029ff145e8e53038571ffZhihai Xu**
365bad70b1d0071ee9b16a029ff145e8e53038571ffZhihai Xu** Description     enable or disable HCI snoop log
366bad70b1d0071ee9b16a029ff145e8e53038571ffZhihai Xu**
367bad70b1d0071ee9b16a029ff145e8e53038571ffZhihai Xu** Returns          BT_STATUS_SUCCESS on success
368bad70b1d0071ee9b16a029ff145e8e53038571ffZhihai Xu**
369bad70b1d0071ee9b16a029ff145e8e53038571ffZhihai Xu*******************************************************************************/
370bad70b1d0071ee9b16a029ff145e8e53038571ffZhihai Xubt_status_t btif_config_hci_snoop_log(uint8_t enable);
3715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif /* BTIF_API_H */
372