1 /****************************************************************************** 2 * 3 * Copyright (c) 2014 The Android Open Source Project 4 * Copyright (C) 2009-2012 Broadcom Corporation 5 * 6 * Licensed under the Apache License, Version 2.0 (the "License"); 7 * you may not use this file except in compliance with the License. 8 * You may obtain a copy of the License at: 9 * 10 * http://www.apache.org/licenses/LICENSE-2.0 11 * 12 * Unless required by applicable law or agreed to in writing, software 13 * distributed under the License is distributed on an "AS IS" BASIS, 14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 * See the License for the specific language governing permissions and 16 * limitations under the License. 17 * 18 ******************************************************************************/ 19 20 #ifndef BTIF_UTIL_H 21 #define BTIF_UTIL_H 22 23 #include <hardware/bluetooth.h> 24 #include <hardware/bt_hf.h> 25 #include <utils/Log.h> 26 #include <sys/time.h> 27 28 #include "data_types.h" 29 #include "bt_types.h" 30 #include "bt_utils.h" 31 32 /******************************************************************************* 33 ** Constants & Macros 34 ********************************************************************************/ 35 36 #define CASE_RETURN_STR(const) case const: return #const; 37 38 39 /******************************************************************************* 40 ** Type definitions for callback functions 41 ********************************************************************************/ 42 43 typedef char bdstr_t[18]; 44 45 46 /******************************************************************************* 47 ** Functions 48 ********************************************************************************/ 49 50 const char* dump_bt_status(bt_status_t status); 51 const char* dump_dm_search_event(UINT16 event); 52 const char* dump_dm_event(UINT16 event); 53 const char* dump_hf_event(UINT16 event); 54 const char* dump_hf_client_event(UINT16 event); 55 const char* dump_hh_event(UINT16 event); 56 const char* dump_hf_conn_state(UINT16 event); 57 const char* dump_hf_call_state(bthf_call_state_t call_state); 58 const char* dump_property_type(bt_property_type_t type); 59 const char* dump_hf_audio_state(UINT16 event); 60 const char* dump_adapter_scan_mode(bt_scan_mode_t mode); 61 const char* dump_thread_evt(bt_cb_thread_evt evt); 62 const char* dump_av_conn_state(UINT16 event); 63 const char* dump_av_audio_state(UINT16 event); 64 const char* dump_rc_event(UINT8 event); 65 const char* dump_rc_notification_event_id(UINT8 event_id); 66 const char* dump_rc_pdu(UINT8 pdu); 67 68 int str2bd(char *str, bt_bdaddr_t *addr); 69 char *bd2str(const bt_bdaddr_t *addr, bdstr_t *bdstr); 70 71 UINT32 devclass2uint(DEV_CLASS dev_class); 72 void uint2devclass(UINT32 dev, DEV_CLASS dev_class); 73 void uuid16_to_uuid128(uint16_t uuid16, bt_uuid_t* uuid128); 74 75 void uuid_to_string(bt_uuid_t *p_uuid, char *str); 76 void string_to_uuid(char *str, bt_uuid_t *p_uuid); 77 int ascii_2_hex (char *p_ascii, int len, UINT8 *p_hex); 78 79 #endif /* BTIF_UTIL_H */ 80