1e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach/******************************************************************************
2e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach *
3e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach *  Copyright (C) 2009-2012 Broadcom Corporation
4e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach *
56ef101187774e30ddba6b46bbedef549a42196adAndre Eisenbach *  Licensed under the Apache License, Version 2.0 (the "License");
66ef101187774e30ddba6b46bbedef549a42196adAndre Eisenbach *  you may not use this file except in compliance with the License.
76ef101187774e30ddba6b46bbedef549a42196adAndre Eisenbach *  You may obtain a copy of the License at:
8e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach *
96ef101187774e30ddba6b46bbedef549a42196adAndre Eisenbach *  http://www.apache.org/licenses/LICENSE-2.0
10e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach *
116ef101187774e30ddba6b46bbedef549a42196adAndre Eisenbach *  Unless required by applicable law or agreed to in writing, software
126ef101187774e30ddba6b46bbedef549a42196adAndre Eisenbach *  distributed under the License is distributed on an "AS IS" BASIS,
136ef101187774e30ddba6b46bbedef549a42196adAndre Eisenbach *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
146ef101187774e30ddba6b46bbedef549a42196adAndre Eisenbach *  See the License for the specific language governing permissions and
156ef101187774e30ddba6b46bbedef549a42196adAndre Eisenbach *  limitations under the License.
16e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach *
176ef101187774e30ddba6b46bbedef549a42196adAndre Eisenbach ******************************************************************************/
18e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach
196ef101187774e30ddba6b46bbedef549a42196adAndre Eisenbach/*******************************************************************************
20e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach *
21e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach *  Filename:      btif_api.h
22e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach *
23e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach *  Description:   Main API header file for all BTIF functions accessed
24254588bfe6c3e70625b0f725b908598f30f476c8Mattias Agren *                 from main bluetooth HAL. All HAL extensions will not
25e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach *                 require headerfiles as they would be accessed through
26e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach *                 callout/callins.
27254588bfe6c3e70625b0f725b908598f30f476c8Mattias Agren *
286ef101187774e30ddba6b46bbedef549a42196adAndre Eisenbach *******************************************************************************/
29e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach
30e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach#ifndef BTIF_API_H
31e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach#define BTIF_API_H
32e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach
33e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach#include "btif_common.h"
34e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach#include "btif_dm.h"
35e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach
366ef101187774e30ddba6b46bbedef549a42196adAndre Eisenbach/*******************************************************************************
37e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**  BTIF CORE API
386ef101187774e30ddba6b46bbedef549a42196adAndre Eisenbach********************************************************************************/
39e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach
40e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach/*******************************************************************************
41e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
42e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Function         btif_init_bluetooth
43e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
44e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Description      Creates BTIF task and prepares BT scheduler for startup
45254588bfe6c3e70625b0f725b908598f30f476c8Mattias Agren**
46254588bfe6c3e70625b0f725b908598f30f476c8Mattias Agren** Returns          bt_status_t
47e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
48e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach*******************************************************************************/
49e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbachbt_status_t btif_init_bluetooth(void);
50e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach
51e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach/*******************************************************************************
52e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
53e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Function         btif_enable_bluetooth
54e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
55e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Description      Performs chip power on and kickstarts OS scheduler
56254588bfe6c3e70625b0f725b908598f30f476c8Mattias Agren**
57254588bfe6c3e70625b0f725b908598f30f476c8Mattias Agren** Returns          bt_status_t
58e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
59e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach*******************************************************************************/
60e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbachbt_status_t btif_enable_bluetooth(void);
61e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach
62e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach/*******************************************************************************
63e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
64e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Function         btif_disable_bluetooth
65e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
66e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Description      Inititates shutdown of Bluetooth system.
67e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**                  Any active links will be dropped and device entering
68e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**                  non connectable/discoverable mode
69254588bfe6c3e70625b0f725b908598f30f476c8Mattias Agren**
70254588bfe6c3e70625b0f725b908598f30f476c8Mattias Agren** Returns          void
71e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
72e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach*******************************************************************************/
73e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbachbt_status_t btif_disable_bluetooth(void);
74e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach
75e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach/*******************************************************************************
76e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
77e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Function         btif_shutdown_bluetooth
78e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
79e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Description      Finalizes BT scheduler shutdown and terminates BTIF
80e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**                  task.
81254588bfe6c3e70625b0f725b908598f30f476c8Mattias Agren**
82254588bfe6c3e70625b0f725b908598f30f476c8Mattias Agren**
83254588bfe6c3e70625b0f725b908598f30f476c8Mattias Agren** Returns          void
84e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
85e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach*******************************************************************************/
86e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbachbt_status_t btif_shutdown_bluetooth(void);
87e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach
88e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach/*******************************************************************************
89e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
90e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Function         btif_get_adapter_properties
91e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
92e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Description      Fetches all local adapter properties
93254588bfe6c3e70625b0f725b908598f30f476c8Mattias Agren**
94254588bfe6c3e70625b0f725b908598f30f476c8Mattias Agren** Returns          bt_status_t
95e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
96e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach*******************************************************************************/
97e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbachbt_status_t btif_get_adapter_properties(void);
98e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach
99e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach/*******************************************************************************
100e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
101e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Function         btif_get_adapter_property
102e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
103e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Description      Fetches property value from local cache
104e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
105254588bfe6c3e70625b0f725b908598f30f476c8Mattias Agren** Returns          bt_status_t
106e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
107e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach*******************************************************************************/
108e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbachbt_status_t btif_get_adapter_property( bt_property_type_t type);
109e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach
110e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach/*******************************************************************************
111e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
112e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Function         btif_set_adapter_property
113e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
114254588bfe6c3e70625b0f725b908598f30f476c8Mattias Agren** Description      Updates core stack with property value and stores it in
115e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**                  local cache
116e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
117254588bfe6c3e70625b0f725b908598f30f476c8Mattias Agren** Returns          bt_status_t
118e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
119e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach*******************************************************************************/
120e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbachbt_status_t btif_set_adapter_property( const bt_property_t *property);
121e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach
122e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach/*******************************************************************************
123e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
124e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Function         btif_get_remote_device_property
125e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
126e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Description      Fetches the remote device property from the NVRAM
127e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
128e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Returns          bt_status_t
129e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
130e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach*******************************************************************************/
131254588bfe6c3e70625b0f725b908598f30f476c8Mattias Agrenbt_status_t btif_get_remote_device_property( bt_bdaddr_t *remote_addr,
132e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach                                             bt_property_type_t type);
133e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach
134e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach/*******************************************************************************
135e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
136e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Function         btif_get_remote_device_properties
137e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
138e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Description      Fetches all the remote device properties from NVRAM
139e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
140e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Returns          bt_status_t
141e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
142e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach*******************************************************************************/
143e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbachbt_status_t btif_get_remote_device_properties( bt_bdaddr_t *remote_addr);
144e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach
145e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach/*******************************************************************************
146e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
147e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Function         btif_set_remote_device_property
148e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
149e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Description      Writes the remote device property to NVRAM.
150e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**                  Currently, BT_PROPERTY_REMOTE_FRIENDLY_NAME is the only
151e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**                  remote device property that can be set
152e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
153e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Returns          bt_status_t
154e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
155254588bfe6c3e70625b0f725b908598f30f476c8Mattias Agren*******************************************************************************/
156254588bfe6c3e70625b0f725b908598f30f476c8Mattias Agrenbt_status_t btif_set_remote_device_property( bt_bdaddr_t *remote_addr,
157e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach                                             const bt_property_t *property);
158254588bfe6c3e70625b0f725b908598f30f476c8Mattias Agren
159e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach/*******************************************************************************
160e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
161e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Function         btif_get_remote_service_record
162e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
163e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Description      Looks up the service matching uuid on the remote device
164e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**                  and fetches the SCN and service_name if the UUID is found
165e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
166e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Returns          bt_status_t
167e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
168254588bfe6c3e70625b0f725b908598f30f476c8Mattias Agren*******************************************************************************/
169254588bfe6c3e70625b0f725b908598f30f476c8Mattias Agrenbt_status_t btif_get_remote_service_record( bt_bdaddr_t *remote_addr,
170e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach                                            bt_uuid_t *uuid);
171e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach
1726ef101187774e30ddba6b46bbedef549a42196adAndre Eisenbach
1736ef101187774e30ddba6b46bbedef549a42196adAndre Eisenbach/*******************************************************************************
174e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**  BTIF DM API
1756ef101187774e30ddba6b46bbedef549a42196adAndre Eisenbach********************************************************************************/
176e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach
177e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach/*******************************************************************************
178e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
179e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Function         btif_dm_start_discovery
180e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
181e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Description      Start device discovery/inquiry
182e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
183e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
184e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Returns          bt_status_t
185254588bfe6c3e70625b0f725b908598f30f476c8Mattias Agren**
186e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach*******************************************************************************/
187e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbachbt_status_t btif_dm_start_discovery(void);
188e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach
189e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach/*******************************************************************************
190e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
191e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Function         btif_dm_cancel_discovery
192e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
193e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Description      Cancels search
194e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
195e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Returns          bt_status_t
196e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
197e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach*******************************************************************************/
198e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbachbt_status_t btif_dm_cancel_discovery(void);
199e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach
200e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach/*******************************************************************************
201e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
202e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Function         btif_dm_create_bond
203e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
204e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Description      Initiate bonding with the specified device
205e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
206e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Returns          bt_status_t
207e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
208e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach*******************************************************************************/
209e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbachbt_status_t btif_dm_create_bond(const bt_bdaddr_t *bd_addr);
210e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach
211e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach/*******************************************************************************
212e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
213e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Function         btif_dm_cancel_bond
214e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
215e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Description      Initiate bonding with the specified device
216e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
217e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Returns          bt_status_t
218e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
219e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach*******************************************************************************/
220e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbachbt_status_t btif_dm_cancel_bond(const bt_bdaddr_t *bd_addr);
221e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach
222e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach/*******************************************************************************
223e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
224e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Function         btif_dm_remove_bond
225e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
226e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Description      Removes bonding with the specified device
227e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
228e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Returns          bt_status_t
229e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
230e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach*******************************************************************************/
231e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbachbt_status_t btif_dm_remove_bond(const bt_bdaddr_t *bd_addr);
232e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach
233e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach/*******************************************************************************
234e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
235e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Function         btif_dm_pin_reply
236e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
237e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Description      BT legacy pairing - PIN code reply
238e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
239e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Returns          bt_status_t
240e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
241e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach*******************************************************************************/
242e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbachbt_status_t btif_dm_pin_reply( const bt_bdaddr_t *bd_addr, uint8_t accept,
243e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach                               uint8_t pin_len, bt_pin_code_t *pin_code);
244e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach
245e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach/*******************************************************************************
246e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
247e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Function         btif_dm_passkey_reply
248e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
249e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Description      BT SSP passkey reply
250e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
251e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Returns          bt_status_t
252e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
253e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach*******************************************************************************/
254254588bfe6c3e70625b0f725b908598f30f476c8Mattias Agrenbt_status_t btif_dm_passkey_reply( const bt_bdaddr_t *bd_addr,
255e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach                                   uint8_t accept, uint32_t passkey);
256e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach
257e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach/*******************************************************************************
258e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
259e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Function         btif_dm_ssp_reply
260e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
261e2f1686eb6870338e070714a75bb5c7266440fafKausik Sinnaswamy** Description      BT SSP Reply - Just Works, Numeric Comparison & Passkey Entry
262e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
263e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Returns          bt_status_t
264e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
265e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach*******************************************************************************/
266254588bfe6c3e70625b0f725b908598f30f476c8Mattias Agrenbt_status_t btif_dm_ssp_reply( const bt_bdaddr_t *bd_addr,
267e2f1686eb6870338e070714a75bb5c7266440fafKausik Sinnaswamy                              bt_ssp_variant_t variant, uint8_t accept,
268e2f1686eb6870338e070714a75bb5c7266440fafKausik Sinnaswamy                              uint32_t passkey);
269e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach
270e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach/*******************************************************************************
271e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
272e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Function         btif_dm_get_adapter_property
273e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
274e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Description      Queries the BTA for the adapter property
275e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
276e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Returns          bt_status_t
277e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
278e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach*******************************************************************************/
279254588bfe6c3e70625b0f725b908598f30f476c8Mattias Agrenbt_status_t btif_dm_get_adapter_property(bt_property_t *prop);
280e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach
281e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach/*******************************************************************************
282e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
283e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Function         btif_dm_get_remote_services
284e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
285e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Description      Start SDP to get remote services
286e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
287e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach** Returns          bt_status_t
288e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach**
289e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach*******************************************************************************/
290254588bfe6c3e70625b0f725b908598f30f476c8Mattias Agrenbt_status_t btif_dm_get_remote_service_record(bt_bdaddr_t *remote_addr,
291e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach                                              bt_uuid_t *uuid);
292e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach
2937688ec9bffe2be2850672db8d108cbf58edec341fredc
2947688ec9bffe2be2850672db8d108cbf58edec341fredc/*******************************************************************************
2957688ec9bffe2be2850672db8d108cbf58edec341fredc**
2967688ec9bffe2be2850672db8d108cbf58edec341fredc** Function         btif_dm_get_remote_services
2977688ec9bffe2be2850672db8d108cbf58edec341fredc**
2987688ec9bffe2be2850672db8d108cbf58edec341fredc** Description      Start SDP to get remote services
2997688ec9bffe2be2850672db8d108cbf58edec341fredc**
3007688ec9bffe2be2850672db8d108cbf58edec341fredc** Returns          bt_status_t
3017688ec9bffe2be2850672db8d108cbf58edec341fredc**
3027688ec9bffe2be2850672db8d108cbf58edec341fredc*******************************************************************************/
3037688ec9bffe2be2850672db8d108cbf58edec341fredcbt_status_t btif_dm_get_remote_services(bt_bdaddr_t *remote_addr);
3047688ec9bffe2be2850672db8d108cbf58edec341fredc
305a4eaddaccd236ec5c5add065e1b393072bdb8386Kausik Sinnaswamy/*******************************************************************************
306a4eaddaccd236ec5c5add065e1b393072bdb8386Kausik Sinnaswamy**
307a4eaddaccd236ec5c5add065e1b393072bdb8386Kausik Sinnaswamy** Function         btif_dut_mode_configure
308a4eaddaccd236ec5c5add065e1b393072bdb8386Kausik Sinnaswamy**
309a4eaddaccd236ec5c5add065e1b393072bdb8386Kausik Sinnaswamy** Description      Configure Test Mode - 'enable' to 1 puts the device in test mode and 0 exits
310a4eaddaccd236ec5c5add065e1b393072bdb8386Kausik Sinnaswamy**                       test mode
311a4eaddaccd236ec5c5add065e1b393072bdb8386Kausik Sinnaswamy**
312a4eaddaccd236ec5c5add065e1b393072bdb8386Kausik Sinnaswamy** Returns          BT_STATUS_SUCCESS on success
313a4eaddaccd236ec5c5add065e1b393072bdb8386Kausik Sinnaswamy**
314a4eaddaccd236ec5c5add065e1b393072bdb8386Kausik Sinnaswamy*******************************************************************************/
315a4eaddaccd236ec5c5add065e1b393072bdb8386Kausik Sinnaswamybt_status_t btif_dut_mode_configure(uint8_t enable);
316a4eaddaccd236ec5c5add065e1b393072bdb8386Kausik Sinnaswamy
317a4eaddaccd236ec5c5add065e1b393072bdb8386Kausik Sinnaswamy/*******************************************************************************
318a4eaddaccd236ec5c5add065e1b393072bdb8386Kausik Sinnaswamy**
319a4eaddaccd236ec5c5add065e1b393072bdb8386Kausik Sinnaswamy** Function         btif_dut_mode_send
320a4eaddaccd236ec5c5add065e1b393072bdb8386Kausik Sinnaswamy**
321a4eaddaccd236ec5c5add065e1b393072bdb8386Kausik Sinnaswamy** Description     Sends a HCI Vendor specific command to the controller
322a4eaddaccd236ec5c5add065e1b393072bdb8386Kausik Sinnaswamy**
323a4eaddaccd236ec5c5add065e1b393072bdb8386Kausik Sinnaswamy** Returns          BT_STATUS_SUCCESS on success
324a4eaddaccd236ec5c5add065e1b393072bdb8386Kausik Sinnaswamy**
325a4eaddaccd236ec5c5add065e1b393072bdb8386Kausik Sinnaswamy*******************************************************************************/
326a4eaddaccd236ec5c5add065e1b393072bdb8386Kausik Sinnaswamybt_status_t btif_dut_mode_send(uint16_t opcode, uint8_t *buf, uint8_t len);
327a4eaddaccd236ec5c5add065e1b393072bdb8386Kausik Sinnaswamy
328e448862a47c08eb23185aaed574b39264f5005fcAndre Eisenbach#endif /* BTIF_API_H */
329