1 /******************************************************************************
2 *
3 * Copyright (C) 2011-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 #include "buildcfg.h"
19 #include "bt_types.h"
20 #include <cutils/log.h>
21
22
23 #ifndef BTE_LOG_BUF_SIZE
24 #define BTE_LOG_BUF_SIZE 1024
25 #endif
26 #define BTE_LOG_MAX_SIZE (BTE_LOG_BUF_SIZE - 12)
27
28
29 extern "C"
30 {
31 void LogMsg (UINT32 trace_set_mask, const char *fmt_str, ...);
32 }
33
34 /*******************************************************************************
35 **
36 ** Function: ScrLog
37 **
38 ** Description: log a message
39 **
40 ** Returns: none
41 **
42 *******************************************************************************/
ScrLog(UINT32 trace_set_mask,const char * fmt_str,...)43 void ScrLog (UINT32 trace_set_mask, const char *fmt_str, ...)
44 {
45 static char buffer[BTE_LOG_BUF_SIZE];
46 va_list ap;
47
48 va_start(ap, fmt_str);
49 vsnprintf(buffer, BTE_LOG_MAX_SIZE, fmt_str, ap);
50 va_end(ap);
51 __android_log_write(ANDROID_LOG_INFO, "BrcmNci", buffer);
52 }
53
54
55 /*******************************************************************************
56 **
57 ** Function: LogMsg
58 **
59 ** Description: log a message
60 **
61 ** Returns: none
62 **
63 *******************************************************************************/
LogMsg(UINT32 trace_set_mask,const char * fmt_str,...)64 void LogMsg (UINT32 trace_set_mask, const char *fmt_str, ...)
65 {
66 static char buffer[BTE_LOG_BUF_SIZE];
67 va_list ap;
68 UINT32 trace_type = trace_set_mask & 0x07; //lower 3 bits contain trace type
69 int android_log_type = ANDROID_LOG_INFO;
70
71 va_start(ap, fmt_str);
72 vsnprintf(buffer, BTE_LOG_MAX_SIZE, fmt_str, ap);
73 va_end(ap);
74 if (trace_type == TRACE_TYPE_ERROR)
75 android_log_type = ANDROID_LOG_ERROR;
76 __android_log_write(android_log_type, "BrcmNfcNfa", buffer);
77 }
78
79