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