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#ifndef BTIF_UTIL_H 205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define BTIF_UTIL_H 215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#include <hardware/bluetooth.h> 235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#include <hardware/bt_hf.h> 245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#include <utils/Log.h> 25ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Batta#include <sys/time.h> 265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#include "data_types.h" 285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#include "bt_types.h" 295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************* 315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Constants & Macros 325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project********************************************************************************/ 335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#define CASE_RETURN_STR(const) case const: return #const; 355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************* 385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Type definitions for callback functions 395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project********************************************************************************/ 405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projecttypedef char bdstr_t[18]; 425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/******************************************************************************* 455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project** Functions 465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project********************************************************************************/ 475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectconst char* dump_bt_status(bt_status_t status); 495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectconst char* dump_dm_search_event(UINT16 event); 505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectconst char* dump_dm_event(UINT16 event); 515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectconst char* dump_hf_event(UINT16 event); 525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectconst char* dump_hh_event(UINT16 event); 535738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectconst char* dump_hf_conn_state(UINT16 event); 545738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectconst char* dump_hf_call_state(bthf_call_state_t call_state); 555738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectconst char* dump_property_type(bt_property_type_t type); 565738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectconst char* dump_hf_audio_state(UINT16 event); 575738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectconst char* dump_adapter_scan_mode(bt_scan_mode_t mode); 585738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectconst char* dump_thread_evt(bt_cb_thread_evt evt); 595738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectconst char* dump_av_conn_state(UINT16 event); 605738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectconst char* dump_av_audio_state(UINT16 event); 619adddf4965e9ddb01e339b934c343fcbd842a977Ravi Nagarajanconst char* dump_rc_event(UINT8 event); 629adddf4965e9ddb01e339b934c343fcbd842a977Ravi Nagarajanconst char* dump_rc_notification_event_id(UINT8 event_id); 639adddf4965e9ddb01e339b934c343fcbd842a977Ravi Nagarajanconst char* dump_rc_pdu(UINT8 pdu); 645738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 655738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectint str2bd(char *str, bt_bdaddr_t *addr); 66ead3cde4bac0c3e32cd31f149093f004eef8ceebGanesh Ganapathi Battachar *bd2str(const bt_bdaddr_t *addr, bdstr_t *bdstr); 675738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 685738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source ProjectUINT32 devclass2uint(DEV_CLASS dev_class); 695738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectvoid uint2devclass(UINT32 dev, DEV_CLASS dev_class); 705738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectvoid uuid16_to_uuid128(uint16_t uuid16, bt_uuid_t* uuid128); 715738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 725738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectvoid uuid_to_string(bt_uuid_t *p_uuid, char *str); 735738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectvoid string_to_uuid(char *str, bt_uuid_t *p_uuid); 745738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectint ascii_2_hex (char *p_ascii, int len, UINT8 *p_hex); 755738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project 765738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project#endif /* BTIF_UTIL_H */ 77