OSDN Git Service

am cef7695c: (-s ours) Add a singly linked list implementation for OSI.
[android-x86/system-bt.git] / include / bt_trace.h
1 /******************************************************************************
2  *
3  *  Copyright (C) 1999-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 /******************************************************************************
20  *
21  *  This file contains definitions for implementing the
22  *  diagnostic trace message service.
23  *
24  ******************************************************************************/
25
26 #ifndef BT_TRACE_H
27 #define BT_TRACE_H
28
29 #ifndef BTTRC_INCLUDED
30 #define BTTRC_INCLUDED  FALSE
31 #endif
32 #ifndef BTTRC_PARSER_INCLUDED
33 #define BTTRC_PARSER_INCLUDED FALSE
34 #endif
35 #ifndef MAX_TRACE_RAM_SIZE
36 #define MAX_TRACE_RAM_SIZE 10000
37 #endif
38
39 /* BTE tracing IDs for debug purposes */
40 /* LayerIDs for stack */
41 #define BTTRC_ID_STK_GKI                   1
42 #define BTTRC_ID_STK_BTU                   2
43 #define BTTRC_ID_STK_HCI                   3
44 #define BTTRC_ID_STK_L2CAP                 4
45 #define BTTRC_ID_STK_RFCM_MX               5
46 #define BTTRC_ID_STK_RFCM_PRT              6
47 #define BTTRC_ID_STK_OBEX_C                7
48 #define BTTRC_ID_STK_OBEX_S                8
49 #define BTTRC_ID_STK_AVCT                  9
50 #define BTTRC_ID_STK_AVDT                  10
51 #define BTTRC_ID_STK_AVRC                  11
52 #define BTTRC_ID_STK_BIC                   12
53 #define BTTRC_ID_STK_BIS                   13
54 #define BTTRC_ID_STK_BNEP                  14
55 #define BTTRC_ID_STK_BPP                   15
56 #define BTTRC_ID_STK_BTM_ACL               16
57 #define BTTRC_ID_STK_BTM_PM                17
58 #define BTTRC_ID_STK_BTM_DEV_CTRL          18
59 #define BTTRC_ID_STK_BTM_SVC_DSC           19
60 #define BTTRC_ID_STK_BTM_INQ               20
61 #define BTTRC_ID_STK_BTM_SCO               21
62 #define BTTRC_ID_STK_BTM_SEC               22
63 #define BTTRC_ID_STK_DUN                   23
64 #define BTTRC_ID_STK_HID                   24
65 #define BTTRC_ID_STK_HSP2                  25
66 #define BTTRC_ID_STK_CTP                   26
67 #define BTTRC_ID_STK_FTC                   27
68 #define BTTRC_ID_STK_FTS                   28
69 #define BTTRC_ID_STK_GAP                   29
70 #define BTTRC_ID_STK_GOEP                  30
71 #define BTTRC_ID_STK_HCRP                  31
72 #define BTTRC_ID_STK_ICP                   32
73 #define BTTRC_ID_STK_OPC                   33
74 #define BTTRC_ID_STK_OPS                   34
75 #define BTTRC_ID_STK_PAN                   35
76 #define BTTRC_ID_STK_SAP                   36
77 #define BTTRC_ID_STK_SDP                   37
78 #define BTTRC_ID_STK_SLIP                  38
79 #define BTTRC_ID_STK_SPP                   39
80 #define BTTRC_ID_STK_TCS                   40
81 #define BTTRC_ID_STK_VDP                   41
82 #define BTTRC_ID_STK_MCAP                  42
83 #define BTTRC_ID_STK_GATT                  43
84 #define BTTRC_ID_STK_SMP                   44
85 #define BTTRC_ID_STK_NFC                   45
86 #define BTTRC_ID_STK_NCI                   46
87 #define BTTRC_ID_STK_IDEP                  47
88 #define BTTRC_ID_STK_NDEP                  48
89 #define BTTRC_ID_STK_LLCP                  49
90 #define BTTRC_ID_STK_RW                    50
91 #define BTTRC_ID_STK_CE                    51
92 #define BTTRC_ID_STK_SNEP                  52
93 #define BTTRC_ID_STK_NDEF                  53
94
95
96 /* LayerIDs for BTA */
97 #define BTTRC_ID_BTA_ACC                   55         /* Advanced Camera Client */
98 #define BTTRC_ID_BTA_AG                    56         /* audio gateway */
99 #define BTTRC_ID_BTA_AV                    57         /* Advanced audio */
100 #define BTTRC_ID_BTA_BIC                   58         /* Basic Imaging Client */
101 #define BTTRC_ID_BTA_BIS                   59         /* Basic Imaging Server */
102 #define BTTRC_ID_BTA_BP                    60         /* Basic Printing Client */
103 #define BTTRC_ID_BTA_CG                    61
104 #define BTTRC_ID_BTA_CT                    62         /* cordless telephony terminal */
105 #define BTTRC_ID_BTA_DG                    63         /* data gateway */
106 #define BTTRC_ID_BTA_DM                    64         /* device manager */
107 #define BTTRC_ID_BTA_DM_SRCH               65         /* device manager search */
108 #define BTTRC_ID_BTA_DM_SEC                66         /* device manager security */
109 #define BTTRC_ID_BTA_FM                    67
110 #define BTTRC_ID_BTA_FTC                   68         /* file transfer client */
111 #define BTTRC_ID_BTA_FTS                   69         /* file transfer server */
112 #define BTTRC_ID_BTA_HIDH                  70
113 #define BTTRC_ID_BTA_HIDD                  71
114 #define BTTRC_ID_BTA_JV                    72
115 #define BTTRC_ID_BTA_OPC                   73         /* object push client */
116 #define BTTRC_ID_BTA_OPS                   74         /* object push server */
117 #define BTTRC_ID_BTA_PAN                   75         /* Personal Area Networking */
118 #define BTTRC_ID_BTA_PR                    76         /* Printer client */
119 #define BTTRC_ID_BTA_SC                    77         /* SIM Card Access server */
120 #define BTTRC_ID_BTA_SS                    78         /* synchronization server */
121 #define BTTRC_ID_BTA_SYS                   79         /* system manager */
122 #define BTTRC_ID_AVDT_SCB                  80         /* avdt scb */
123 #define BTTRC_ID_AVDT_CCB                  81         /* avdt ccb */
124
125 // btla-specific ++
126 /* LayerIDs added for BTL-A. Probably should modify bte_logmsg.c in future. */
127 #define BTTRC_ID_STK_RFCOMM                82
128 #define BTTRC_ID_STK_RFCOMM_DATA           83
129 #define BTTRC_ID_STK_OBEX                  84
130 #define BTTRC_ID_STK_A2D                   85
131 #define BTTRC_ID_STK_BIP                   86
132
133 /* LayerIDs for BT APP */
134 #define BTTRC_ID_BTAPP                     87
135 #define BTTRC_ID_BT_PROTOCOL               88         /* this is a temporary solution to allow dynamic
136                                                          enable/disable of BT_PROTOCOL_TRACE */
137 #define BTTRC_ID_MAX_ID                    BTTRC_ID_BT_PROTOCOL
138 // btla-specific --
139 #define BTTRC_ID_ALL_LAYERS                0xFF       /* all trace layers */
140 typedef UINT8 tBTTRC_LAYER_ID;
141
142 /* Trace type definitions. Note that these are mutually exclusive in a trace. This
143 means that any trace can be either error,warning,api,event or dbg */
144 #define BTTRC_TYPE_ERROR                   0x01       /* Traces for error situation */
145 #define BTTRC_TYPE_WARNING                     0x02       /* Traces for warning situation */
146 #define BTTRC_TYPE_API                     0x04       /* Traces for API */
147 #define BTTRC_TYPE_EVENT                   0x08       /* Traces for EVENT */
148 #define BTTRC_TYPE_ACTION                  0x10       /* Traces for Action functions */
149 #define BTTRC_TYPE_DBG                     0x20       /* Traces for debugging purpose */
150 typedef UINT8 tBTTRC_TYPE;
151
152 /* Masks to identify the stack that originated the trace */
153 #define BTTRC_TRACE_LITE                   0x80       /* MM Lite stack */
154 #define BTTRC_TRACE_EMBD                   0x40       /* Embedded host stack */
155
156 /* Parameter datatypes used in Trace APIs */
157 #define BTTRC_PARAM_UINT8                  1
158 #define BTTRC_PARAM_UINT16                 2
159 #define BTTRC_PARAM_UINT32                 3
160 typedef UINT8 tBTTRC_PARAM_TYPE;
161
162 /* Special token definitions */
163 #define BTTRC_TOKEN_SM_STATE               0xFFFF     /* Token indicating the State of a State m/c */
164
165 // btla-specific ++
166 typedef struct {
167     tBTTRC_LAYER_ID layer_id;
168     tBTTRC_TYPE     type;      /* TODO: use tBTTRC_TYPE instead of "classical level 0-5" */
169 } tBTTRC_LEVEL;
170
171 typedef UINT8 (tBTTRC_SET_TRACE_LEVEL)( UINT8 );
172
173 typedef struct {
174     const tBTTRC_LAYER_ID         layer_id_start;
175     const tBTTRC_LAYER_ID         layer_id_end;
176     tBTTRC_SET_TRACE_LEVEL        *p_f;
177     const char                    *trc_name;
178     UINT8                         trace_level;
179 } tBTTRC_FUNC_MAP;
180
181 extern tBTTRC_FUNC_MAP bttrc_set_level_map[];
182 extern const UINT16 bttrc_map_size;
183 extern BT_API tBTTRC_LEVEL * BTA_SysSetTraceLevel( tBTTRC_LEVEL * p_levels );
184 // btla-specific --
185
186
187 #ifdef __cplusplus
188 extern "C" {
189 #endif
190
191 /* External declaration for appl_trace_level here to avoid to add the declaration in all the files using APPL_TRACExxx macros */
192 extern UINT8 appl_trace_level ;
193
194 // btla-specific ++
195 EXPORT_API extern void BTE_InitTraceLevels( void );
196 // btla-specific --
197
198 /* Prototype for message logging function. */
199 EXPORT_API extern void LogMsg (UINT32 trace_set_mask, const char *fmt_str, ...);
200
201 /* Prototype for stack tracing function. */
202 EXPORT_API extern void BTTRC_StackTrace0(tBTTRC_LAYER_ID layer_id,
203                                    tBTTRC_TYPE type,
204                                    UINT16 token);
205 EXPORT_API extern void BTTRC_StackTrace1(tBTTRC_LAYER_ID layer_id,
206                                    tBTTRC_TYPE type,
207                                    UINT16 token,
208                                    tBTTRC_PARAM_TYPE p1_type, UINT32 p1_val);
209 EXPORT_API extern void BTTRC_StackTrace2(tBTTRC_LAYER_ID layer_id,
210                                    tBTTRC_TYPE type,
211                                    UINT16 token,
212                                    tBTTRC_PARAM_TYPE p1_type, UINT32 p1_val,
213                                    tBTTRC_PARAM_TYPE p2_type, UINT32 p2_val);
214 EXPORT_API extern void BTTRC_StackTrace3(tBTTRC_LAYER_ID layer_id,
215                                    tBTTRC_TYPE type,
216                                    UINT16 token,
217                                    tBTTRC_PARAM_TYPE p1_type, UINT32 p1_val,
218                                    tBTTRC_PARAM_TYPE p2_type, UINT32 p2_val,
219                                    tBTTRC_PARAM_TYPE p3_type, UINT32 p3_val);
220 EXPORT_API extern void BTTRC_StackTrace4(tBTTRC_LAYER_ID layer_id,
221                                    tBTTRC_TYPE type,
222                                    UINT16 token,
223                                    tBTTRC_PARAM_TYPE p1_type, UINT32 p1_val,
224                                    tBTTRC_PARAM_TYPE p2_type, UINT32 p2_val,
225                                    tBTTRC_PARAM_TYPE p3_type, UINT32 p3_val,
226                                    tBTTRC_PARAM_TYPE p4_type, UINT32 p4_val);
227 EXPORT_API extern void BTTRC_StackTrace5(tBTTRC_LAYER_ID layer_id,
228                                    tBTTRC_TYPE type,
229                                    UINT16 token,
230                                    tBTTRC_PARAM_TYPE p1_type, UINT32 p1_val,
231                                    tBTTRC_PARAM_TYPE p2_type, UINT32 p2_val,
232                                    tBTTRC_PARAM_TYPE p3_type, UINT32 p3_val,
233                                    tBTTRC_PARAM_TYPE p4_type, UINT32 p4_val,
234                                    tBTTRC_PARAM_TYPE p5_type, UINT32 p5_val);
235 EXPORT_API extern void BTTRC_StackTrace6(tBTTRC_LAYER_ID layer_id,
236                                    tBTTRC_TYPE type,
237                                    UINT16 token,
238                                    tBTTRC_PARAM_TYPE p1_type, UINT32 p1_val,
239                                    tBTTRC_PARAM_TYPE p2_type, UINT32 p2_val,
240                                    tBTTRC_PARAM_TYPE p3_type, UINT32 p3_val,
241                                    tBTTRC_PARAM_TYPE p4_type, UINT32 p4_val,
242                                    tBTTRC_PARAM_TYPE p5_type, UINT32 p5_val,
243                                    tBTTRC_PARAM_TYPE p6_type, UINT32 p6_val);
244
245 // btla-specific ++
246 /* p_levels must be a 0 terminated list ! */
247 //EXPORT_API extern tBTTRC_LEVEL * BTA_SysSetTraceLevel( tBTTRC_LEVEL * p_levels );
248 // btla-specific --
249
250 #ifdef __cplusplus
251 }
252 #endif
253
254 /******************************************************************************
255 **
256 ** Trace configurable parameters
257 **
258 ******************************************************************************/
259
260 /* Enables or disables verbose trace information. */
261 #ifndef BT_TRACE_VERBOSE
262 #define BT_TRACE_VERBOSE    FALSE
263 #endif
264
265 /* Enables or disables all trace messages. */
266 #ifndef BT_USE_TRACES
267 #define BT_USE_TRACES       TRUE
268 #endif
269
270
271 /******************************************************************************
272 **
273 ** Trace Levels
274 **
275 ** The following values may be used for different levels:
276 **      BT_TRACE_LEVEL_NONE    0        * No trace messages to be generated
277 **      BT_TRACE_LEVEL_ERROR   1        * Error condition trace messages
278 **      BT_TRACE_LEVEL_WARNING 2        * Warning condition trace messages
279 **      BT_TRACE_LEVEL_API     3        * API traces
280 **      BT_TRACE_LEVEL_EVENT   4        * Debug messages for events
281 **      BT_TRACE_LEVEL_DEBUG   5        * Debug messages (general)
282 ******************************************************************************/
283
284 // btla-specific ++
285 /* Core Stack default trace levels */
286 #ifndef HCI_INITIAL_TRACE_LEVEL
287 #define HCI_INITIAL_TRACE_LEVEL             BT_TRACE_LEVEL_WARNING
288 #endif
289
290 #ifndef BTM_INITIAL_TRACE_LEVEL
291 #define BTM_INITIAL_TRACE_LEVEL             BT_TRACE_LEVEL_WARNING
292 #endif
293
294 #ifndef L2CAP_INITIAL_TRACE_LEVEL
295 #define L2CAP_INITIAL_TRACE_LEVEL           BT_TRACE_LEVEL_WARNING
296 #endif
297
298 #ifndef LLCP_INITIAL_TRACE_LEVEL
299 #define LLCP_INITIAL_TRACE_LEVEL            BT_TRACE_LEVEL_WARNING
300 #endif
301
302 #ifndef AMP_INITIAL_TRACE_LEVEL
303 #define AMP_INITIAL_TRACE_LEVEL             BT_TRACE_LEVEL_WARNING
304 #endif
305
306 #ifndef RFCOMM_INITIAL_TRACE_LEVEL
307 #define RFCOMM_INITIAL_TRACE_LEVEL          BT_TRACE_LEVEL_WARNING
308 #endif
309
310 #ifndef OBX_INITIAL_TRACE_LEVEL
311 #define OBX_INITIAL_TRACE_LEVEL             BT_TRACE_LEVEL_WARNING
312 #endif
313
314 #ifndef SDP_INITIAL_TRACE_LEVEL
315 #define SDP_INITIAL_TRACE_LEVEL             BT_TRACE_LEVEL_WARNING
316 #endif
317
318 #ifndef TCS_INITIAL_TRACE_LEVEL
319 #define TCS_INITIAL_TRACE_LEVEL             BT_TRACE_LEVEL_WARNING
320 #endif
321
322 /* Profile default trace levels */
323 #ifndef DUN_INITIAL_TRACE_LEVEL
324 #define DUN_INITIAL_TRACE_LEVEL             BT_TRACE_LEVEL_WARNING
325 #endif
326
327 #ifndef GAP_INITIAL_TRACE_LEVEL
328 #define GAP_INITIAL_TRACE_LEVEL             BT_TRACE_LEVEL_WARNING
329 #endif
330
331 #ifndef GOEP_INITIAL_TRACE_LEVEL
332 #define GOEP_INITIAL_TRACE_LEVEL            BT_TRACE_LEVEL_WARNING
333 #endif
334
335 #ifndef HSP2_INITIAL_TRACE_LEVEL
336 #define HSP2_INITIAL_TRACE_LEVEL            BT_TRACE_LEVEL_WARNING
337 #endif
338
339 #ifndef SPP_INITIAL_TRACE_LEVEL
340 #define SPP_INITIAL_TRACE_LEVEL             BT_TRACE_LEVEL_WARNING
341 #endif
342
343 #ifndef ICP_INITIAL_TRACE_LEVEL
344 #define ICP_INITIAL_TRACE_LEVEL             BT_TRACE_LEVEL_WARNING
345 #endif
346
347 #ifndef CTP_INITIAL_TRACE_LEVEL
348 #define CTP_INITIAL_TRACE_LEVEL             BT_TRACE_LEVEL_WARNING
349 #endif
350
351 #ifndef HCRP_INITIAL_TRACE_LEVEL
352 #define HCRP_INITIAL_TRACE_LEVEL            BT_TRACE_LEVEL_WARNING
353 #endif
354
355 #ifndef HCRPM_INITIAL_TRACE_LEVEL
356 #define HCRPM_INITIAL_TRACE_LEVEL           BT_TRACE_LEVEL_WARNING
357 #endif
358
359 #ifndef BPP_INITIAL_TRACE_LEVEL
360 #define BPP_INITIAL_TRACE_LEVEL             BT_TRACE_LEVEL_WARNING
361 #endif
362
363 #ifndef BIP_INITIAL_TRACE_LEVEL
364 #define BIP_INITIAL_TRACE_LEVEL             BT_TRACE_LEVEL_WARNING
365 #endif
366
367 #ifndef BNEP_INITIAL_TRACE_LEVEL
368 #define BNEP_INITIAL_TRACE_LEVEL            BT_TRACE_LEVEL_WARNING
369 #endif
370
371 #ifndef PAN_INITIAL_TRACE_LEVEL
372 #define PAN_INITIAL_TRACE_LEVEL             BT_TRACE_LEVEL_WARNING
373 #endif
374
375 #ifndef SAP_INITIAL_TRACE_LEVEL
376 #define SAP_INITIAL_TRACE_LEVEL             BT_TRACE_LEVEL_WARNING
377 #endif
378
379 #ifndef FTP_INITIAL_TRACE_LEVEL
380 #define FTP_INITIAL_TRACE_LEVEL             BT_TRACE_LEVEL_WARNING
381 #endif
382
383 #ifndef OPP_INITIAL_TRACE_LEVEL
384 #define OPP_INITIAL_TRACE_LEVEL             BT_TRACE_LEVEL_WARNING
385 #endif
386
387 #ifndef HFP_INITIAL_TRACE_LEVEL
388 #define HFP_INITIAL_TRACE_LEVEL             BT_TRACE_LEVEL_WARNING
389 #endif
390
391 #ifndef PAP_INITIAL_TRACE_LEVEL
392 #define PAP_INITIAL_TRACE_LEVEL             BT_TRACE_LEVEL_WARNING
393 #endif
394
395 #ifndef A2D_INITIAL_TRACE_LEVEL
396 #define A2D_INITIAL_TRACE_LEVEL             BT_TRACE_LEVEL_WARNING
397 #endif
398
399 #ifndef VDP_INITIAL_TRACE_LEVEL
400 #define VDP_INITIAL_TRACE_LEVEL             BT_TRACE_LEVEL_WARNING
401 #endif
402
403 #ifndef AVDT_INITIAL_TRACE_LEVEL
404 #define AVDT_INITIAL_TRACE_LEVEL            BT_TRACE_LEVEL_WARNING
405 #endif
406
407 #ifndef AVCT_INITIAL_TRACE_LEVEL
408 #define AVCT_INITIAL_TRACE_LEVEL            BT_TRACE_LEVEL_WARNING
409 #endif
410
411 #ifndef AVRC_INITIAL_TRACE_LEVEL
412 #define AVRC_INITIAL_TRACE_LEVEL            BT_TRACE_LEVEL_WARNING
413 #endif
414
415 #ifndef MCA_INITIAL_TRACE_LEVEL
416 #define MCA_INITIAL_TRACE_LEVEL             BT_TRACE_LEVEL_WARNING
417 #endif
418
419 #ifndef HID_INITIAL_TRACE_LEVEL
420 #define HID_INITIAL_TRACE_LEVEL             BT_TRACE_LEVEL_WARNING
421 #endif
422
423 /* Application and other default trace levels */
424 #ifndef RPC_INITIAL_TRACE_LEVEL
425 #define RPC_INITIAL_TRACE_LEVEL             BT_TRACE_LEVEL_WARNING
426 #endif
427
428 #ifndef APPL_INITIAL_TRACE_LEVEL
429 #define APPL_INITIAL_TRACE_LEVEL            BT_TRACE_LEVEL_WARNING
430 #endif
431
432 #ifndef BT_TRACE_APPL
433 #define BT_TRACE_APPL   BT_USE_TRACES
434 #endif
435
436 #ifndef NFC_INITIAL_TRACE_LEVEL
437 #define NFC_INITIAL_TRACE_LEVEL             BT_TRACE_LEVEL_WARNING
438 #endif
439
440 #ifndef GATT_INITIAL_TRACE_LEVEL
441 #define GATT_INITIAL_TRACE_LEVEL             BT_TRACE_LEVEL_WARNING
442 #endif
443
444 #ifndef SMP_INITIAL_TRACE_LEVEL
445 #define SMP_INITIAL_TRACE_LEVEL             BT_TRACE_LEVEL_WARNING
446 #endif
447 // btla-specific --
448
449
450 #if (BTTRC_INCLUDED == TRUE)
451 /***************************************************************************************/
452 /* BTTRC MACROS */
453
454 #define BTTRC_EVENT(lid, event, state)   \
455             {BTTRC_StackTrace1(lid, BTTRC_TYPE_EVENT, event, BTTRC_PARAM_UINT8, state);}
456 #define BTTRC_ACTION(lid, action)  \
457             {BTTRC_StackTrace0(lid, BTTRC_TYPE_ACTION, action);}
458 #define BTTRC_STATE(lid, state)   \
459             {BTTRC_StackTrace1(lid, BTTRC_TYPE_EVENT, BTTRC_TOKEN_SM_STATE, BTTRC_PARAM_UINT8, state);}
460
461 #define BTTRC_API0(lid, api)  \
462             {BTTRC_StackTrace0(lid, BTTRC_TYPE_API, api);}
463 #define BTTRC_API1(lid, api, p1_t,p1_v)  \
464             {BTTRC_StackTrace1(lid, BTTRC_TYPE_API, api, p1_t,p1_v);}
465 #define BTTRC_API2(lid, api, p1_t,p1_v,p2_t,p2_v)  \
466             {BTTRC_StackTrace2(lid, BTTRC_TYPE_API, api, p1_t,p1_v,p2_t,p2_v);}
467 #define BTTRC_API3(lid, api, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v)  \
468             {BTTRC_StackTrace3(lid, BTTRC_TYPE_API, api, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v);}
469 #define BTTRC_API4(lid, api, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v)  \
470             {BTTRC_StackTrace4(lid, BTTRC_TYPE_API, api, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v);}
471 #define BTTRC_API5(lid, api, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v,p5_t,p5_v)  \
472             {BTTRC_StackTrace5(lid, BTTRC_TYPE_API, api, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v,p5_t,p5_v);}
473 #define BTTRC_API6(lid, api, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v,p5_t,p5_v,p6_t,p6_v)  \
474             {BTTRC_StackTrace6(lid, BTTRC_TYPE_API, api, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v,p5_t,p5_v,p6_t,p6_v);}
475
476
477 #define BTTRC_DBG0(lid, dbg)  \
478             {BTTRC_StackTrace0(lid, BTTRC_TYPE_DBG, dbg);}
479 #define BTTRC_DBG1(lid, dbg, p1_t,p1_v)  \
480             {BTTRC_StackTrace1(lid, BTTRC_TYPE_DBG, dbg, p1_t,p1_v);}
481 #define BTTRC_DBG2(lid, dbg, p1_t,p1_v,p2_t,p2_v)  \
482             {BTTRC_StackTrace2(lid, BTTRC_TYPE_DBG, dbg, p1_t,p1_v,p2_t,p2_v);}
483 #define BTTRC_DBG3(lid, dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v)  \
484             {BTTRC_StackTrace3(lid, BTTRC_TYPE_DBG, dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v);}
485 #define BTTRC_DBG4(lid, dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v)  \
486             {BTTRC_StackTrace4(lid, BTTRC_TYPE_DBG, dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v);}
487 #define BTTRC_DBG5(lid, dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v,p5_t,p5_v)  \
488             {BTTRC_StackTrace5(lid, BTTRC_TYPE_DBG, dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v,p5_t,p5_v);}
489 #define BTTRC_DBG6(lid, dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v,p5_t,p5_v,p6_t,p6_v)  \
490             {BTTRC_StackTrace6(lid, BTTRC_TYPE_DBG, dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v,p5_t,p5_v,p6_t,p6_v);}
491
492 /***************************************************************************************/
493 /*AVDT MACROS */
494
495 #define BTTRC_AVDT_API0(api)   \
496         BTTRC_API0(BTTRC_ID_STK_AVDT, api)
497 #define BTTRC_AVDT_API1(api, p1_t, p1_v) \
498         BTTRC_API1(BTTRC_ID_STK_AVDT, api, p1_t, p1_v)
499 #define BTTRC_AVDT_API2(api, p1_t, p1_v, p2_t, p2_v) \
500         BTTRC_API2(BTTRC_ID_STK_AVDT, api, p1_t, p1_v, p2_t, p2_v)
501 /***************************************************************************************/
502 /*AVDT_SCB MACROS */
503
504 #define BTTRC_AVDT_SCB_EVENT(event, state)   \
505             BTTRC_EVENT(BTTRC_ID_AVDT_SCB, event, state)
506 #define BTTRC_AVDT_SCB_ACTION(action)  \
507             BTTRC_ACTION(BTTRC_ID_AVDT_SCB, action)
508 #define BTTRC_AVDT_SCB_STATE(next_state)   \
509             BTTRC_STATE(BTTRC_ID_AVDT_SCB, next_state)
510
511 #define BTTRC_AVDT_SCB_DBG0(dbg)  \
512             BTTRC_DBG0(BTTRC_ID_AVDT_SCB, dbg)
513 #define BTTRC_AVDT_SCB_DBG1(dbg, p1_t,p1_v)  \
514             BTTRC_DBG1(BTTRC_ID_AVDT_SCB, dbg, p1_t,p1_v)
515 #define BTTRC_AVDT_SCB_DBG2(dbg, p1_t,p1_v,p2_t,p2_v)  \
516             BTTRC_DBG2(BTTRC_ID_AVDT_SCB, dbg, p1_t,p1_v,p2_t,p2_v)
517 #define BTTRC_AVDT_SCB_DBG3(dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v)  \
518             BTTRC_DBG3(BTTRC_ID_AVDT_SCB, dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v)
519 #define BTTRC_AVDT_SCB_DBG4(dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v)  \
520             BTTRC_DBG4(BTTRC_ID_AVDT_SCB, dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v)
521 #define BTTRC_AVDT_SCB_DBG5(dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v,p5_t,p5_v)  \
522             BTTRC_DBG5(BTTRC_ID_AVDT_SCB, dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v,p5_t,p5_v)
523 #define BTTRC_AVDT_SCB_DBG6(dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v,p5_t,p5_v,p6_t,p6_v)  \
524             BTTRC_DBG6(BTTRC_ID_AVDT_SCB, dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v,p5_t,p5_v,p6_t,p6_v)
525 /***************************************************************************************/
526 /*AVDT_CCB MACROS */
527
528 #define BTTRC_AVDT_CCB_EVENT(event, state)   \
529             BTTRC_EVENT(BTTRC_ID_AVDT_CCB, event, state)
530 #define BTTRC_AVDT_CCB_ACTION(action)  \
531             BTTRC_ACTION(BTTRC_ID_AVDT_CCB, action)
532 #define BTTRC_AVDT_CCB_STATE(next_state)   \
533             BTTRC_STATE(BTTRC_ID_AVDT_CCB, next_state)
534
535 #define BTTRC_AVDT_CCB_DBG0(dbg)  \
536             BTTRC_DBG0(BTTRC_ID_AVDT_CCB, dbg)
537 #define BTTRC_AVDT_CCB_DBG1(dbg, p1_t,p1_v)  \
538             BTTRC_DBG1(BTTRC_ID_AVDT_CCB, dbg, p1_t,p1_v)
539 #define BTTRC_AVDT_CCB_DBG2(dbg, p1_t,p1_v,p2_t,p2_v)  \
540             BTTRC_DBG2(BTTRC_ID_AVDT_CCB, dbg, p1_t,p1_v,p2_t,p2_v)
541 #define BTTRC_AVDT_CCB_DBG3(dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v)  \
542             BTTRC_DBG3(BTTRC_ID_AVDT_CCB, dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v)
543 #define BTTRC_AVDT_CCB_DBG4(dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v)  \
544             BTTRC_DBG4(BTTRC_ID_AVDT_CCB, dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v)
545 #define BTTRC_AVDT_CCB_DBG5(dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v,p5_t,p5_v)  \
546             BTTRC_DBG5(BTTRC_ID_AVDT_CCB, dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v,p5_t,p5_v)
547 #define BTTRC_AVDT_CCB_DBG6(dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v,p5_t,p5_v,p6_t,p6_v)  \
548             BTTRC_DBG6(BTTRC_ID_AVDT_CCB, dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v,p5_t,p5_v,p6_t,p6_v)
549 /***************************************************************************************/
550
551 #else /*BTTRC_INCLUDED*/
552
553 /***************************************************************************************/
554 /* BTTRC MACROS */
555
556 #define BTTRC_EVENT(lid, event, state)
557 #define BTTRC_ACTION(lid, action)
558 #define BTTRC_STATE(lid, state)
559
560 #define BTTRC_API0(lid, api)
561 #define BTTRC_API1(lid, api, p1_t, p1_v)
562 #define BTTRC_API2(lid, api, p1_t, p1_v, p2_t, p2_v)
563 #define BTTRC_API3(lid, api, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v)
564 #define BTTRC_API4(lid, api, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v)
565 #define BTTRC_API5(lid, api, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v,p5_t,p5_v)
566 #define BTTRC_API6(lid, api, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v,p5_t,p5_v,p6_t,p6_v)
567
568
569 #define BTTRC_DBG0(lid, dbg)
570 #define BTTRC_DBG1(lid, dbg, p1_t,p1_v)
571 #define BTTRC_DBG2(lid, dbg, p1_t,p1_v,p2_t,p2_v)
572 #define BTTRC_DBG3(lid, dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v)
573 #define BTTRC_DBG4(lid, dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v)
574 #define BTTRC_DBG5(lid, dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v,p5_t,p5_v)
575 #define BTTRC_DBG6(lid, dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v,p5_t,p5_v,p6_t,p6_v)
576
577 /***************************************************************************************/
578 /*AVDT MACROS */
579 #define BTTRC_AVDT_API0(api)
580 #define BTTRC_AVDT_API1(api, p1_t,p1_v)
581 #define BTTRC_AVDT_API2(api, p1_t,p1_v,p2_t,p2_v)
582 /***************************************************************************************/
583 /*AVDT_SCB MACROS */
584
585 #define BTTRC_AVDT_SCB_EVENT(event, state)
586 #define BTTRC_AVDT_SCB_ACTION(action)
587 #define BTTRC_AVDT_SCB_STATE(next_state)
588
589 #define BTTRC_AVDT_SCB_DBG0(dbg)
590 #define BTTRC_AVDT_SCB_DBG1(dbg, p1_t,p1_v)
591 #define BTTRC_AVDT_SCB_DBG2(dbg, p1_t,p1_v,p2_t,p2_v)
592 #define BTTRC_AVDT_SCB_DBG3(dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v)
593 #define BTTRC_AVDT_SCB_DBG4(dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v)
594 #define BTTRC_AVDT_SCB_DBG5(dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v,p5_t,p5_v)
595 #define BTTRC_AVDT_SCB_DBG6(dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v,p5_t,p5_v,p6_t,p6_v)
596
597 /***************************************************************************************/
598 /*AVDT_CCB MACROS */
599
600 #define BTTRC_AVDT_CCB_EVENT(event, state)
601 #define BTTRC_AVDT_CCB_ACTION(action)
602 #define BTTRC_AVDT_CCB_STATE(next_state)
603
604 #define BTTRC_AVDT_CCB_DBG0(dbg)
605 #define BTTRC_AVDT_CCB_DBG1(dbg, p1_t,p1_v)
606 #define BTTRC_AVDT_CCB_DBG2(dbg, p1_t,p1_v,p2_t,p2_v)
607 #define BTTRC_AVDT_CCB_DBG3(dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v)
608 #define BTTRC_AVDT_CCB_DBG4(dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v)
609 #define BTTRC_AVDT_CCB_DBG5(dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v,p5_t,p5_v)
610 #define BTTRC_AVDT_CCB_DBG6(dbg, p1_t,p1_v,p2_t,p2_v,p3_t,p3_v,p4_t,p4_v,p5_t,p5_v,p6_t,p6_v)
611
612 /***************************************************************************************/
613
614 #endif /*BTTRC_INCLUDED*/
615
616
617 #if (BT_USE_TRACES == TRUE)
618
619 #define BT_TRACE(l,t,...)                         LogMsg((TRACE_CTRL_GENERAL | (l) | TRACE_ORG_STACK | (t)), ##__VA_ARGS__)
620 #define BT_ERROR_TRACE(l,...)                     LogMsg(TRACE_CTRL_GENERAL | (l) | TRACE_ORG_STACK | TRACE_TYPE_ERROR, ##__VA_ARGS__)
621
622 /* Define tracing for the HCI unit
623 */
624
625 #define HCI_TRACE_ERROR(...)                   {if (btu_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HCI, TRACE_TYPE_ERROR, ##__VA_ARGS__);}
626 #define HCI_TRACE_WARNING(...)                 {if (btu_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HCI, TRACE_TYPE_WARNING, ##__VA_ARGS__);}
627 #define HCI_TRACE_EVENT(...)                   {if (btu_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HCI, TRACE_TYPE_EVENT, ##__VA_ARGS__);}
628 #define HCI_TRACE_DEBUG(...)                   {if (btu_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HCI, TRACE_TYPE_DEBUG, ##__VA_ARGS__);}
629
630
631 /* Define tracing for BTM
632 */
633 #define BTM_TRACE_ERROR(...)                     {if (btm_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_BTM, TRACE_TYPE_ERROR, ##__VA_ARGS__);}
634 #define BTM_TRACE_WARNING(...)                   {if (btm_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_BTM, TRACE_TYPE_WARNING, ##__VA_ARGS__);}
635 #define BTM_TRACE_API(...)                       {if (btm_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_BTM, TRACE_TYPE_API, ##__VA_ARGS__);}
636 #define BTM_TRACE_EVENT(...)                     {if (btm_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_BTM, TRACE_TYPE_EVENT, ##__VA_ARGS__);}
637 #define BTM_TRACE_DEBUG(...)                     {if (btm_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_BTM, TRACE_TYPE_DEBUG, ##__VA_ARGS__);}
638
639
640 /* Define tracing for the L2CAP unit
641 */
642 #define L2CAP_TRACE_ERROR0(m)                     {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_ERROR, m);}
643 #define L2CAP_TRACE_ERROR1(m,p1)                  {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_ERROR, m,p1);}
644 #define L2CAP_TRACE_ERROR2(m,p1,p2)               {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_ERROR, m,p1,p2);}
645 #define L2CAP_TRACE_ERROR3(m,p1,p2,p3)            {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_ERROR, m,p1,p2,p3);}
646 #define L2CAP_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
647 #define L2CAP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
648 #define L2CAP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
649
650 #define L2CAP_TRACE_WARNING0(m)                   {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_WARNING, m);}
651 #define L2CAP_TRACE_WARNING1(m,p1)                {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_WARNING, m,p1);}
652 #define L2CAP_TRACE_WARNING2(m,p1,p2)             {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_WARNING, m,p1,p2);}
653 #define L2CAP_TRACE_WARNING3(m,p1,p2,p3)          {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_WARNING, m,p1,p2,p3);}
654 #define L2CAP_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
655 #define L2CAP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
656 #define L2CAP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
657
658 #define L2CAP_TRACE_API0(m)                       {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_API, m);}
659 #define L2CAP_TRACE_API1(m,p1)                    {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_API, m,p1);}
660 #define L2CAP_TRACE_API2(m,p1,p2)                 {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_API, m,p1,p2);}
661 #define L2CAP_TRACE_API3(m,p1,p2,p3)              {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_API, m,p1,p2,p3);}
662 #define L2CAP_TRACE_API4(m,p1,p2,p3,p4)           {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_API, m,p1,p2,p3,p4);}
663 #define L2CAP_TRACE_API5(m,p1,p2,p3,p4,p5)        {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
664 #define L2CAP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)     {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
665
666 #define L2CAP_TRACE_EVENT0(m)                     {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_EVENT, m);}
667 #define L2CAP_TRACE_EVENT1(m,p1)                  {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_EVENT, m, p1);}
668 #define L2CAP_TRACE_EVENT2(m,p1,p2)               {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_EVENT, m,p1,p2);}
669 #define L2CAP_TRACE_EVENT3(m,p1,p2,p3)            {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_EVENT, m,p1,p2,p3);}
670 #define L2CAP_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
671 #define L2CAP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
672 #define L2CAP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
673
674 #define L2CAP_TRACE_DEBUG0(m)                     {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_DEBUG, m);}
675 #define L2CAP_TRACE_DEBUG1(m,p1)                  {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_DEBUG, m,p1);}
676 #define L2CAP_TRACE_DEBUG2(m,p1,p2)               {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_DEBUG, m,p1,p2);}
677 #define L2CAP_TRACE_DEBUG3(m,p1,p2,p3)            {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
678 #define L2CAP_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
679 #define L2CAP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
680 #define L2CAP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (l2cb.l2cap_trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_L2CAP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
681
682 /* Define tracing for the LLCP unit
683 */
684 #define LLCP_TRACE_ERROR0(m)                     {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_ERROR, m);}
685 #define LLCP_TRACE_ERROR1(m,p1)                  {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_ERROR, m,p1);}
686 #define LLCP_TRACE_ERROR2(m,p1,p2)               {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_ERROR, m,p1,p2);}
687 #define LLCP_TRACE_ERROR3(m,p1,p2,p3)            {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_ERROR, m,p1,p2,p3);}
688 #define LLCP_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
689 #define LLCP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
690 #define LLCP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
691
692 #define LLCP_TRACE_WARNING0(m)                   {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_WARNING, m);}
693 #define LLCP_TRACE_WARNING1(m,p1)                {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_WARNING, m,p1);}
694 #define LLCP_TRACE_WARNING2(m,p1,p2)             {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_WARNING, m,p1,p2);}
695 #define LLCP_TRACE_WARNING3(m,p1,p2,p3)          {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_WARNING, m,p1,p2,p3);}
696 #define LLCP_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
697 #define LLCP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
698 #define LLCP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
699
700 #define LLCP_TRACE_API0(m)                       {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_API, m);}
701 #define LLCP_TRACE_API1(m,p1)                    {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_API, m,p1);}
702 #define LLCP_TRACE_API2(m,p1,p2)                 {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_API, m,p1,p2);}
703 #define LLCP_TRACE_API3(m,p1,p2,p3)              {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_API, m,p1,p2,p3);}
704 #define LLCP_TRACE_API4(m,p1,p2,p3,p4)           {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_API, m,p1,p2,p3,p4);}
705 #define LLCP_TRACE_API5(m,p1,p2,p3,p4,p5)        {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
706 #define LLCP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)     {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
707
708 #define LLCP_TRACE_EVENT0(m)                     {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_EVENT, m);}
709 #define LLCP_TRACE_EVENT1(m,p1)                  {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_EVENT, m, p1);}
710 #define LLCP_TRACE_EVENT2(m,p1,p2)               {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_EVENT, m,p1,p2);}
711 #define LLCP_TRACE_EVENT3(m,p1,p2,p3)            {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_EVENT, m,p1,p2,p3);}
712 #define LLCP_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
713 #define LLCP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
714 #define LLCP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
715
716 #define LLCP_TRACE_DEBUG0(m)                     {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_DEBUG, m);}
717 #define LLCP_TRACE_DEBUG1(m,p1)                  {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_DEBUG, m,p1);}
718 #define LLCP_TRACE_DEBUG2(m,p1,p2)               {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_DEBUG, m,p1,p2);}
719 #define LLCP_TRACE_DEBUG3(m,p1,p2,p3)            {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
720 #define LLCP_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
721 #define LLCP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
722 #define LLCP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (llcp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_LLCP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
723
724 /* Define tracing for the SDP unit
725 */
726 #define SDP_TRACE_ERROR0(m)                     {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_ERROR, m);}
727 #define SDP_TRACE_ERROR1(m,p1)                  {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_ERROR, m,p1);}
728 #define SDP_TRACE_ERROR2(m,p1,p2)               {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_ERROR, m,p1,p2);}
729 #define SDP_TRACE_ERROR3(m,p1,p2,p3)            {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_ERROR, m,p1,p2,p3);}
730 #define SDP_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
731 #define SDP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
732 #define SDP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
733
734 #define SDP_TRACE_WARNING0(m)                   {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_WARNING, m);}
735 #define SDP_TRACE_WARNING1(m,p1)                {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_WARNING, m,p1);}
736 #define SDP_TRACE_WARNING2(m,p1,p2)             {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_WARNING, m,p1,p2);}
737 #define SDP_TRACE_WARNING3(m,p1,p2,p3)          {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_WARNING, m,p1,p2,p3);}
738 #define SDP_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
739 #define SDP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
740 #define SDP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
741
742 #define SDP_TRACE_API0(m)                       {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_API, m);}
743 #define SDP_TRACE_API1(m,p1)                    {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_API, m,p1);}
744 #define SDP_TRACE_API2(m,p1,p2)                 {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_API, m,p1,p2);}
745 #define SDP_TRACE_API3(m,p1,p2,p3)              {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_API, m,p1,p2,p3);}
746 #define SDP_TRACE_API4(m,p1,p2,p3,p4)           {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_API, m,p1,p2,p3,p4);}
747 #define SDP_TRACE_API5(m,p1,p2,p3,p4,p5)        {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
748 #define SDP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)     {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
749
750 #define SDP_TRACE_EVENT0(m)                     {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_EVENT, m);}
751 #define SDP_TRACE_EVENT1(m,p1)                  {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_EVENT, m, p1);}
752 #define SDP_TRACE_EVENT2(m,p1,p2)               {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_EVENT, m,p1,p2);}
753 #define SDP_TRACE_EVENT3(m,p1,p2,p3)            {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_EVENT, m,p1,p2,p3);}
754 #define SDP_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
755 #define SDP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
756 #define SDP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
757
758 #define SDP_TRACE_DEBUG0(m)                     {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_DEBUG, m);}
759 #define SDP_TRACE_DEBUG1(m,p1)                  {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_DEBUG, m,p1);}
760 #define SDP_TRACE_DEBUG2(m,p1,p2)               {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_DEBUG, m,p1,p2);}
761 #define SDP_TRACE_DEBUG3(m,p1,p2,p3)            {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
762 #define SDP_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
763 #define SDP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
764 #define SDP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (sdp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_SDP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
765
766 /* Define tracing for the RFCOMM unit
767 */
768 #define RFCOMM_TRACE_ERROR0(m)                     {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_ERROR, m);}
769 #define RFCOMM_TRACE_ERROR1(m,p1)                  {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_ERROR, m,p1);}
770 #define RFCOMM_TRACE_ERROR2(m,p1,p2)               {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_ERROR, m,p1,p2);}
771 #define RFCOMM_TRACE_ERROR3(m,p1,p2,p3)            {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_ERROR, m,p1,p2,p3);}
772 #define RFCOMM_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
773 #define RFCOMM_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
774 #define RFCOMM_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
775
776 #define RFCOMM_TRACE_WARNING0(m)                   {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_WARNING, m);}
777 #define RFCOMM_TRACE_WARNING1(m,p1)                {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_WARNING, m,p1);}
778 #define RFCOMM_TRACE_WARNING2(m,p1,p2)             {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_WARNING, m,p1,p2);}
779 #define RFCOMM_TRACE_WARNING3(m,p1,p2,p3)          {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_WARNING, m,p1,p2,p3);}
780 #define RFCOMM_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
781 #define RFCOMM_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
782 #define RFCOMM_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
783
784 #define RFCOMM_TRACE_API0(m)                       {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_API, m);}
785 #define RFCOMM_TRACE_API1(m,p1)                    {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_API, m,p1);}
786 #define RFCOMM_TRACE_API2(m,p1,p2)                 {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_API, m,p1,p2);}
787 #define RFCOMM_TRACE_API3(m,p1,p2,p3)              {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_API, m,p1,p2,p3);}
788 #define RFCOMM_TRACE_API4(m,p1,p2,p3,p4)           {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_API, m,p1,p2,p3,p4);}
789 #define RFCOMM_TRACE_API5(m,p1,p2,p3,p4,p5)        {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
790 #define RFCOMM_TRACE_API6(m,p1,p2,p3,p4,p5,p6)     {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
791
792 #define RFCOMM_TRACE_EVENT0(m)                     {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_EVENT, m);}
793 #define RFCOMM_TRACE_EVENT1(m,p1)                  {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_EVENT, m, p1);}
794 #define RFCOMM_TRACE_EVENT2(m,p1,p2)               {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_EVENT, m,p1,p2);}
795 #define RFCOMM_TRACE_EVENT3(m,p1,p2,p3)            {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_EVENT, m,p1,p2,p3);}
796 #define RFCOMM_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
797 #define RFCOMM_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
798 #define RFCOMM_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
799
800 #define RFCOMM_TRACE_DEBUG0(m)                     {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_DEBUG, m);}
801 #define RFCOMM_TRACE_DEBUG1(m,p1)                  {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_DEBUG, m,p1);}
802 #define RFCOMM_TRACE_DEBUG2(m,p1,p2)               {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_DEBUG, m,p1,p2);}
803 #define RFCOMM_TRACE_DEBUG3(m,p1,p2,p3)            {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
804 #define RFCOMM_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
805 #define RFCOMM_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
806 #define RFCOMM_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (rfc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_RFCOMM, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
807
808 /* Define tracing for Serial Port Profile
809 */
810 #define SPP_TRACE_ERROR0(m)                     {if (spp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_ERROR, m);}
811 #define SPP_TRACE_ERROR1(m,p1)                  {if (spp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_ERROR, m,p1);}
812 #define SPP_TRACE_ERROR2(m,p1,p2)               {if (spp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_ERROR, m,p1,p2);}
813 #define SPP_TRACE_ERROR3(m,p1,p2,p3)            {if (spp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_ERROR, m,p1,p2,p3);}
814 #define SPP_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (spp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
815 #define SPP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (spp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
816 #define SPP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (spp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
817
818 #define SPP_TRACE_WARNING0(m)                   {if (spp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_WARNING, m);}
819 #define SPP_TRACE_WARNING1(m,p1)                {if (spp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_WARNING, m,p1);}
820 #define SPP_TRACE_WARNING2(m,p1,p2)             {if (spp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_WARNING, m,p1,p2);}
821 #define SPP_TRACE_WARNING3(m,p1,p2,p3)          {if (spp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_WARNING, m,p1,p2,p3);}
822 #define SPP_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (spp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
823 #define SPP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (spp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
824 #define SPP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (spp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
825
826 #define SPP_TRACE_EVENT0(m)                     {if (spp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_EVENT, m);}
827 #define SPP_TRACE_EVENT1(m,p1)                  {if (spp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_EVENT, m, p1);}
828 #define SPP_TRACE_EVENT2(m,p1,p2)               {if (spp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_EVENT, m,p1,p2);}
829 #define SPP_TRACE_EVENT3(m,p1,p2,p3)            {if (spp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_EVENT, m,p1,p2,p3);}
830 #define SPP_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (spp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
831 #define SPP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (spp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
832 #define SPP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (spp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
833
834 #define SPP_TRACE_API0(m)                       {if (spp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_API, m);}
835 #define SPP_TRACE_API1(m,p1)                    {if (spp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_API, m, p1);}
836 #define SPP_TRACE_API2(m,p1,p2)                 {if (spp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_API, m,p1,p2);}
837 #define SPP_TRACE_API3(m,p1,p2,p3)              {if (spp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_API, m,p1,p2,p3);}
838 #define SPP_TRACE_API4(m,p1,p2,p3,p4)           {if (spp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_API, m,p1,p2,p3,p4);}
839 #define SPP_TRACE_API5(m,p1,p2,p3,p4,p5)        {if (spp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
840 #define SPP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)     {if (spp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
841
842 #define SPP_TRACE_DEBUG0(m)                     {if (spp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_DEBUG, m);}
843 #define SPP_TRACE_DEBUG1(m,p1)                  {if (spp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_DEBUG, m,p1);}
844 #define SPP_TRACE_DEBUG2(m,p1,p2)               {if (spp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_DEBUG, m,p1,p2);}
845 #define SPP_TRACE_DEBUG3(m,p1,p2,p3)            {if (spp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
846 #define SPP_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (spp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
847 #define SPP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (spp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
848 #define SPP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (spp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_SPP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
849
850 /* Generic Access Profile traces */
851 #define GAP_TRACE_ERROR0(m)                     {if (gap_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_GAP, TRACE_TYPE_ERROR, m);}
852 #define GAP_TRACE_ERROR1(m,p1)                  {if (gap_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_GAP, TRACE_TYPE_ERROR, m, p1);}
853 #define GAP_TRACE_ERROR2(m,p1,p2)               {if (gap_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_GAP, TRACE_TYPE_ERROR, m,p1,p2);}
854 #define GAP_TRACE_ERROR3(m,p1,p2,p3)            {if (gap_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_GAP, TRACE_TYPE_ERROR, m,p1,p2,p3);}
855 #define GAP_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (gap_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_GAP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
856 #define GAP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (gap_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_GAP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
857 #define GAP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (gap_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_GAP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
858
859 #define GAP_TRACE_EVENT0(m)                     {if (gap_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_GAP, TRACE_TYPE_EVENT, m);}
860 #define GAP_TRACE_EVENT1(m,p1)                  {if (gap_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_GAP, TRACE_TYPE_EVENT, m, p1);}
861 #define GAP_TRACE_EVENT2(m,p1,p2)               {if (gap_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_GAP, TRACE_TYPE_EVENT, m,p1,p2);}
862 #define GAP_TRACE_EVENT3(m,p1,p2,p3)            {if (gap_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_GAP, TRACE_TYPE_EVENT, m,p1,p2,p3);}
863 #define GAP_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (gap_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_GAP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
864 #define GAP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (gap_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_GAP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
865 #define GAP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (gap_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_GAP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
866
867 #define GAP_TRACE_API0(m)                       {if (gap_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_GAP, TRACE_TYPE_API, m);}
868 #define GAP_TRACE_API1(m,p1)                    {if (gap_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_GAP, TRACE_TYPE_API, m, p1);}
869 #define GAP_TRACE_API2(m,p1,p2)                 {if (gap_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_GAP, TRACE_TYPE_API, m,p1,p2);}
870 #define GAP_TRACE_API3(m,p1,p2,p3)              {if (gap_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_GAP, TRACE_TYPE_API, m,p1,p2,p3);}
871 #define GAP_TRACE_API4(m,p1,p2,p3,p4)           {if (gap_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_GAP, TRACE_TYPE_API, m,p1,p2,p3,p4);}
872 #define GAP_TRACE_API5(m,p1,p2,p3,p4,p5)        {if (gap_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_GAP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
873 #define GAP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)     {if (gap_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_GAP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
874
875 #define GAP_TRACE_WARNING0(m)                   {if (gap_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_GAP, TRACE_TYPE_WARNING, m);}
876 #define GAP_TRACE_WARNING1(m,p1)                {if (gap_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_GAP, TRACE_TYPE_WARNING, m, p1);}
877 #define GAP_TRACE_WARNING2(m,p1,p2)             {if (gap_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_GAP, TRACE_TYPE_WARNING, m,p1,p2);}
878 #define GAP_TRACE_WARNING3(m,p1,p2,p3)          {if (gap_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_GAP, TRACE_TYPE_WARNING, m,p1,p2,p3);}
879 #define GAP_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (gap_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_GAP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
880 #define GAP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (gap_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_GAP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
881 #define GAP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (gap_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_GAP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
882
883
884 /* Define tracing for OBX
885 */
886 #define OBX_TRACE_ERROR0(m)                      {if (obx_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_ERROR, m);}
887 #define OBX_TRACE_ERROR1(m,p1)                   {if (obx_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_ERROR, m,p1);}
888 #define OBX_TRACE_ERROR2(m,p1,p2)                {if (obx_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_ERROR, m,p1,p2);}
889 #define OBX_TRACE_ERROR3(m,p1,p2,p3)             {if (obx_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_ERROR, m,p1,p2,p3);}
890 #define OBX_TRACE_ERROR4(m,p1,p2,p3,p4)          {if (obx_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
891 #define OBX_TRACE_ERROR5(m,p1,p2,p3,p4,p5)       {if (obx_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
892 #define OBX_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)    {if (obx_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
893
894 #define OBX_TRACE_WARNING0(m)                    {if (obx_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_WARNING, m);}
895 #define OBX_TRACE_WARNING1(m,p1)                 {if (obx_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_WARNING, m,p1);}
896 #define OBX_TRACE_WARNING2(m,p1,p2)              {if (obx_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_WARNING, m,p1,p2);}
897 #define OBX_TRACE_WARNING3(m,p1,p2,p3)           {if (obx_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_WARNING, m,p1,p2,p3);}
898 #define OBX_TRACE_WARNING4(m,p1,p2,p3,p4)        {if (obx_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
899 #define OBX_TRACE_WARNING5(m,p1,p2,p3,p4,p5)     {if (obx_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
900 #define OBX_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)  {if (obx_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
901
902 #define OBX_TRACE_EVENT0(m)                      {if (obx_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_EVENT, m);}
903 #define OBX_TRACE_EVENT1(m,p1)                   {if (obx_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_EVENT, m, p1);}
904 #define OBX_TRACE_EVENT2(m,p1,p2)                {if (obx_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_EVENT, m,p1,p2);}
905 #define OBX_TRACE_EVENT3(m,p1,p2,p3)             {if (obx_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_EVENT, m,p1,p2,p3);}
906 #define OBX_TRACE_EVENT4(m,p1,p2,p3,p4)          {if (obx_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
907 #define OBX_TRACE_EVENT5(m,p1,p2,p3,p4,p5)       {if (obx_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
908 #define OBX_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)    {if (obx_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
909
910 #define OBX_TRACE_DEBUG0(m)                      {if (obx_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_DEBUG, m);}
911 #define OBX_TRACE_DEBUG1(m,p1)                   {if (obx_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_DEBUG, m,p1);}
912 #define OBX_TRACE_DEBUG2(m,p1,p2)                {if (obx_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_DEBUG, m,p1,p2);}
913 #define OBX_TRACE_DEBUG3(m,p1,p2,p3)             {if (obx_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
914 #define OBX_TRACE_DEBUG4(m,p1,p2,p3,p4)          {if (obx_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
915 #define OBX_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)       {if (obx_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
916 #define OBX_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)    {if (obx_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
917
918 #define OBX_TRACE_API0(m)                        {if (obx_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_API, m);}
919 #define OBX_TRACE_API1(m,p1)                     {if (obx_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_API, m, p1);}
920 #define OBX_TRACE_API2(m,p1,p2)                  {if (obx_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_API, m,p1,p2);}
921 #define OBX_TRACE_API3(m,p1,p2,p3)               {if (obx_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_API, m,p1,p2,p3);}
922 #define OBX_TRACE_API4(m,p1,p2,p3,p4)            {if (obx_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_API, m,p1,p2,p3,p4);}
923 #define OBX_TRACE_API5(m,p1,p2,p3,p4,p5)         {if (obx_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
924 #define OBX_TRACE_API6(m,p1,p2,p3,p4,p5,p6)      {if (obx_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_OBEX, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
925
926 /* Define tracing for OBEX application profiles
927 */
928 #define GOEP_TRACE_ERROR0(m)                     {if (goep_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_ERROR, m);}
929 #define GOEP_TRACE_ERROR1(m,p1)                  {if (goep_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_ERROR, m,p1);}
930 #define GOEP_TRACE_ERROR2(m,p1,p2)               {if (goep_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_ERROR, m,p1,p2);}
931 #define GOEP_TRACE_ERROR3(m,p1,p2,p3)            {if (goep_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_ERROR, m,p1,p2,p3);}
932 #define GOEP_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (goep_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
933 #define GOEP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (goep_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
934 #define GOEP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (goep_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
935
936 #define GOEP_TRACE_WARNING0(m)                   {if (goep_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_WARNING, m);}
937 #define GOEP_TRACE_WARNING1(m,p1)                {if (goep_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_WARNING, m,p1);}
938 #define GOEP_TRACE_WARNING2(m,p1,p2)             {if (goep_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_WARNING, m,p1,p2);}
939 #define GOEP_TRACE_WARNING3(m,p1,p2,p3)          {if (goep_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_WARNING, m,p1,p2,p3);}
940 #define GOEP_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (goep_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
941 #define GOEP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (goep_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
942 #define GOEP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (goep_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
943
944 #define GOEP_TRACE_EVENT0(m)                     {if (goep_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_EVENT, m);}
945 #define GOEP_TRACE_EVENT1(m,p1)                  {if (goep_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_EVENT, m, p1);}
946 #define GOEP_TRACE_EVENT2(m,p1,p2)               {if (goep_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_EVENT, m,p1,p2);}
947 #define GOEP_TRACE_EVENT3(m,p1,p2,p3)            {if (goep_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_EVENT, m,p1,p2,p3);}
948 #define GOEP_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (goep_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
949 #define GOEP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (goep_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
950 #define GOEP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (goep_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
951
952 #define GOEP_TRACE_DEBUG0(m)                     {if (goep_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_DEBUG, m);}
953 #define GOEP_TRACE_DEBUG1(m,p1)                  {if (goep_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_DEBUG, m,p1);}
954 #define GOEP_TRACE_DEBUG2(m,p1,p2)               {if (goep_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_DEBUG, m,p1,p2);}
955 #define GOEP_TRACE_DEBUG3(m,p1,p2,p3)            {if (goep_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
956 #define GOEP_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (goep_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
957 #define GOEP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (goep_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
958 #define GOEP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (goep_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
959
960 #define GOEP_TRACE_API0(m)                       {if (goep_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_API, m);}
961 #define GOEP_TRACE_API1(m,p1)                    {if (goep_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_API, m, p1);}
962 #define GOEP_TRACE_API2(m,p1,p2)                 {if (goep_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_API, m,p1,p2);}
963 #define GOEP_TRACE_API3(m,p1,p2,p3)              {if (goep_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_API, m,p1,p2,p3);}
964 #define GOEP_TRACE_API4(m,p1,p2,p3,p4)           {if (goep_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_API, m,p1,p2,p3,p4);}
965 #define GOEP_TRACE_API5(m,p1,p2,p3,p4,p5)        {if (goep_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
966 #define GOEP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)     {if (goep_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_GOEP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
967
968 /* Define tracing for the BPP profile
969 */
970 #define BPP_TRACE_ERROR0(m)                      {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_ERROR, m);}
971 #define BPP_TRACE_ERROR1(m,p1)                   {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_ERROR, m,p1);}
972 #define BPP_TRACE_ERROR2(m,p1,p2)                {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_ERROR, m,p1,p2);}
973 #define BPP_TRACE_ERROR3(m,p1,p2,p3)             {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_ERROR, m,p1,p2,p3);}
974 #define BPP_TRACE_ERROR4(m,p1,p2,p3,p4)          {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
975 #define BPP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)       {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
976 #define BPP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)    {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
977
978 #define BPP_TRACE_WARNING0(m)                    {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_WARNING, m);}
979 #define BPP_TRACE_WARNING1(m,p1)                 {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_WARNING, m,p1);}
980 #define BPP_TRACE_WARNING2(m,p1,p2)              {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_WARNING, m,p1,p2);}
981 #define BPP_TRACE_WARNING3(m,p1,p2,p3)           {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_WARNING, m,p1,p2,p3);}
982 #define BPP_TRACE_WARNING4(m,p1,p2,p3,p4)        {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
983 #define BPP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)     {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
984 #define BPP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)  {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
985
986 #define BPP_TRACE_EVENT0(m)                      {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_EVENT, m);}
987 #define BPP_TRACE_EVENT1(m,p1)                   {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_EVENT, m, p1);}
988 #define BPP_TRACE_EVENT2(m,p1,p2)                {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_EVENT, m,p1,p2);}
989 #define BPP_TRACE_EVENT3(m,p1,p2,p3)             {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_EVENT, m,p1,p2,p3);}
990 #define BPP_TRACE_EVENT4(m,p1,p2,p3,p4)          {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
991 #define BPP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)       {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
992 #define BPP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)    {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
993
994 #define BPP_TRACE_DEBUG0(m)                      {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_DEBUG, m);}
995 #define BPP_TRACE_DEBUG1(m,p1)                   {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_DEBUG, m,p1);}
996 #define BPP_TRACE_DEBUG2(m,p1,p2)                {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_DEBUG, m,p1,p2);}
997 #define BPP_TRACE_DEBUG3(m,p1,p2,p3)             {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
998 #define BPP_TRACE_DEBUG4(m,p1,p2,p3,p4)          {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
999 #define BPP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)       {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
1000 #define BPP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)    {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
1001
1002 #define BPP_TRACE_API0(m)                        {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_API, m);}
1003 #define BPP_TRACE_API1(m,p1)                     {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_API, m, p1);}
1004 #define BPP_TRACE_API2(m,p1,p2)                  {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_API, m,p1,p2);}
1005 #define BPP_TRACE_API3(m,p1,p2,p3)               {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_API, m,p1,p2,p3);}
1006 #define BPP_TRACE_API4(m,p1,p2,p3,p4)            {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_API, m,p1,p2,p3,p4);}
1007 #define BPP_TRACE_API5(m,p1,p2,p3,p4,p5)         {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
1008 #define BPP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)      {if (bpp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_BPP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
1009
1010 /* Define tracing for the BIP profile
1011 */
1012 #define BIP_TRACE_ERROR0(m)                      {if (bip_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_ERROR, m);}
1013 #define BIP_TRACE_ERROR1(m,p1)                   {if (bip_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_ERROR, m,p1);}
1014 #define BIP_TRACE_ERROR2(m,p1,p2)                {if (bip_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_ERROR, m,p1,p2);}
1015 #define BIP_TRACE_ERROR3(m,p1,p2,p3)             {if (bip_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_ERROR, m,p1,p2,p3);}
1016 #define BIP_TRACE_ERROR4(m,p1,p2,p3,p4)          {if (bip_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
1017 #define BIP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)       {if (bip_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
1018 #define BIP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)    {if (bip_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
1019
1020 #define BIP_TRACE_WARNING0(m)                    {if (bip_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_WARNING, m);}
1021 #define BIP_TRACE_WARNING1(m,p1)                 {if (bip_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_WARNING, m,p1);}
1022 #define BIP_TRACE_WARNING2(m,p1,p2)              {if (bip_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_WARNING, m,p1,p2);}
1023 #define BIP_TRACE_WARNING3(m,p1,p2,p3)           {if (bip_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_WARNING, m,p1,p2,p3);}
1024 #define BIP_TRACE_WARNING4(m,p1,p2,p3,p4)        {if (bip_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
1025 #define BIP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)     {if (bip_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
1026 #define BIP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)  {if (bip_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
1027
1028 #define BIP_TRACE_EVENT0(m)                      {if (bip_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_EVENT, m);}
1029 #define BIP_TRACE_EVENT1(m,p1)                   {if (bip_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_EVENT, m, p1);}
1030 #define BIP_TRACE_EVENT2(m,p1,p2)                {if (bip_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_EVENT, m,p1,p2);}
1031 #define BIP_TRACE_EVENT3(m,p1,p2,p3)             {if (bip_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_EVENT, m,p1,p2,p3);}
1032 #define BIP_TRACE_EVENT4(m,p1,p2,p3,p4)          {if (bip_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
1033 #define BIP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)       {if (bip_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
1034 #define BIP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)    {if (bip_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
1035
1036 #define BIP_TRACE_DEBUG0(m)                      {if (bip_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_DEBUG, m);}
1037 #define BIP_TRACE_DEBUG1(m,p1)                   {if (bip_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_DEBUG, m,p1);}
1038 #define BIP_TRACE_DEBUG2(m,p1,p2)                {if (bip_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_DEBUG, m,p1,p2);}
1039 #define BIP_TRACE_DEBUG3(m,p1,p2,p3)             {if (bip_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
1040 #define BIP_TRACE_DEBUG4(m,p1,p2,p3,p4)          {if (bip_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
1041 #define BIP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)       {if (bip_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
1042 #define BIP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)    {if (bip_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
1043
1044 #define BIP_TRACE_API0(m)                        {if (bip_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_API, m);}
1045 #define BIP_TRACE_API1(m,p1)                     {if (bip_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_API, m, p1);}
1046 #define BIP_TRACE_API2(m,p1,p2)                  {if (bip_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_API, m,p1,p2);}
1047 #define BIP_TRACE_API3(m,p1,p2,p3)               {if (bip_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_API, m,p1,p2,p3);}
1048 #define BIP_TRACE_API4(m,p1,p2,p3,p4)            {if (bip_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_API, m,p1,p2,p3,p4);}
1049 #define BIP_TRACE_API5(m,p1,p2,p3,p4,p5)         {if (bip_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
1050 #define BIP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)      {if (bip_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_BIP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
1051
1052 /* Define tracing for TCS
1053 */
1054 #define TCS_TRACE_ERROR0(m)                     {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_ERROR, m);}
1055 #define TCS_TRACE_ERROR1(m,p1)                  {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_ERROR, m,p1);}
1056 #define TCS_TRACE_ERROR2(m,p1,p2)               {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_ERROR, m,p1,p2);}
1057 #define TCS_TRACE_ERROR3(m,p1,p2,p3)            {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_ERROR, m,p1,p2,p3);}
1058 #define TCS_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
1059 #define TCS_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
1060 #define TCS_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
1061
1062 #define TCS_TRACE_WARNING0(m)                   {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_WARNING, m);}
1063 #define TCS_TRACE_WARNING1(m,p1)                {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_WARNING, m,p1);}
1064 #define TCS_TRACE_WARNING2(m,p1,p2)             {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_WARNING, m,p1,p2);}
1065 #define TCS_TRACE_WARNING3(m,p1,p2,p3)          {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_WARNING, m,p1,p2,p3);}
1066 #define TCS_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
1067 #define TCS_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
1068 #define TCS_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
1069
1070 #define TCS_TRACE_EVENT0(m)                     {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_EVENT, m);}
1071 #define TCS_TRACE_EVENT1(m,p1)                  {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_EVENT, m, p1);}
1072 #define TCS_TRACE_EVENT2(m,p1,p2)               {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_EVENT, m,p1,p2);}
1073 #define TCS_TRACE_EVENT3(m,p1,p2,p3)            {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_EVENT, m,p1,p2,p3);}
1074 #define TCS_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
1075 #define TCS_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
1076 #define TCS_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
1077
1078 #define TCS_TRACE_DEBUG0(m)                     {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_DEBUG, m);}
1079 #define TCS_TRACE_DEBUG1(m,p1)                  {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_DEBUG, m,p1);}
1080 #define TCS_TRACE_DEBUG2(m,p1,p2)               {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_DEBUG, m,p1,p2);}
1081 #define TCS_TRACE_DEBUG3(m,p1,p2,p3)            {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
1082 #define TCS_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
1083 #define TCS_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
1084 #define TCS_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
1085
1086 #define TCS_TRACE_API0(m)                       {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_API, m);}
1087 #define TCS_TRACE_API1(m,p1)                    {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_API, m, p1);}
1088 #define TCS_TRACE_API2(m,p1,p2)                 {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_API, m,p1,p2);}
1089 #define TCS_TRACE_API3(m,p1,p2,p3)              {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_API, m,p1,p2,p3);}
1090 #define TCS_TRACE_API4(m,p1,p2,p3,p4)           {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_API, m,p1,p2,p3,p4);}
1091 #define TCS_TRACE_API5(m,p1,p2,p3,p4,p5)        {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
1092 #define TCS_TRACE_API6(m,p1,p2,p3,p4,p5,p6)     {if (tcs_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_TCS, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
1093
1094 /* Define tracing for ICP
1095 */
1096 #define ICP_TRACE_ERROR0(m)                     {if (icp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_ERROR, m);}
1097 #define ICP_TRACE_ERROR1(m,p1)                  {if (icp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_ERROR, m,p1);}
1098 #define ICP_TRACE_ERROR2(m,p1,p2)               {if (icp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_ERROR, m,p1,p2);}
1099 #define ICP_TRACE_ERROR3(m,p1,p2,p3)            {if (icp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_ERROR, m,p1,p2,p3);}
1100 #define ICP_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (icp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
1101 #define ICP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (icp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
1102 #define ICP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (icp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
1103
1104 #define ICP_TRACE_WARNING0(m)                   {if (icp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_WARNING, m);}
1105 #define ICP_TRACE_WARNING1(m,p1)                {if (icp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_WARNING, m,p1);}
1106 #define ICP_TRACE_WARNING2(m,p1,p2)             {if (icp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_WARNING, m,p1,p2);}
1107 #define ICP_TRACE_WARNING3(m,p1,p2,p3)          {if (icp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_WARNING, m,p1,p2,p3);}
1108 #define ICP_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (icp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
1109 #define ICP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (icp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
1110 #define ICP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (icp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
1111
1112 #define ICP_TRACE_EVENT0(m)                     {if (icp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_EVENT, m);}
1113 #define ICP_TRACE_EVENT1(m,p1)                  {if (icp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_EVENT, m, p1);}
1114 #define ICP_TRACE_EVENT2(m,p1,p2)               {if (icp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_EVENT, m,p1,p2);}
1115 #define ICP_TRACE_EVENT3(m,p1,p2,p3)            {if (icp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_EVENT, m,p1,p2,p3);}
1116 #define ICP_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (icp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
1117 #define ICP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (icp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
1118 #define ICP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (icp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
1119
1120 #define ICP_TRACE_DEBUG0(m)                     {if (icp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_DEBUG, m);}
1121 #define ICP_TRACE_DEBUG1(m,p1)                  {if (icp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_DEBUG, m,p1);}
1122 #define ICP_TRACE_DEBUG2(m,p1,p2)               {if (icp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_DEBUG, m,p1,p2);}
1123 #define ICP_TRACE_DEBUG3(m,p1,p2,p3)            {if (icp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
1124 #define ICP_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (icp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
1125 #define ICP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (icp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
1126 #define ICP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (icp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
1127
1128 #define ICP_TRACE_API0(m)                       {if (icp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_API, m);}
1129 #define ICP_TRACE_API1(m,p1)                    {if (icp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_API, m, p1);}
1130 #define ICP_TRACE_API2(m,p1,p2)                 {if (icp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_API, m,p1,p2);}
1131 #define ICP_TRACE_API3(m,p1,p2,p3)              {if (icp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_API, m,p1,p2,p3);}
1132 #define ICP_TRACE_API4(m,p1,p2,p3,p4)           {if (icp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_API, m,p1,p2,p3,p4);}
1133 #define ICP_TRACE_API5(m,p1,p2,p3,p4,p5)        {if (icp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
1134 #define ICP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)     {if (icp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_ICP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
1135
1136 /* CTP */
1137 #define CTP_TRACE_ERROR0(m)                     {if (ctp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_CTP, TRACE_TYPE_ERROR, m);}
1138 #define CTP_TRACE_ERROR1(m,p1)                  {if (ctp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_CTP, TRACE_TYPE_ERROR, m,p1);}
1139 #define CTP_TRACE_ERROR2(m,p1,p2)               {if (ctp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_CTP, TRACE_TYPE_ERROR, m,p1,p2);}
1140 #define CTP_TRACE_ERROR3(m,p1,p2,p3)            {if (ctp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_CTP, TRACE_TYPE_ERROR, m,p1,p2,p3);}
1141 #define CTP_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (ctp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_CTP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
1142 #define CTP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (ctp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_CTP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
1143 #define CTP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (ctp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_CTP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
1144
1145 #define CTP_TRACE_WARNING0(m)                   {if (ctp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_CTP, TRACE_TYPE_WARNING, m);}
1146 #define CTP_TRACE_WARNING1(m,p1)                {if (ctp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_CTP, TRACE_TYPE_WARNING, m,p1);}
1147 #define CTP_TRACE_WARNING2(m,p1,p2)             {if (ctp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_CTP, TRACE_TYPE_WARNING, m,p1,p2);}
1148 #define CTP_TRACE_WARNING3(m,p1,p2,p3)          {if (ctp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_CTP, TRACE_TYPE_WARNING, m,p1,p2,p3);}
1149 #define CTP_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (ctp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_CTP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
1150 #define CTP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (ctp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_CTP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
1151 #define CTP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (ctp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_CTP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
1152
1153 #define CTP_TRACE_EVENT0(m)                     {if (ctp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_CTP, TRACE_TYPE_EVENT, m);}
1154 #define CTP_TRACE_EVENT1(m,p1)                  {if (ctp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_CTP, TRACE_TYPE_EVENT, m, p1);}
1155 #define CTP_TRACE_EVENT2(m,p1,p2)               {if (ctp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_CTP, TRACE_TYPE_EVENT, m,p1,p2);}
1156 #define CTP_TRACE_EVENT3(m,p1,p2,p3)            {if (ctp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_CTP, TRACE_TYPE_EVENT, m,p1,p2,p3);}
1157 #define CTP_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (ctp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_CTP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
1158 #define CTP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (ctp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_CTP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
1159 #define CTP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (ctp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_CTP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
1160
1161 #define CTP_TRACE_DEBUG0(m)                     {if (ctp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_CTP, TRACE_TYPE_DEBUG, m);}
1162 #define CTP_TRACE_DEBUG1(m,p1)                  {if (ctp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_CTP, TRACE_TYPE_DEBUG, m,p1);}
1163 #define CTP_TRACE_DEBUG2(m,p1,p2)               {if (ctp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_CTP, TRACE_TYPE_DEBUG, m,p1,p2);}
1164 #define CTP_TRACE_DEBUG3(m,p1,p2,p3)            {if (ctp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_CTP, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
1165 #define CTP_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (ctp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_CTP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
1166 #define CTP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (ctp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_CTP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
1167 #define CTP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (ctp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_CTP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
1168
1169
1170 /* define traces for HID Host */
1171 #define HIDH_TRACE_ERROR0(m)                     {if (hh_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_ERROR, m);}
1172 #define HIDH_TRACE_ERROR1(m,p1)                  {if (hh_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_ERROR, m, p1);}
1173 #define HIDH_TRACE_ERROR2(m,p1,p2)               {if (hh_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_ERROR, m,p1,p2);}
1174 #define HIDH_TRACE_ERROR3(m,p1,p2,p3)            {if (hh_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_ERROR, m,p1,p2,p3);}
1175 #define HIDH_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (hh_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
1176 #define HIDH_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (hh_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
1177 #define HIDH_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (hh_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
1178
1179 #define HIDH_TRACE_WARNING0(m)                   {if (hh_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_WARNING, m);}
1180 #define HIDH_TRACE_WARNING1(m,p1)                {if (hh_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_WARNING, m,p1);}
1181 #define HIDH_TRACE_WARNING2(m,p1,p2)             {if (hh_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_WARNING, m,p1,p2);}
1182 #define HIDH_TRACE_WARNING3(m,p1,p2,p3)          {if (hh_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_WARNING, m,p1,p2,p3);}
1183 #define HIDH_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (hh_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
1184 #define HIDH_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (hh_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
1185 #define HIDH_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (hh_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
1186
1187 #define HIDH_TRACE_API0(m)                       {if (hh_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_API, m);}
1188 #define HIDH_TRACE_API1(m,p1)                    {if (hh_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_API, m, p1);}
1189 #define HIDH_TRACE_API2(m,p1,p2)                 {if (hh_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_API, m,p1,p2);}
1190 #define HIDH_TRACE_API3(m,p1,p2,p3)              {if (hh_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_API, m,p1,p2,p3);}
1191 #define HIDH_TRACE_API4(m,p1,p2,p3,p4)           {if (hh_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_API, m,p1,p2,p3,p4);}
1192 #define HIDH_TRACE_API5(m,p1,p2,p3,p4,p5)        {if (hh_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
1193 #define HIDH_TRACE_API6(m,p1,p2,p3,p4,p5,p6)     {if (hh_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
1194
1195 #define HIDH_TRACE_EVENT0(m)                     {if (hh_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_EVENT, m);}
1196 #define HIDH_TRACE_EVENT1(m,p1)                  {if (hh_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_EVENT, m, p1);}
1197 #define HIDH_TRACE_EVENT2(m,p1,p2)               {if (hh_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_EVENT, m,p1,p2);}
1198 #define HIDH_TRACE_EVENT3(m,p1,p2,p3)            {if (hh_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_EVENT, m,p1,p2,p3);}
1199 #define HIDH_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (hh_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
1200 #define HIDH_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (hh_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
1201 #define HIDH_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (hh_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
1202
1203 #define HIDH_TRACE_DEBUG0(m)                     {if (hh_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_DEBUG, m);}
1204 #define HIDH_TRACE_DEBUG1(m,p1)                  {if (hh_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_DEBUG, m,p1);}
1205 #define HIDH_TRACE_DEBUG2(m,p1,p2)               {if (hh_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_DEBUG, m,p1,p2);}
1206 #define HIDH_TRACE_DEBUG3(m,p1,p2,p3)            {if (hh_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
1207 #define HIDH_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (hh_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
1208 #define HIDH_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (hh_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
1209 #define HIDH_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (hh_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
1210
1211 /* define traces for HID Device */
1212 #define HIDD_TRACE_ERROR0(m)                     {if (hd_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_ERROR, m);}
1213 #define HIDD_TRACE_ERROR1(m,p1)                  {if (hd_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_ERROR, m, p1);}
1214 #define HIDD_TRACE_ERROR2(m,p1,p2)               {if (hd_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_ERROR, m,p1,p2);}
1215 #define HIDD_TRACE_ERROR3(m,p1,p2,p3)            {if (hd_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_ERROR, m,p1,p2,p3);}
1216 #define HIDD_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (hd_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
1217 #define HIDD_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (hd_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
1218 #define HIDD_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (hd_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
1219
1220 #define HIDD_TRACE_WARNING0(m)                   {if (hd_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_WARNING, m);}
1221 #define HIDD_TRACE_WARNING1(m,p1)                {if (hd_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_WARNING, m,p1);}
1222 #define HIDD_TRACE_WARNING2(m,p1,p2)             {if (hd_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_WARNING, m,p1,p2);}
1223 #define HIDD_TRACE_WARNING3(m,p1,p2,p3)          {if (hd_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_WARNING, m,p1,p2,p3);}
1224 #define HIDD_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (hd_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
1225 #define HIDD_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (hd_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
1226 #define HIDD_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (hd_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
1227
1228 #define HIDD_TRACE_API0(m)                       {if (hd_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_API, m);}
1229 #define HIDD_TRACE_API1(m,p1)                    {if (hd_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_API, m, p1);}
1230 #define HIDD_TRACE_API2(m,p1,p2)                 {if (hd_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_API, m,p1,p2);}
1231 #define HIDD_TRACE_API3(m,p1,p2,p3)              {if (hd_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_API, m,p1,p2,p3);}
1232 #define HIDD_TRACE_API4(m,p1,p2,p3,p4)           {if (hd_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_API, m,p1,p2,p3,p4);}
1233 #define HIDD_TRACE_API5(m,p1,p2,p3,p4,p5)        {if (hd_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
1234 #define HIDD_TRACE_API6(m,p1,p2,p3,p4,p5,p6)     {if (hd_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
1235
1236 #define HIDD_TRACE_EVENT0(m)                     {if (hd_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_EVENT, m);}
1237 #define HIDD_TRACE_EVENT1(m,p1)                  {if (hd_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_EVENT, m, p1);}
1238 #define HIDD_TRACE_EVENT2(m,p1,p2)               {if (hd_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_EVENT, m,p1,p2);}
1239 #define HIDD_TRACE_EVENT3(m,p1,p2,p3)            {if (hd_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_EVENT, m,p1,p2,p3);}
1240 #define HIDD_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (hd_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
1241 #define HIDD_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (hd_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
1242 #define HIDD_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (hd_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
1243
1244 #define HIDD_TRACE_DEBUG0(m)                     {if (hd_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_DEBUG, m);}
1245 #define HIDD_TRACE_DEBUG1(m,p1)                  {if (hd_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_DEBUG, m,p1);}
1246 #define HIDD_TRACE_DEBUG2(m,p1,p2)               {if (hd_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_DEBUG, m,p1,p2);}
1247 #define HIDD_TRACE_DEBUG3(m,p1,p2,p3)            {if (hd_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
1248 #define HIDD_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (hd_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
1249 #define HIDD_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (hd_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
1250 #define HIDD_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (hd_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
1251
1252 /* define traces for headset profile */
1253 #define HSP2_TRACE_ERROR0(pcb,m)                     {if (pcb->trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_ERROR, m);}
1254 #define HSP2_TRACE_ERROR1(pcb,m,p1)                  {if (pcb->trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_ERROR, m, p1);}
1255 #define HSP2_TRACE_ERROR2(pcb,m,p1,p2)               {if (pcb->trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_ERROR, m,p1,p2);}
1256 #define HSP2_TRACE_ERROR3(pcb,m,p1,p2,p3)            {if (pcb->trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_ERROR, m,p1,p2,p3);}
1257 #define HSP2_TRACE_ERROR4(pcb,m,p1,p2,p3,p4)         {if (pcb->trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
1258 #define HSP2_TRACE_ERROR5(pcb,m,p1,p2,p3,p4,p5)      {if (pcb->trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
1259 #define HSP2_TRACE_ERROR6(pcb,m,p1,p2,p3,p4,p5,p6)   {if (pcb->trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
1260
1261 #define HSP2_TRACE_WARNING0(pcb,m)                   {if (pcb->trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_WARNING, m);}
1262 #define HSP2_TRACE_WARNING1(pcb,m,p1)                {if (pcb->trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_WARNING, m,p1);}
1263 #define HSP2_TRACE_WARNING2(pcb,m,p1,p2)             {if (pcb->trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_WARNING, m,p1,p2);}
1264 #define HSP2_TRACE_WARNING3(pcb,m,p1,p2,p3)          {if (pcb->trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_WARNING, m,p1,p2,p3);}
1265 #define HSP2_TRACE_WARNING4(pcb,m,p1,p2,p3,p4)       {if (pcb->trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
1266 #define HSP2_TRACE_WARNING5(pcb,m,p1,p2,p3,p4,p5)    {if (pcb->trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
1267 #define HSP2_TRACE_WARNING6(pcb,m,p1,p2,p3,p4,p5,p6) {if (pcb->trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
1268
1269 #define HSP2_TRACE_API0(pcb,m)                       {if (pcb->trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_API, m);}
1270 #define HSP2_TRACE_API1(pcb,m,p1)                    {if (pcb->trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_API, m, p1);}
1271 #define HSP2_TRACE_API2(pcb,m,p1,p2)                 {if (pcb->trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_API, m,p1,p2);}
1272 #define HSP2_TRACE_API3(pcb,m,p1,p2,p3)              {if (pcb->trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_API, m,p1,p2,p3);}
1273 #define HSP2_TRACE_API4(pcb,m,p1,p2,p3,p4)           {if (pcb->trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_API, m,p1,p2,p3,p4);}
1274 #define HSP2_TRACE_API5(pcb,m,p1,p2,p3,p4,p5)        {if (pcb->trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
1275 #define HSP2_TRACE_API6(pcb,m,p1,p2,p3,p4,p5,p6)     {if (pcb->trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
1276
1277 #define HSP2_TRACE_EVENT0(pcb,m)                     {if (pcb->trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_EVENT, m);}
1278 #define HSP2_TRACE_EVENT1(pcb,m,p1)                  {if (pcb->trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_EVENT, m, p1);}
1279 #define HSP2_TRACE_EVENT2(pcb,m,p1,p2)               {if (pcb->trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_EVENT, m,p1,p2);}
1280 #define HSP2_TRACE_EVENT3(pcb,m,p1,p2,p3)            {if (pcb->trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_EVENT, m,p1,p2,p3);}
1281 #define HSP2_TRACE_EVENT4(pcb,m,p1,p2,p3,p4)         {if (pcb->trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
1282 #define HSP2_TRACE_EVENT5(pcb,m,p1,p2,p3,p4,p5)      {if (pcb->trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
1283 #define HSP2_TRACE_EVENT6(pcb,m,p1,p2,p3,p4,p5,p6)   {if (pcb->trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
1284
1285 #define HSP2_TRACE_DEBUG0(pcb,m)                     {if (pcb->trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_DEBUG, m);}
1286 #define HSP2_TRACE_DEBUG1(pcb,m,p1)                  {if (pcb->trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_DEBUG, m,p1);}
1287 #define HSP2_TRACE_DEBUG2(pcb,m,p1,p2)               {if (pcb->trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_DEBUG, m,p1,p2);}
1288 #define HSP2_TRACE_DEBUG3(pcb,m,p1,p2,p3)            {if (pcb->trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
1289 #define HSP2_TRACE_DEBUG4(pcb,m,p1,p2,p3,p4)         {if (pcb->trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
1290 #define HSP2_TRACE_DEBUG5(pcb,m,p1,p2,p3,p4,p5)      {if (pcb->trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
1291 #define HSP2_TRACE_DEBUG6(pcb,m,p1,p2,p3,p4,p5,p6)   {if (pcb->trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HSP2, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
1292
1293 /* Define tracing for the NFC unit
1294 */
1295 #define NFC_TRACE_ERROR0(m)                     {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_ERROR, m);}
1296 #define NFC_TRACE_ERROR1(m,p1)                  {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_ERROR, m,p1);}
1297 #define NFC_TRACE_ERROR2(m,p1,p2)               {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_ERROR, m,p1,p2);}
1298 #define NFC_TRACE_ERROR3(m,p1,p2,p3)            {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_ERROR, m,p1,p2,p3);}
1299 #define NFC_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
1300 #define NFC_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
1301 #define NFC_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
1302
1303 #define NFC_TRACE_WARNING0(m)                   {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_WARNING, m);}
1304 #define NFC_TRACE_WARNING1(m,p1)                {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_WARNING, m,p1);}
1305 #define NFC_TRACE_WARNING2(m,p1,p2)             {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_WARNING, m,p1,p2);}
1306 #define NFC_TRACE_WARNING3(m,p1,p2,p3)          {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_WARNING, m,p1,p2,p3);}
1307 #define NFC_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
1308 #define NFC_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
1309 #define NFC_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
1310
1311 #define NFC_TRACE_API0(m)                       {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_API, m);}
1312 #define NFC_TRACE_API1(m,p1)                    {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_API, m,p1);}
1313 #define NFC_TRACE_API2(m,p1,p2)                 {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_API, m,p1,p2);}
1314 #define NFC_TRACE_API3(m,p1,p2,p3)              {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_API, m,p1,p2,p3);}
1315 #define NFC_TRACE_API4(m,p1,p2,p3,p4)           {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_API, m,p1,p2,p3,p4);}
1316 #define NFC_TRACE_API5(m,p1,p2,p3,p4,p5)        {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
1317 #define NFC_TRACE_API6(m,p1,p2,p3,p4,p5,p6)     {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
1318
1319 #define NFC_TRACE_EVENT0(m)                     {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_EVENT, m);}
1320 #define NFC_TRACE_EVENT1(m,p1)                  {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_EVENT, m, p1);}
1321 #define NFC_TRACE_EVENT2(m,p1,p2)               {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_EVENT, m,p1,p2);}
1322 #define NFC_TRACE_EVENT3(m,p1,p2,p3)            {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_EVENT, m,p1,p2,p3);}
1323 #define NFC_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
1324 #define NFC_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
1325 #define NFC_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
1326
1327 #define NFC_TRACE_DEBUG0(m)                     {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_DEBUG, m);}
1328 #define NFC_TRACE_DEBUG1(m,p1)                  {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_DEBUG, m,p1);}
1329 #define NFC_TRACE_DEBUG2(m,p1,p2)               {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_DEBUG, m,p1,p2);}
1330 #define NFC_TRACE_DEBUG3(m,p1,p2,p3)            {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
1331 #define NFC_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
1332 #define NFC_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
1333 #define NFC_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_NFC, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
1334
1335 #define NCI_TRACE_ERROR0(m)                     {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_ERROR, m);}
1336 #define NCI_TRACE_ERROR1(m,p1)                  {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_ERROR, m,p1);}
1337 #define NCI_TRACE_ERROR2(m,p1,p2)               {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_ERROR, m,p1,p2);}
1338 #define NCI_TRACE_ERROR3(m,p1,p2,p3)            {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_ERROR, m,p1,p2,p3);}
1339 #define NCI_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
1340 #define NCI_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
1341 #define NCI_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
1342
1343 #define NCI_TRACE_WARNING0(m)                   {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_WARNING, m);}
1344 #define NCI_TRACE_WARNING1(m,p1)                {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_WARNING, m,p1);}
1345 #define NCI_TRACE_WARNING2(m,p1,p2)             {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_WARNING, m,p1,p2);}
1346 #define NCI_TRACE_WARNING3(m,p1,p2,p3)          {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_WARNING, m,p1,p2,p3);}
1347 #define NCI_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
1348 #define NCI_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
1349 #define NCI_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
1350
1351 #define NCI_TRACE_API0(m)                       {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_API, m);}
1352 #define NCI_TRACE_API1(m,p1)                    {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_API, m,p1);}
1353 #define NCI_TRACE_API2(m,p1,p2)                 {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_API, m,p1,p2);}
1354 #define NCI_TRACE_API3(m,p1,p2,p3)              {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_API, m,p1,p2,p3);}
1355 #define NCI_TRACE_API4(m,p1,p2,p3,p4)           {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_API, m,p1,p2,p3,p4);}
1356 #define NCI_TRACE_API5(m,p1,p2,p3,p4,p5)        {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
1357 #define NCI_TRACE_API6(m,p1,p2,p3,p4,p5,p6)     {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
1358
1359 #define NCI_TRACE_EVENT0(m)                     {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_EVENT, m);}
1360 #define NCI_TRACE_EVENT1(m,p1)                  {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_EVENT, m, p1);}
1361 #define NCI_TRACE_EVENT2(m,p1,p2)               {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_EVENT, m,p1,p2);}
1362 #define NCI_TRACE_EVENT3(m,p1,p2,p3)            {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_EVENT, m,p1,p2,p3);}
1363 #define NCI_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
1364 #define NCI_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
1365 #define NCI_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
1366
1367 #define NCI_TRACE_DEBUG0(m)                     {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_DEBUG, m);}
1368 #define NCI_TRACE_DEBUG1(m,p1)                  {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_DEBUG, m,p1);}
1369 #define NCI_TRACE_DEBUG2(m,p1,p2)               {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_DEBUG, m,p1,p2);}
1370 #define NCI_TRACE_DEBUG3(m,p1,p2,p3)            {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
1371 #define NCI_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
1372 #define NCI_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
1373 #define NCI_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (nfc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_NCI, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
1374
1375 #define RW_TRACE_ERROR0(m)                     {if (rw_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_ERROR, m);}
1376 #define RW_TRACE_ERROR1(m,p1)                  {if (rw_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_ERROR, m,p1);}
1377 #define RW_TRACE_ERROR2(m,p1,p2)               {if (rw_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_ERROR, m,p1,p2);}
1378 #define RW_TRACE_ERROR3(m,p1,p2,p3)            {if (rw_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_ERROR, m,p1,p2,p3);}
1379 #define RW_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (rw_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
1380 #define RW_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (rw_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
1381 #define RW_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (rw_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
1382
1383 #define RW_TRACE_WARNING0(m)                   {if (rw_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_WARNING, m);}
1384 #define RW_TRACE_WARNING1(m,p1)                {if (rw_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_WARNING, m,p1);}
1385 #define RW_TRACE_WARNING2(m,p1,p2)             {if (rw_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_WARNING, m,p1,p2);}
1386 #define RW_TRACE_WARNING3(m,p1,p2,p3)          {if (rw_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_WARNING, m,p1,p2,p3);}
1387 #define RW_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (rw_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
1388 #define RW_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (rw_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
1389 #define RW_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (rw_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
1390
1391 #define RW_TRACE_API0(m)                       {if (rw_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_API, m);}
1392 #define RW_TRACE_API1(m,p1)                    {if (rw_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_API, m,p1);}
1393 #define RW_TRACE_API2(m,p1,p2)                 {if (rw_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_API, m,p1,p2);}
1394 #define RW_TRACE_API3(m,p1,p2,p3)              {if (rw_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_API, m,p1,p2,p3);}
1395 #define RW_TRACE_API4(m,p1,p2,p3,p4)           {if (rw_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_API, m,p1,p2,p3,p4);}
1396 #define RW_TRACE_API5(m,p1,p2,p3,p4,p5)        {if (rw_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
1397 #define RW_TRACE_API6(m,p1,p2,p3,p4,p5,p6)     {if (rw_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
1398
1399 #define RW_TRACE_EVENT0(m)                     {if (rw_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_EVENT, m);}
1400 #define RW_TRACE_EVENT1(m,p1)                  {if (rw_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_EVENT, m, p1);}
1401 #define RW_TRACE_EVENT2(m,p1,p2)               {if (rw_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_EVENT, m,p1,p2);}
1402 #define RW_TRACE_EVENT3(m,p1,p2,p3)            {if (rw_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_EVENT, m,p1,p2,p3);}
1403 #define RW_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (rw_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
1404 #define RW_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (rw_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
1405 #define RW_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (rw_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
1406
1407 #define RW_TRACE_DEBUG0(m)                     {if (rw_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_DEBUG, m);}
1408 #define RW_TRACE_DEBUG1(m,p1)                  {if (rw_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_DEBUG, m,p1);}
1409 #define RW_TRACE_DEBUG2(m,p1,p2)               {if (rw_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_DEBUG, m,p1,p2);}
1410 #define RW_TRACE_DEBUG3(m,p1,p2,p3)            {if (rw_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
1411 #define RW_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (rw_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
1412 #define RW_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (rw_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
1413 #define RW_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (rw_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_RW, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
1414
1415 #define CE_TRACE_ERROR0(m)                     {if (ce_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_ERROR, m);}
1416 #define CE_TRACE_ERROR1(m,p1)                  {if (ce_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_ERROR, m,p1);}
1417 #define CE_TRACE_ERROR2(m,p1,p2)               {if (ce_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_ERROR, m,p1,p2);}
1418 #define CE_TRACE_ERROR3(m,p1,p2,p3)            {if (ce_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_ERROR, m,p1,p2,p3);}
1419 #define CE_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (ce_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
1420 #define CE_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (ce_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
1421 #define CE_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (ce_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
1422
1423 #define CE_TRACE_WARNING0(m)                   {if (ce_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_WARNING, m);}
1424 #define CE_TRACE_WARNING1(m,p1)                {if (ce_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_WARNING, m,p1);}
1425 #define CE_TRACE_WARNING2(m,p1,p2)             {if (ce_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_WARNING, m,p1,p2);}
1426 #define CE_TRACE_WARNING3(m,p1,p2,p3)          {if (ce_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_WARNING, m,p1,p2,p3);}
1427 #define CE_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (ce_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
1428 #define CE_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (ce_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
1429 #define CE_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (ce_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
1430
1431 #define CE_TRACE_API0(m)                       {if (ce_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_API, m);}
1432 #define CE_TRACE_API1(m,p1)                    {if (ce_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_API, m,p1);}
1433 #define CE_TRACE_API2(m,p1,p2)                 {if (ce_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_API, m,p1,p2);}
1434 #define CE_TRACE_API3(m,p1,p2,p3)              {if (ce_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_API, m,p1,p2,p3);}
1435 #define CE_TRACE_API4(m,p1,p2,p3,p4)           {if (ce_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_API, m,p1,p2,p3,p4);}
1436 #define CE_TRACE_API5(m,p1,p2,p3,p4,p5)        {if (ce_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
1437 #define CE_TRACE_API6(m,p1,p2,p3,p4,p5,p6)     {if (ce_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
1438
1439 #define CE_TRACE_EVENT0(m)                     {if (ce_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_EVENT, m);}
1440 #define CE_TRACE_EVENT1(m,p1)                  {if (ce_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_EVENT, m, p1);}
1441 #define CE_TRACE_EVENT2(m,p1,p2)               {if (ce_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_EVENT, m,p1,p2);}
1442 #define CE_TRACE_EVENT3(m,p1,p2,p3)            {if (ce_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_EVENT, m,p1,p2,p3);}
1443 #define CE_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (ce_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
1444 #define CE_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (ce_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
1445 #define CE_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (ce_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
1446
1447 #define CE_TRACE_DEBUG0(m)                     {if (ce_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_DEBUG, m);}
1448 #define CE_TRACE_DEBUG1(m,p1)                  {if (ce_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_DEBUG, m,p1);}
1449 #define CE_TRACE_DEBUG2(m,p1,p2)               {if (ce_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_DEBUG, m,p1,p2);}
1450 #define CE_TRACE_DEBUG3(m,p1,p2,p3)            {if (ce_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
1451 #define CE_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (ce_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
1452 #define CE_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (ce_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
1453 #define CE_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (ce_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_CE, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
1454
1455 #define NDEF_TRACE_ERROR0(m)                     {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_ERROR, m);}
1456 #define NDEF_TRACE_ERROR1(m,p1)                  {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_ERROR, m,p1);}
1457 #define NDEF_TRACE_ERROR2(m,p1,p2)               {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_ERROR, m,p1,p2);}
1458 #define NDEF_TRACE_ERROR3(m,p1,p2,p3)            {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_ERROR, m,p1,p2,p3);}
1459 #define NDEF_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
1460 #define NDEF_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
1461 #define NDEF_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
1462
1463 #define NDEF_TRACE_WARNING0(m)                   {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_WARNING, m);}
1464 #define NDEF_TRACE_WARNING1(m,p1)                {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_WARNING, m,p1);}
1465 #define NDEF_TRACE_WARNING2(m,p1,p2)             {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_WARNING, m,p1,p2);}
1466 #define NDEF_TRACE_WARNING3(m,p1,p2,p3)          {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_WARNING, m,p1,p2,p3);}
1467 #define NDEF_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
1468 #define NDEF_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
1469 #define NDEF_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
1470
1471 #define NDEF_TRACE_API0(m)                       {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_API, m);}
1472 #define NDEF_TRACE_API1(m,p1)                    {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_API, m,p1);}
1473 #define NDEF_TRACE_API2(m,p1,p2)                 {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_API, m,p1,p2);}
1474 #define NDEF_TRACE_API3(m,p1,p2,p3)              {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_API, m,p1,p2,p3);}
1475 #define NDEF_TRACE_API4(m,p1,p2,p3,p4)           {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_API, m,p1,p2,p3,p4);}
1476 #define NDEF_TRACE_API5(m,p1,p2,p3,p4,p5)        {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
1477 #define NDEF_TRACE_API6(m,p1,p2,p3,p4,p5,p6)     {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
1478
1479 #define NDEF_TRACE_EVENT0(m)                     {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_EVENT, m);}
1480 #define NDEF_TRACE_EVENT1(m,p1)                  {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_EVENT, m, p1);}
1481 #define NDEF_TRACE_EVENT2(m,p1,p2)               {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_EVENT, m,p1,p2);}
1482 #define NDEF_TRACE_EVENT3(m,p1,p2,p3)            {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_EVENT, m,p1,p2,p3);}
1483 #define NDEF_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
1484 #define NDEF_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
1485 #define NDEF_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
1486
1487 #define NDEF_TRACE_DEBUG0(m)                     {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_DEBUG, m);}
1488 #define NDEF_TRACE_DEBUG1(m,p1)                  {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_DEBUG, m,p1);}
1489 #define NDEF_TRACE_DEBUG2(m,p1,p2)               {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_DEBUG, m,p1,p2);}
1490 #define NDEF_TRACE_DEBUG3(m,p1,p2,p3)            {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
1491 #define NDEF_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
1492 #define NDEF_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
1493 #define NDEF_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (ndef_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_NDEF, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
1494
1495 /* Define tracing for the NFA unit
1496 */
1497 #define NFA_TRACE_ERROR0(m)                     {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_ERROR, m);}
1498 #define NFA_TRACE_ERROR1(m,p1)                  {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_ERROR, m,p1);}
1499 #define NFA_TRACE_ERROR2(m,p1,p2)               {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_ERROR, m,p1,p2);}
1500 #define NFA_TRACE_ERROR3(m,p1,p2,p3)            {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_ERROR, m,p1,p2,p3);}
1501 #define NFA_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
1502 #define NFA_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
1503 #define NFA_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
1504
1505 #define NFA_TRACE_WARNING0(m)                   {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_WARNING, m);}
1506 #define NFA_TRACE_WARNING1(m,p1)                {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_WARNING, m,p1);}
1507 #define NFA_TRACE_WARNING2(m,p1,p2)             {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_WARNING, m,p1,p2);}
1508 #define NFA_TRACE_WARNING3(m,p1,p2,p3)          {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_WARNING, m,p1,p2,p3);}
1509 #define NFA_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
1510 #define NFA_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
1511 #define NFA_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
1512
1513 #define NFA_TRACE_API0(m)                       {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_API, m);}
1514 #define NFA_TRACE_API1(m,p1)                    {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_API, m,p1);}
1515 #define NFA_TRACE_API2(m,p1,p2)                 {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_API, m,p1,p2);}
1516 #define NFA_TRACE_API3(m,p1,p2,p3)              {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_API, m,p1,p2,p3);}
1517 #define NFA_TRACE_API4(m,p1,p2,p3,p4)           {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_API, m,p1,p2,p3,p4);}
1518 #define NFA_TRACE_API5(m,p1,p2,p3,p4,p5)        {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
1519 #define NFA_TRACE_API6(m,p1,p2,p3,p4,p5,p6)     {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
1520
1521 #define NFA_TRACE_EVENT0(m)                     {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_EVENT, m);}
1522 #define NFA_TRACE_EVENT1(m,p1)                  {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_EVENT, m, p1);}
1523 #define NFA_TRACE_EVENT2(m,p1,p2)               {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_EVENT, m,p1,p2);}
1524 #define NFA_TRACE_EVENT3(m,p1,p2,p3)            {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_EVENT, m,p1,p2,p3);}
1525 #define NFA_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
1526 #define NFA_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
1527 #define NFA_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
1528
1529 #define NFA_TRACE_DEBUG0(m)                     {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_DEBUG, m);}
1530 #define NFA_TRACE_DEBUG1(m,p1)                  {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_DEBUG, m,p1);}
1531 #define NFA_TRACE_DEBUG2(m,p1,p2)               {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_DEBUG, m,p1,p2);}
1532 #define NFA_TRACE_DEBUG3(m,p1,p2,p3)            {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
1533 #define NFA_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
1534 #define NFA_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
1535 #define NFA_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_NFA, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
1536
1537 #define MMI_TRACE_0(m)
1538 #define MMI_TRACE_1(m,p1)
1539 #define MMI_TRACE_2(m,p1,p2)
1540 #define MMI_TRACE_3(m,p1,p2,p3)
1541 #define MMI_TRACE_4(m,p1,p2,p3,p4)
1542 #define MMI_TRACE_5(m,p1,p2,p3,p4,p5)
1543 #define MMI_TRACE_6(m,p1,p2,p3,p4,p5,p6)
1544
1545 #define MMI_DEBUG_0(m)                           BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_DEBUG, m)
1546 #define MMI_DEBUG_1(m,p1)                        BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_DEBUG, m,p1)
1547 #define MMI_DEBUG_2(m,p1,p2)                     BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_DEBUG, m,p1,p2)
1548 #define MMI_DEBUG_3(m,p1,p2,p3)                  BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_DEBUG, m,p1,p2,p3)
1549 #define MMI_DEBUG_4(m,p1,p2,p3,p4)               BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4)
1550 #define MMI_DEBUG_5(m,p1,p2,p3,p4,p5)            BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5)
1551 #define MMI_DEBUG_6(m,p1,p2,p3,p4,p5,p6)         BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6)
1552
1553 #define MMI_WARNING_0(m)                         BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_WARNING, m)
1554 #define MMI_WARNING_1(m,p1)                      BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_WARNING, m,p1)
1555 #define MMI_WARNING_2(m,p1,p2)                   BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_WARNING, m,p1,p2)
1556 #define MMI_WARNING_3(m,p1,p2,p3)                BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_WARNING, m,p1,p2,p3)
1557 #define MMI_WARNING_4(m,p1,p2,p3,p4)             BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_WARNING, m,p1,p2,p3,p4)
1558 #define MMI_WARNING_5(m,p1,p2,p3,p4,p5)          BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5)
1559 #define MMI_WARNING_6(m,p1,p2,p3,p4,p5,p6)       BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6)
1560
1561 #define MMI_ERROR_0(m)                           BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_ERROR, m)
1562 #define MMI_ERROR_1(m,p1)                        BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_ERROR, m,p1)
1563 #define MMI_ERROR_2(m,p1,p2)                     BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_ERROR, m,p1,p2)
1564 #define MMI_ERROR_3(m,p1,p2,p3)                  BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_ERROR, m,p1,p2,p3)
1565 #define MMI_ERROR_4(m,p1,p2,p3,p4)               BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_ERROR, m,p1,p2,p3,p4)
1566 #define MMI_ERROR_5(m,p1,p2,p3,p4,p5)            BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5)
1567 #define MMI_ERROR_6(m,p1,p2,p3,p4,p5,p6)         BT_TRACE(TRACE_LAYER_HID, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6)
1568
1569 #define TAK_TRACE_0(m)                            MMI_Echo(m)
1570
1571 /* hid mouse module traces */
1572
1573 #define MSKB_TRACE_0(m)                         MMI_Echo(m)
1574 #define MSKB_TRACE_1(m,p1)                      MMI_Echo(m,p1)
1575 #define MSKB_TRACE_2(m,p1,p2)                   MMI_Echo(m,p1,p2)
1576 #define MSKB_TRACE_3(m,p1,p2,p3)                MMI_Echo(m,p1,p2,p3)
1577 #define MSKB_TRACE_4(m,p1,p2,p3,p4)             MMI_Echo(m,p1,p2,p3,p4)
1578 #define MSKB_TRACE_5(m,p1,p2,p3,p4,p5)          MMI_Echo(m,p1,p2,p3,p4,p5)
1579 #define MSKB_TRACE_6(m,p1,p2,p3,p4,p5,p6)       MMI_Echo(m,p1,p2,p3,p4,p5,p6)
1580
1581 #define MSKB_DEBUG_0(m)                         MMI_Echo(m)
1582 #define MSKB_DEBUG_1(m,p1)                      MMI_Echo(m,p1)
1583 #define MSKB_DEBUG_2(m,p1,p2)                   MMI_Echo(m,p1,p2)
1584 #define MSKB_DEBUG_3(m,p1,p2,p3)                MMI_Echo(m,p1,p2,p3)
1585 #define MSKB_DEBUG_4(m,p1,p2,p3,p4)             MMI_Echo(m,p1,p2,p3,p4)
1586 #define MSKB_DEBUG_5(m,p1,p2,p3,p4,p5)          MMI_Echo(m,p1,p2,p3,p4,p5)
1587 #define MSKB_DEBUG_6(m,p1,p2,p3,p4,p5,p6)       MMI_Echo(m,p1,p2,p3,p4,p5,p6)
1588
1589 #define MSKB_ERROR_0(m)                         MMI_Echo(m)
1590 #define MSKB_ERROR_1(m,p1)                      MMI_Echo(m,p1)
1591 #define MSKB_ERROR_2(m,p1,p2)                   MMI_Echo(m,p1,p2)
1592 #define MSKB_ERROR_3(m,p1,p2,p3)                MMI_Echo(m,p1,p2,p3)
1593 #define MSKB_ERROR_4(m,p1,p2,p3,p4)             MMI_Echo(m,p1,p2,p3,p4)
1594 #define MSKB_ERROR_5(m,p1,p2,p3,p4,p5)          MMI_Echo(m,p1,p2,p3,p4,p5)
1595 #define MSKB_ERROR_6(m,p1,p2,p3,p4,p5,p6)       MMI_Echo(m,p1,p2,p3,p4,p5,p6)
1596
1597 /* define traces for DUN */
1598
1599 #define DUN_TRACE_ERROR0(m)                     {if (dun_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_ERROR, m);}
1600 #define DUN_TRACE_ERROR1(m,p1)                  {if (dun_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_ERROR, m, p1);}
1601 #define DUN_TRACE_ERROR2(m,p1,p2)               {if (dun_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_ERROR, m,p1,p2);}
1602 #define DUN_TRACE_ERROR3(m,p1,p2,p3)            {if (dun_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_ERROR, m,p1,p2,p3);}
1603 #define DUN_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (dun_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
1604 #define DUN_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (dun_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
1605 #define DUN_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (dun_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
1606
1607 #define DUN_TRACE_WARNING0(m)                   {if (dun_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_WARNING, m);}
1608 #define DUN_TRACE_WARNING1(m,p1)                {if (dun_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_WARNING, m,p1);}
1609 #define DUN_TRACE_WARNING2(m,p1,p2)             {if (dun_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_WARNING, m,p1,p2);}
1610 #define DUN_TRACE_WARNING3(m,p1,p2,p3)          {if (dun_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_WARNING, m,p1,p2,p3);}
1611 #define DUN_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (dun_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
1612 #define DUN_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (dun_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
1613 #define DUN_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (dun_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
1614
1615 #define DUN_TRACE_API0(m)                       {if (dun_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_API, m);}
1616 #define DUN_TRACE_API1(m,p1)                    {if (dun_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_API, m, p1);}
1617 #define DUN_TRACE_API2(m,p1,p2)                 {if (dun_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_API, m,p1,p2);}
1618 #define DUN_TRACE_API3(m,p1,p2,p3)              {if (dun_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_API, m,p1,p2,p3);}
1619 #define DUN_TRACE_API4(m,p1,p2,p3,p4)           {if (dun_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_API, m,p1,p2,p3,p4);}
1620 #define DUN_TRACE_API5(m,p1,p2,p3,p4,p5)        {if (dun_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
1621 #define DUN_TRACE_API6(m,p1,p2,p3,p4,p5,p6)     {if (dun_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
1622
1623 #define DUN_TRACE_EVENT0(m)                     {if (dun_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_EVENT, m);}
1624 #define DUN_TRACE_EVENT1(m,p1)                  {if (dun_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_EVENT, m, p1);}
1625 #define DUN_TRACE_EVENT2(m,p1,p2)               {if (dun_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_EVENT, m,p1,p2);}
1626 #define DUN_TRACE_EVENT3(m,p1,p2,p3)            {if (dun_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_EVENT, m,p1,p2,p3);}
1627 #define DUN_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (dun_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
1628 #define DUN_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (dun_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
1629 #define DUN_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (dun_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
1630
1631 #define DUN_TRACE_DEBUG0(m)                     {if (dun_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_DEBUG, m);}
1632 #define DUN_TRACE_DEBUG1(m,p1)                  {if (dun_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_DEBUG, m,p1);}
1633 #define DUN_TRACE_DEBUG2(m,p1,p2)               {if (dun_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_DEBUG, m,p1,p2);}
1634 #define DUN_TRACE_DEBUG3(m,p1,p2,p3)            {if (dun_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
1635 #define DUN_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (dun_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
1636 #define DUN_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (dun_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
1637 #define DUN_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (dun_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_DUN, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
1638
1639 /* define traces for hardcopy cable replacement profile */
1640
1641 #define HCRP_TRACE_ERROR0(m)                     {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_ERROR, m);}
1642 #define HCRP_TRACE_ERROR1(m,p1)                  {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_ERROR, m, p1);}
1643 #define HCRP_TRACE_ERROR2(m,p1,p2)               {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_ERROR, m,p1,p2);}
1644 #define HCRP_TRACE_ERROR3(m,p1,p2,p3)            {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_ERROR, m,p1,p2,p3);}
1645 #define HCRP_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
1646 #define HCRP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
1647 #define HCRP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
1648
1649 #define HCRP_TRACE_WARNING0(m)                   {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_WARNING, m);}
1650 #define HCRP_TRACE_WARNING1(m,p1)                {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_WARNING, m,p1);}
1651 #define HCRP_TRACE_WARNING2(m,p1,p2)             {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_WARNING, m,p1,p2);}
1652 #define HCRP_TRACE_WARNING3(m,p1,p2,p3)          {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_WARNING, m,p1,p2,p3);}
1653 #define HCRP_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
1654 #define HCRP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
1655 #define HCRP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
1656
1657 #define HCRP_TRACE_API0(m)                       {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_API, m);}
1658 #define HCRP_TRACE_API1(m,p1)                    {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_API, m, p1);}
1659 #define HCRP_TRACE_API2(m,p1,p2)                 {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_API, m,p1,p2);}
1660 #define HCRP_TRACE_API3(m,p1,p2,p3)              {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_API, m,p1,p2,p3);}
1661 #define HCRP_TRACE_API4(m,p1,p2,p3,p4)           {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_API, m,p1,p2,p3,p4);}
1662 #define HCRP_TRACE_API5(m,p1,p2,p3,p4,p5)        {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
1663 #define HCRP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)     {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
1664
1665 #define HCRP_TRACE_EVENT0(m)                     {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_EVENT, m);}
1666 #define HCRP_TRACE_EVENT1(m,p1)                  {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_EVENT, m, p1);}
1667 #define HCRP_TRACE_EVENT2(m,p1,p2)               {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_EVENT, m,p1,p2);}
1668 #define HCRP_TRACE_EVENT3(m,p1,p2,p3)            {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_EVENT, m,p1,p2,p3);}
1669 #define HCRP_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
1670 #define HCRP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
1671 #define HCRP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
1672
1673 #define HCRP_TRACE_DEBUG0(m)                     {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_DEBUG, m);}
1674 #define HCRP_TRACE_DEBUG1(m,p1)                  {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_DEBUG, m,p1);}
1675 #define HCRP_TRACE_DEBUG2(m,p1,p2)               {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_DEBUG, m,p1,p2);}
1676 #define HCRP_TRACE_DEBUG3(m,p1,p2,p3)            {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
1677 #define HCRP_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
1678 #define HCRP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
1679 #define HCRP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (hcrp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
1680
1681 /* define traces for multi-client server hardcopy cable replacement profile */
1682
1683 #define HCRPM_TRACE_ERROR0(m)                     {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_ERROR, m);}
1684 #define HCRPM_TRACE_ERROR1(m,p1)                  {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_ERROR, m, p1);}
1685 #define HCRPM_TRACE_ERROR2(m,p1,p2)               {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_ERROR, m,p1,p2);}
1686 #define HCRPM_TRACE_ERROR3(m,p1,p2,p3)            {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_ERROR, m,p1,p2,p3);}
1687 #define HCRPM_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
1688 #define HCRPM_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
1689 #define HCRPM_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
1690
1691 #define HCRPM_TRACE_WARNING0(m)                   {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_WARNING, m);}
1692 #define HCRPM_TRACE_WARNING1(m,p1)                {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_WARNING, m,p1);}
1693 #define HCRPM_TRACE_WARNING2(m,p1,p2)             {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_WARNING, m,p1,p2);}
1694 #define HCRPM_TRACE_WARNING3(m,p1,p2,p3)          {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_WARNING, m,p1,p2,p3);}
1695 #define HCRPM_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
1696 #define HCRPM_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
1697 #define HCRPM_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
1698
1699 #define HCRPM_TRACE_API0(m)                       {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_API, m);}
1700 #define HCRPM_TRACE_API1(m,p1)                    {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_API, m, p1);}
1701 #define HCRPM_TRACE_API2(m,p1,p2)                 {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_API, m,p1,p2);}
1702 #define HCRPM_TRACE_API3(m,p1,p2,p3)              {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_API, m,p1,p2,p3);}
1703 #define HCRPM_TRACE_API4(m,p1,p2,p3,p4)           {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_API, m,p1,p2,p3,p4);}
1704 #define HCRPM_TRACE_API5(m,p1,p2,p3,p4,p5)        {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
1705 #define HCRPM_TRACE_API6(m,p1,p2,p3,p4,p5,p6)     {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
1706
1707 #define HCRPM_TRACE_EVENT0(m)                     {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_EVENT, m);}
1708 #define HCRPM_TRACE_EVENT1(m,p1)                  {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_EVENT, m, p1);}
1709 #define HCRPM_TRACE_EVENT2(m,p1,p2)               {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_EVENT, m,p1,p2);}
1710 #define HCRPM_TRACE_EVENT3(m,p1,p2,p3)            {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_EVENT, m,p1,p2,p3);}
1711 #define HCRPM_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
1712 #define HCRPM_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
1713 #define HCRPM_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
1714
1715 #define HCRPM_TRACE_DEBUG0(m)                     {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_DEBUG, m);}
1716 #define HCRPM_TRACE_DEBUG1(m,p1)                  {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_DEBUG, m,p1);}
1717 #define HCRPM_TRACE_DEBUG2(m,p1,p2)               {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_DEBUG, m,p1,p2);}
1718 #define HCRPM_TRACE_DEBUG3(m,p1,p2,p3)            {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
1719 #define HCRPM_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
1720 #define HCRPM_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
1721 #define HCRPM_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (hcrpm_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_HCRP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
1722
1723 /* define traces for RPC */
1724
1725 #define RPC_TRACE_ERROR0(m)                      {if (rpc_trace_level >= BT_TRACE_LEVEL_ERROR) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_ERROR, (m));}
1726 #define RPC_TRACE_ERROR1(m,p1)                   {if (rpc_trace_level >= BT_TRACE_LEVEL_ERROR) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_ERROR, \
1727                                                         (m), (UINT32)(p1));}
1728 #define RPC_TRACE_ERROR2(m,p1,p2)                {if (rpc_trace_level >= BT_TRACE_LEVEL_ERROR) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_ERROR, \
1729                                                         (m), (UINT32)(p1), (UINT32)(p2));}
1730 #define RPC_TRACE_ERROR3(m,p1,p2,p3)             {if (rpc_trace_level >= BT_TRACE_LEVEL_ERROR) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_ERROR, \
1731                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3));}
1732 #define RPC_TRACE_ERROR4(m,p1,p2,p3,p4)          {if (rpc_trace_level >= BT_TRACE_LEVEL_ERROR) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_ERROR, \
1733                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4));}
1734 #define RPC_TRACE_ERROR5(m,p1,p2,p3,p4,p5)       {if (rpc_trace_level >= BT_TRACE_LEVEL_ERROR) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_ERROR, \
1735                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5));}
1736 #define RPC_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)    {if (rpc_trace_level >= BT_TRACE_LEVEL_ERROR) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_ERROR, \
1737                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5), (UINT32)(p6));}
1738
1739 #define RPC_TRACE_WARNING0(m)                    {if (rpc_trace_level >= BT_TRACE_LEVEL_WARNING) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_WARNING, (m));}
1740 #define RPC_TRACE_WARNING1(m,p1)                 {if (rpc_trace_level >= BT_TRACE_LEVEL_WARNING) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_WARNING, \
1741                                                         (m), (UINT32)(p1));}
1742 #define RPC_TRACE_WARNING2(m,p1,p2)              {if (rpc_trace_level >= BT_TRACE_LEVEL_WARNING) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_WARNING, \
1743                                                         (m), (UINT32)(p1), (UINT32)(p2));}
1744 #define RPC_TRACE_WARNING3(m,p1,p2,p3)           {if (rpc_trace_level >= BT_TRACE_LEVEL_WARNING) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_WARNING, \
1745                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3));}
1746 #define RPC_TRACE_WARNING4(m,p1,p2,p3,p4)        {if (rpc_trace_level >= BT_TRACE_LEVEL_WARNING) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_WARNING, \
1747                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4));}
1748 #define RPC_TRACE_WARNING5(m,p1,p2,p3,p4,p5)     {if (rpc_trace_level >= BT_TRACE_LEVEL_WARNING) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_WARNING, \
1749                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5));}
1750 #define RPC_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)  {if (rpc_trace_level >= BT_TRACE_LEVEL_WARNING) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_WARNING, \
1751                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5), (UINT32)(p6));}
1752
1753 #define RPC_TRACE_API0(m)                        {if (rpc_trace_level >= BT_TRACE_LEVEL_API) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_API, (m));}
1754 #define RPC_TRACE_API1(m,p1)                     {if (rpc_trace_level >= BT_TRACE_LEVEL_API) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_API, \
1755                                                         (m), (UINT32)(p1));}
1756 #define RPC_TRACE_API2(m,p1,p2)                  {if (rpc_trace_level >= BT_TRACE_LEVEL_API) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_API, \
1757                                                         (m), (UINT32)(p1), (UINT32)(p2));}
1758 #define RPC_TRACE_API3(m,p1,p2,p3)               {if (rpc_trace_level >= BT_TRACE_LEVEL_API) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_API, \
1759                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3));}
1760 #define RPC_TRACE_API4(m,p1,p2,p3,p4)            {if (rpc_trace_level >= BT_TRACE_LEVEL_API) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_API, \
1761                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4));}
1762 #define RPC_TRACE_API5(m,p1,p2,p3,p4,p5)         {if (rpc_trace_level >= BT_TRACE_LEVEL_API) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_API, \
1763                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5));}
1764 #define RPC_TRACE_API6(m,p1,p2,p3,p4,p5,p6)      {if (rpc_trace_level >= BT_TRACE_LEVEL_API) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_API, \
1765                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5), (UINT32)(p6));}
1766
1767 #define RPC_TRACE_EVENT0(m)                      {if (rpc_trace_level >= BT_TRACE_LEVEL_EVENT) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_EVENT, (m));}
1768 #define RPC_TRACE_EVENT1(m,p1)                   {if (rpc_trace_level >= BT_TRACE_LEVEL_EVENT) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_EVENT, \
1769                                                         (m), (UINT32)(p1));}
1770 #define RPC_TRACE_EVENT2(m,p1,p2)                {if (rpc_trace_level >= BT_TRACE_LEVEL_EVENT) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_EVENT, \
1771                                                         (m), (UINT32)(p1), (UINT32)(p2));}
1772 #define RPC_TRACE_EVENT3(m,p1,p2,p3)             {if (rpc_trace_level >= BT_TRACE_LEVEL_EVENT) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_EVENT, \
1773                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3));}
1774 #define RPC_TRACE_EVENT4(m,p1,p2,p3,p4)          {if (rpc_trace_level >= BT_TRACE_LEVEL_EVENT) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_EVENT, \
1775                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4));}
1776 #define RPC_TRACE_EVENT5(m,p1,p2,p3,p4,p5)       {if (rpc_trace_level >= BT_TRACE_LEVEL_EVENT) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_EVENT, \
1777                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5));}
1778 #define RPC_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)    {if (rpc_trace_level >= BT_TRACE_LEVEL_EVENT) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_EVENT, \
1779                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5), (UINT32)(p6));}
1780
1781 #define RPC_TRACE_DEBUG0(m)                      {if (rpc_trace_level >= BT_TRACE_LEVEL_DEBUG) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_DEBUG, (m));}
1782 #define RPC_TRACE_DEBUG1(m,p1)                   {if (rpc_trace_level >= BT_TRACE_LEVEL_DEBUG) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_DEBUG, \
1783                                                         (m), (UINT32)(p1));}
1784 #define RPC_TRACE_DEBUG2(m,p1,p2)                {if (rpc_trace_level >= BT_TRACE_LEVEL_DEBUG) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_DEBUG, \
1785                                                         (m), (UINT32)(p1), (UINT32)(p2));}
1786 #define RPC_TRACE_DEBUG3(m,p1,p2,p3)             {if (rpc_trace_level >= BT_TRACE_LEVEL_DEBUG) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_DEBUG, \
1787                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3));}
1788 #define RPC_TRACE_DEBUG4(m,p1,p2,p3,p4)          {if (rpc_trace_level >= BT_TRACE_LEVEL_DEBUG) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_DEBUG, \
1789                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4));}
1790 #define RPC_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)       {if (rpc_trace_level >= BT_TRACE_LEVEL_DEBUG) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_DEBUG, \
1791                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5));}
1792 #define RPC_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)    {if (rpc_trace_level >= BT_TRACE_LEVEL_DEBUG) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_RPC | TRACE_TYPE_DEBUG, \
1793                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5), (UINT32)(p6));}
1794
1795 /* define traces for BNEP */
1796
1797 #define BNEP_TRACE_ERROR0(m)                     {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_ERROR, m);}
1798 #define BNEP_TRACE_ERROR1(m,p1)                  {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_ERROR, m, p1);}
1799 #define BNEP_TRACE_ERROR2(m,p1,p2)               {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_ERROR, m,p1,p2);}
1800 #define BNEP_TRACE_ERROR3(m,p1,p2,p3)            {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_ERROR, m,p1,p2,p3);}
1801 #define BNEP_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
1802 #define BNEP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
1803 #define BNEP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
1804
1805 #define BNEP_TRACE_WARNING0(m)                   {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_WARNING, m);}
1806 #define BNEP_TRACE_WARNING1(m,p1)                {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_WARNING, m,p1);}
1807 #define BNEP_TRACE_WARNING2(m,p1,p2)             {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_WARNING, m,p1,p2);}
1808 #define BNEP_TRACE_WARNING3(m,p1,p2,p3)          {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_WARNING, m,p1,p2,p3);}
1809 #define BNEP_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
1810 #define BNEP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
1811 #define BNEP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
1812
1813 #define BNEP_TRACE_API0(m)                       {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_API, m);}
1814 #define BNEP_TRACE_API1(m,p1)                    {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_API, m, p1);}
1815 #define BNEP_TRACE_API2(m,p1,p2)                 {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_API, m,p1,p2);}
1816 #define BNEP_TRACE_API3(m,p1,p2,p3)              {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_API, m,p1,p2,p3);}
1817 #define BNEP_TRACE_API4(m,p1,p2,p3,p4)           {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_API, m,p1,p2,p3,p4);}
1818 #define BNEP_TRACE_API5(m,p1,p2,p3,p4,p5)        {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
1819 #define BNEP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)     {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
1820
1821 #define BNEP_TRACE_EVENT0(m)                     {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_EVENT, m);}
1822 #define BNEP_TRACE_EVENT1(m,p1)                  {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_EVENT, m, p1);}
1823 #define BNEP_TRACE_EVENT2(m,p1,p2)               {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_EVENT, m,p1,p2);}
1824 #define BNEP_TRACE_EVENT3(m,p1,p2,p3)            {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_EVENT, m,p1,p2,p3);}
1825 #define BNEP_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
1826 #define BNEP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
1827 #define BNEP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
1828
1829 #define BNEP_TRACE_DEBUG0(m)                     {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_DEBUG, m);}
1830 #define BNEP_TRACE_DEBUG1(m,p1)                  {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_DEBUG, m,p1);}
1831 #define BNEP_TRACE_DEBUG2(m,p1,p2)               {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_DEBUG, m,p1,p2);}
1832 #define BNEP_TRACE_DEBUG3(m,p1,p2,p3)            {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
1833 #define BNEP_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
1834 #define BNEP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
1835 #define BNEP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (bnep_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_BNEP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
1836
1837 /* define traces for PAN */
1838
1839 #define PAN_TRACE_ERROR0(m)                     {if (pan_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_ERROR, m);}
1840 #define PAN_TRACE_ERROR1(m,p1)                  {if (pan_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_ERROR, m, p1);}
1841 #define PAN_TRACE_ERROR2(m,p1,p2)               {if (pan_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_ERROR, m,p1,p2);}
1842 #define PAN_TRACE_ERROR3(m,p1,p2,p3)            {if (pan_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_ERROR, m,p1,p2,p3);}
1843 #define PAN_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (pan_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
1844 #define PAN_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (pan_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
1845 #define PAN_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (pan_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
1846
1847 #define PAN_TRACE_WARNING0(m)                   {if (pan_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_WARNING, m);}
1848 #define PAN_TRACE_WARNING1(m,p1)                {if (pan_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_WARNING, m,p1);}
1849 #define PAN_TRACE_WARNING2(m,p1,p2)             {if (pan_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_WARNING, m,p1,p2);}
1850 #define PAN_TRACE_WARNING3(m,p1,p2,p3)          {if (pan_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_WARNING, m,p1,p2,p3);}
1851 #define PAN_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (pan_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
1852 #define PAN_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (pan_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
1853 #define PAN_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (pan_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
1854
1855 #define PAN_TRACE_API0(m)                       {if (pan_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_API, m);}
1856 #define PAN_TRACE_API1(m,p1)                    {if (pan_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_API, m, p1);}
1857 #define PAN_TRACE_API2(m,p1,p2)                 {if (pan_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_API, m,p1,p2);}
1858 #define PAN_TRACE_API3(m,p1,p2,p3)              {if (pan_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_API, m,p1,p2,p3);}
1859 #define PAN_TRACE_API4(m,p1,p2,p3,p4)           {if (pan_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_API, m,p1,p2,p3,p4);}
1860 #define PAN_TRACE_API5(m,p1,p2,p3,p4,p5)        {if (pan_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
1861 #define PAN_TRACE_API6(m,p1,p2,p3,p4,p5,p6)     {if (pan_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
1862
1863 #define PAN_TRACE_EVENT0(m)                     {if (pan_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_EVENT, m);}
1864 #define PAN_TRACE_EVENT1(m,p1)                  {if (pan_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_EVENT, m, p1);}
1865 #define PAN_TRACE_EVENT2(m,p1,p2)               {if (pan_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_EVENT, m,p1,p2);}
1866 #define PAN_TRACE_EVENT3(m,p1,p2,p3)            {if (pan_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_EVENT, m,p1,p2,p3);}
1867 #define PAN_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (pan_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
1868 #define PAN_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (pan_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
1869 #define PAN_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (pan_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
1870
1871 #define PAN_TRACE_DEBUG0(m)                     {if (pan_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_DEBUG, m);}
1872 #define PAN_TRACE_DEBUG1(m,p1)                  {if (pan_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_DEBUG, m,p1);}
1873 #define PAN_TRACE_DEBUG2(m,p1,p2)               {if (pan_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_DEBUG, m,p1,p2);}
1874 #define PAN_TRACE_DEBUG3(m,p1,p2,p3)            {if (pan_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
1875 #define PAN_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (pan_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
1876 #define PAN_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (pan_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
1877 #define PAN_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (pan_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_PAN, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
1878
1879 /* define traces for SIM */
1880
1881 #define SAP_TRACE_ERROR0(m)                     {if (sap_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_ERROR, m);}
1882 #define SAP_TRACE_ERROR1(m,p1)                  {if (sap_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_ERROR, m, p1);}
1883 #define SAP_TRACE_ERROR2(m,p1,p2)               {if (sap_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_ERROR, m,p1,p2);}
1884 #define SAP_TRACE_ERROR3(m,p1,p2,p3)            {if (sap_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_ERROR, m,p1,p2,p3);}
1885 #define SAP_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (sap_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
1886 #define SAP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (sap_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
1887 #define SAP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (sap_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
1888
1889 #define SAP_TRACE_WARNING0(m)                   {if (sap_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_WARNING, m);}
1890 #define SAP_TRACE_WARNING1(m,p1)                {if (sap_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_WARNING, m,p1);}
1891 #define SAP_TRACE_WARNING2(m,p1,p2)             {if (sap_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_WARNING, m,p1,p2);}
1892 #define SAP_TRACE_WARNING3(m,p1,p2,p3)          {if (sap_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_WARNING, m,p1,p2,p3);}
1893 #define SAP_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (sap_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
1894 #define SAP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (sap_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
1895 #define SAP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (sap_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
1896
1897 #define SAP_TRACE_API0(m)                       {if (sap_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_API, m);}
1898 #define SAP_TRACE_API1(m,p1)                    {if (sap_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_API, m, p1);}
1899 #define SAP_TRACE_API2(m,p1,p2)                 {if (sap_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_API, m,p1,p2);}
1900 #define SAP_TRACE_API3(m,p1,p2,p3)              {if (sap_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_API, m,p1,p2,p3);}
1901 #define SAP_TRACE_API4(m,p1,p2,p3,p4)           {if (sap_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_API, m,p1,p2,p3,p4);}
1902 #define SAP_TRACE_API5(m,p1,p2,p3,p4,p5)        {if (sap_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
1903 #define SAP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)     {if (sap_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
1904
1905 #define SAP_TRACE_EVENT0(m)                     {if (sap_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_EVENT, m);}
1906 #define SAP_TRACE_EVENT1(m,p1)                  {if (sap_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_EVENT, m, p1);}
1907 #define SAP_TRACE_EVENT2(m,p1,p2)               {if (sap_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_EVENT, m,p1,p2);}
1908 #define SAP_TRACE_EVENT3(m,p1,p2,p3)            {if (sap_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_EVENT, m,p1,p2,p3);}
1909 #define SAP_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (sap_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
1910 #define SAP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (sap_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
1911 #define SAP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (sap_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
1912
1913 #define SAP_TRACE_DEBUG0(m)                     {if (sap_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_DEBUG, m);}
1914 #define SAP_TRACE_DEBUG1(m,p1)                  {if (sap_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_DEBUG, m,p1);}
1915 #define SAP_TRACE_DEBUG2(m,p1,p2)               {if (sap_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_DEBUG, m,p1,p2);}
1916 #define SAP_TRACE_DEBUG3(m,p1,p2,p3)            {if (sap_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
1917 #define SAP_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (sap_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
1918 #define SAP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (sap_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
1919 #define SAP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (sap_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_SAP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
1920
1921 /* Define tracing for OPP profile
1922 */
1923 #define OPP_TRACE_ERROR0(m)                      {if (opp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_OPP, TRACE_TYPE_ERROR, m);}
1924 #define OPP_TRACE_ERROR1(m,p1)                   {if (opp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_OPP, TRACE_TYPE_ERROR, m,p1);}
1925 #define OPP_TRACE_ERROR2(m,p1,p2)                {if (opp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_OPP, TRACE_TYPE_ERROR, m,p1,p2);}
1926 #define OPP_TRACE_ERROR3(m,p1,p2,p3)             {if (opp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_OPP, TRACE_TYPE_ERROR, m,p1,p2,p3);}
1927 #define OPP_TRACE_ERROR4(m,p1,p2,p3,p4)          {if (opp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_OPP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
1928 #define OPP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)       {if (opp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_OPP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
1929 #define OPP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)    {if (opp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_OPP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
1930
1931 #define OPP_TRACE_WARNING0(m)                    {if (opp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_OPP, TRACE_TYPE_WARNING, m);}
1932 #define OPP_TRACE_WARNING1(m,p1)                 {if (opp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_OPP, TRACE_TYPE_WARNING, m,p1);}
1933 #define OPP_TRACE_WARNING2(m,p1,p2)              {if (opp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_OPP, TRACE_TYPE_WARNING, m,p1,p2);}
1934 #define OPP_TRACE_WARNING3(m,p1,p2,p3)           {if (opp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_OPP, TRACE_TYPE_WARNING, m,p1,p2,p3);}
1935 #define OPP_TRACE_WARNING4(m,p1,p2,p3,p4)        {if (opp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_OPP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
1936 #define OPP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)     {if (opp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_OPP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
1937 #define OPP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)  {if (opp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_OPP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
1938
1939 #define OPP_TRACE_EVENT0(m)                      {if (opp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_OPP, TRACE_TYPE_EVENT, m);}
1940 #define OPP_TRACE_EVENT1(m,p1)                   {if (opp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_OPP, TRACE_TYPE_EVENT, m, p1);}
1941 #define OPP_TRACE_EVENT2(m,p1,p2)                {if (opp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_OPP, TRACE_TYPE_EVENT, m,p1,p2);}
1942 #define OPP_TRACE_EVENT3(m,p1,p2,p3)             {if (opp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_OPP, TRACE_TYPE_EVENT, m,p1,p2,p3);}
1943 #define OPP_TRACE_EVENT4(m,p1,p2,p3,p4)          {if (opp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_OPP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
1944 #define OPP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)       {if (opp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_OPP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
1945 #define OPP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)    {if (opp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_OPP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
1946
1947 #define OPP_TRACE_DEBUG0(m)                      {if (opp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_OPP, TRACE_TYPE_DEBUG, m);}
1948 #define OPP_TRACE_DEBUG1(m,p1)                   {if (opp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_OPP, TRACE_TYPE_DEBUG, m,p1);}
1949 #define OPP_TRACE_DEBUG2(m,p1,p2)                {if (opp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_OPP, TRACE_TYPE_DEBUG, m,p1,p2);}
1950 #define OPP_TRACE_DEBUG3(m,p1,p2,p3)             {if (opp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_OPP, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
1951 #define OPP_TRACE_DEBUG4(m,p1,p2,p3,p4)          {if (opp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_OPP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
1952 #define OPP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)       {if (opp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_OPP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
1953 #define OPP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)    {if (opp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_OPP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
1954
1955 /* Define tracing for FTP profile
1956 */
1957 #define FTP_TRACE_ERROR0(m)                      {if (ftp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_FTP, TRACE_TYPE_ERROR, m);}
1958 #define FTP_TRACE_ERROR1(m,p1)                   {if (ftp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_FTP, TRACE_TYPE_ERROR, m,p1);}
1959 #define FTP_TRACE_ERROR2(m,p1,p2)                {if (ftp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_FTP, TRACE_TYPE_ERROR, m,p1,p2);}
1960 #define FTP_TRACE_ERROR3(m,p1,p2,p3)             {if (ftp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_FTP, TRACE_TYPE_ERROR, m,p1,p2,p3);}
1961 #define FTP_TRACE_ERROR4(m,p1,p2,p3,p4)          {if (ftp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_FTP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
1962 #define FTP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)       {if (ftp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_FTP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
1963 #define FTP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)    {if (ftp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_FTP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
1964
1965 #define FTP_TRACE_WARNING0(m)                    {if (ftp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_FTP, TRACE_TYPE_WARNING, m);}
1966 #define FTP_TRACE_WARNING1(m,p1)                 {if (ftp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_FTP, TRACE_TYPE_WARNING, m,p1);}
1967 #define FTP_TRACE_WARNING2(m,p1,p2)              {if (ftp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_FTP, TRACE_TYPE_WARNING, m,p1,p2);}
1968 #define FTP_TRACE_WARNING3(m,p1,p2,p3)           {if (ftp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_FTP, TRACE_TYPE_WARNING, m,p1,p2,p3);}
1969 #define FTP_TRACE_WARNING4(m,p1,p2,p3,p4)        {if (ftp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_FTP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
1970 #define FTP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)     {if (ftp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_FTP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
1971 #define FTP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)  {if (ftp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_FTP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
1972
1973 #define FTP_TRACE_EVENT0(m)                      {if (ftp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_FTP, TRACE_TYPE_EVENT, m);}
1974 #define FTP_TRACE_EVENT1(m,p1)                   {if (ftp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_FTP, TRACE_TYPE_EVENT, m, p1);}
1975 #define FTP_TRACE_EVENT2(m,p1,p2)                {if (ftp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_FTP, TRACE_TYPE_EVENT, m,p1,p2);}
1976 #define FTP_TRACE_EVENT3(m,p1,p2,p3)             {if (ftp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_FTP, TRACE_TYPE_EVENT, m,p1,p2,p3);}
1977 #define FTP_TRACE_EVENT4(m,p1,p2,p3,p4)          {if (ftp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_FTP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
1978 #define FTP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)       {if (ftp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_FTP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
1979 #define FTP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)    {if (ftp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_FTP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
1980
1981 #define FTP_TRACE_DEBUG0(m)                      {if (ftp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_FTP, TRACE_TYPE_DEBUG, m);}
1982 #define FTP_TRACE_DEBUG1(m,p1)                   {if (ftp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_FTP, TRACE_TYPE_DEBUG, m,p1);}
1983 #define FTP_TRACE_DEBUG2(m,p1,p2)                {if (ftp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_FTP, TRACE_TYPE_DEBUG, m,p1,p2);}
1984 #define FTP_TRACE_DEBUG3(m,p1,p2,p3)             {if (ftp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_FTP, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
1985 #define FTP_TRACE_DEBUG4(m,p1,p2,p3,p4)          {if (ftp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_FTP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
1986 #define FTP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)       {if (ftp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_FTP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
1987 #define FTP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)    {if (ftp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_FTP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
1988
1989 /* Define tracing for the A2DP profile
1990 */
1991 #define A2D_TRACE_ERROR0(m)                      {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_ERROR,m);}
1992 #define A2D_TRACE_ERROR1(m,p1)                   {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_ERROR,m,p1);}
1993 #define A2D_TRACE_ERROR2(m,p1,p2)                {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_ERROR,m,p1,p2);}
1994 #define A2D_TRACE_ERROR3(m,p1,p2,p3)             {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_ERROR,m,p1,p2,p3);}
1995 #define A2D_TRACE_ERROR4(m,p1,p2,p3,p4)          {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_ERROR,m,p1,p2,p3,p4);}
1996 #define A2D_TRACE_ERROR5(m,p1,p2,p3,p4,p5)       {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_ERROR,m,p1,p2,p3,p4,p5);}
1997 #define A2D_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)    {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_ERROR,m,p1,p2,p3,p4,p5,p6);}
1998
1999 #define A2D_TRACE_WARNING0(m)                    {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_WARNING,m);}
2000 #define A2D_TRACE_WARNING1(m,p1)                 {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_WARNING,m,p1);}
2001 #define A2D_TRACE_WARNING2(m,p1,p2)              {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_WARNING,m,p1,p2);}
2002 #define A2D_TRACE_WARNING3(m,p1,p2,p3)           {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_WARNING,m,p1,p2,p3);}
2003 #define A2D_TRACE_WARNING4(m,p1,p2,p3,p4)        {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_WARNING,m,p1,p2,p3,p4);}
2004 #define A2D_TRACE_WARNING5(m,p1,p2,p3,p4,p5)     {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_WARNING,m,p1,p2,p3,p4,p5);}
2005 #define A2D_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)  {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_WARNING,m,p1,p2,p3,p4,p5,p6);}
2006
2007 #define A2D_TRACE_EVENT0(m)                      {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_EVENT,m);}
2008 #define A2D_TRACE_EVENT1(m,p1)                   {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_EVENT,m, p1);}
2009 #define A2D_TRACE_EVENT2(m,p1,p2)                {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_EVENT,m,p1,p2);}
2010 #define A2D_TRACE_EVENT3(m,p1,p2,p3)             {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_EVENT,m,p1,p2,p3);}
2011 #define A2D_TRACE_EVENT4(m,p1,p2,p3,p4)          {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_EVENT,m,p1,p2,p3,p4);}
2012 #define A2D_TRACE_EVENT5(m,p1,p2,p3,p4,p5)       {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_EVENT,m,p1,p2,p3,p4,p5);}
2013 #define A2D_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)    {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_EVENT,m,p1,p2,p3,p4,p5,p6);}
2014
2015 #define A2D_TRACE_DEBUG0(m)                      {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_DEBUG,m);}
2016 #define A2D_TRACE_DEBUG1(m,p1)                   {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_DEBUG,m,p1);}
2017 #define A2D_TRACE_DEBUG2(m,p1,p2)                {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_DEBUG,m,p1,p2);}
2018 #define A2D_TRACE_DEBUG3(m,p1,p2,p3)             {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_DEBUG,m,p1,p2,p3);}
2019 #define A2D_TRACE_DEBUG4(m,p1,p2,p3,p4)          {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_DEBUG,m,p1,p2,p3,p4);}
2020 #define A2D_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)       {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_DEBUG,m,p1,p2,p3,p4,p5);}
2021 #define A2D_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)    {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_DEBUG,m,p1,p2,p3,p4,p5,p6);}
2022
2023 #define A2D_TRACE_API0(m)                        {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_API,m);}
2024 #define A2D_TRACE_API1(m,p1)                     {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_API,m, p1);}
2025 #define A2D_TRACE_API2(m,p1,p2)                  {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_API,m,p1,p2);}
2026 #define A2D_TRACE_API3(m,p1,p2,p3)               {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_API,m,p1,p2,p3);}
2027 #define A2D_TRACE_API4(m,p1,p2,p3,p4)            {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_API,m,p1,p2,p3,p4);}
2028 #define A2D_TRACE_API5(m,p1,p2,p3,p4,p5)         {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_API,m,p1,p2,p3,p4,p5);}
2029 #define A2D_TRACE_API6(m,p1,p2,p3,p4,p5,p6)      {if (a2d_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_A2D, TRACE_TYPE_API,m,p1,p2,p3,p4,p5,p6);}
2030
2031 /* Define tracing for the VDP profile
2032 */
2033 #define VDP_TRACE_ERROR0(m)                      {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_ERROR,m);}
2034 #define VDP_TRACE_ERROR1(m,p1)                   {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_ERROR,m,p1);}
2035 #define VDP_TRACE_ERROR2(m,p1,p2)                {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_ERROR,m,p1,p2);}
2036 #define VDP_TRACE_ERROR3(m,p1,p2,p3)             {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_ERROR,m,p1,p2,p3);}
2037 #define VDP_TRACE_ERROR4(m,p1,p2,p3,p4)          {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_ERROR,m,p1,p2,p3,p4);}
2038 #define VDP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)       {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_ERROR,m,p1,p2,p3,p4,p5);}
2039 #define VDP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)    {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_ERROR,m,p1,p2,p3,p4,p5,p6);}
2040
2041 #define VDP_TRACE_WARNING0(m)                    {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_WARNING,m);}
2042 #define VDP_TRACE_WARNING1(m,p1)                 {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_WARNING,m,p1);}
2043 #define VDP_TRACE_WARNING2(m,p1,p2)              {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_WARNING,m,p1,p2);}
2044 #define VDP_TRACE_WARNING3(m,p1,p2,p3)           {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_WARNING,m,p1,p2,p3);}
2045 #define VDP_TRACE_WARNING4(m,p1,p2,p3,p4)        {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_WARNING,m,p1,p2,p3,p4);}
2046 #define VDP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)     {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_WARNING,m,p1,p2,p3,p4,p5);}
2047 #define VDP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)  {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_WARNING,m,p1,p2,p3,p4,p5,p6);}
2048
2049 #define VDP_TRACE_EVENT0(m)                      {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_EVENT,m);}
2050 #define VDP_TRACE_EVENT1(m,p1)                   {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_EVENT,m, p1);}
2051 #define VDP_TRACE_EVENT2(m,p1,p2)                {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_EVENT,m,p1,p2);}
2052 #define VDP_TRACE_EVENT3(m,p1,p2,p3)             {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_EVENT,m,p1,p2,p3);}
2053 #define VDP_TRACE_EVENT4(m,p1,p2,p3,p4)          {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_EVENT,m,p1,p2,p3,p4);}
2054 #define VDP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)       {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_EVENT,m,p1,p2,p3,p4,p5);}
2055 #define VDP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)    {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_EVENT,m,p1,p2,p3,p4,p5,p6);}
2056
2057 #define VDP_TRACE_DEBUG0(m)                      {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_DEBUG,m);}
2058 #define VDP_TRACE_DEBUG1(m,p1)                   {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_DEBUG,m,p1);}
2059 #define VDP_TRACE_DEBUG2(m,p1,p2)                {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_DEBUG,m,p1,p2);}
2060 #define VDP_TRACE_DEBUG3(m,p1,p2,p3)             {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_DEBUG,m,p1,p2,p3);}
2061 #define VDP_TRACE_DEBUG4(m,p1,p2,p3,p4)          {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_DEBUG,m,p1,p2,p3,p4);}
2062 #define VDP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)       {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_DEBUG,m,p1,p2,p3,p4,p5);}
2063 #define VDP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)    {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_DEBUG,m,p1,p2,p3,p4,p5,p6);}
2064
2065 #define VDP_TRACE_API0(m)                        {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_API,m);}
2066 #define VDP_TRACE_API1(m,p1)                     {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_API,m, p1);}
2067 #define VDP_TRACE_API2(m,p1,p2)                  {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_API,m,p1,p2);}
2068 #define VDP_TRACE_API3(m,p1,p2,p3)               {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_API,m,p1,p2,p3);}
2069 #define VDP_TRACE_API4(m,p1,p2,p3,p4)            {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_API,m,p1,p2,p3,p4);}
2070 #define VDP_TRACE_API5(m,p1,p2,p3,p4,p5)         {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_API,m,p1,p2,p3,p4,p5);}
2071 #define VDP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)      {if (vdp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_API,m,p1,p2,p3,p4,p5,p6);}
2072
2073
2074 /* Define tracing for the LM unit
2075 */
2076 #define LMP_TRACE_ERROR0(m)                     {if (lmp_trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_LM, TRACE_TYPE_ERROR, m);}
2077 #define LMP_TRACE_ERROR1(m,p1)                  {if (lmp_trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_LM, TRACE_TYPE_ERROR, m,p1);}
2078 #define LMP_TRACE_ERROR2(m,p1,p2)               {if (lmp_trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_LM, TRACE_TYPE_ERROR, m,p1,p2);}
2079 #define LMP_TRACE_ERROR3(m,p1,p2,p3)            {if (lmp_trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_LM, TRACE_TYPE_ERROR, m,p1,p2,p3);}
2080 #define LMP_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (lmp_trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_LM, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
2081 #define LMP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (lmp_trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_LM, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
2082 #define LMP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (lmp_trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_LM, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
2083
2084 #define LMP_TRACE_WARNING0(m)                   {if (lmp_trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_LM, TRACE_TYPE_WARNING, m);}
2085 #define LMP_TRACE_WARNING1(m,p1)                {if (lmp_trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_LM, TRACE_TYPE_WARNING, m,p1);}
2086 #define LMP_TRACE_WARNING2(m,p1,p2)             {if (lmp_trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_LM, TRACE_TYPE_WARNING, m,p1,p2);}
2087 #define LMP_TRACE_WARNING3(m,p1,p2,p3)          {if (lmp_trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_LM, TRACE_TYPE_WARNING, m,p1,p2,p3);}
2088 #define LMP_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (lmp_trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_LM, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
2089 #define LMP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (lmp_trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_LM, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
2090 #define LMP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (lmp_trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_LM, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
2091
2092 #define LMP_TRACE_EVENT0(m)                     {if (lmp_trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_LM, TRACE_TYPE_EVENT, m);}
2093 #define LMP_TRACE_EVENT1(m,p1)                  {if (lmp_trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_LM, TRACE_TYPE_EVENT, m, p1);}
2094 #define LMP_TRACE_EVENT2(m,p1,p2)               {if (lmp_trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_LM, TRACE_TYPE_EVENT, m,p1,p2);}
2095 #define LMP_TRACE_EVENT3(m,p1,p2,p3)            {if (lmp_trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_LM, TRACE_TYPE_EVENT, m,p1,p2,p3);}
2096 #define LMP_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (lmp_trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_LM, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
2097 #define LMP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (lmp_trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_LM, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
2098 #define LMP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (lmp_trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_LM, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
2099
2100 #define LMP_TRACE_DEBUG0(m)                     {if (lmp_trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_LM, TRACE_TYPE_DEBUG, m);}
2101 #define LMP_TRACE_DEBUG1(m,p1)                  {if (lmp_trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_LM, TRACE_TYPE_DEBUG, m,p1);}
2102 #define LMP_TRACE_DEBUG2(m,p1,p2)               {if (lmp_trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_LM, TRACE_TYPE_DEBUG, m,p1,p2);}
2103 #define LMP_TRACE_DEBUG3(m,p1,p2,p3)            {if (lmp_trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_LM, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
2104 #define LMP_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (lmp_trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_LM, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
2105 #define LMP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (lmp_trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_LM, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
2106 #define LMP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (lmp_trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_LM, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
2107
2108 /* Define tracing for the LC unit
2109 */
2110 #define LC_TRACE_ERROR0(m)                     {if (lc_trace_level & trace_map[BT_TRACE_LEVEL_ERROR]) BT_TRACE(TRACE_LAYER_LC, TRACE_TYPE_ERROR, m);}
2111 #define LC_TRACE_ERROR1(m,p1)                  {if (lc_trace_level & trace_map[BT_TRACE_LEVEL_ERROR]) BT_TRACE(TRACE_LAYER_LC, TRACE_TYPE_ERROR, m,p1);}
2112 #define LC_TRACE_ERROR2(m,p1,p2)               {if (lc_trace_level & trace_map[BT_TRACE_LEVEL_ERROR]) BT_TRACE(TRACE_LAYER_LC, TRACE_TYPE_ERROR, m,p1,p2);}
2113 #define LC_TRACE_ERROR3(m,p1,p2,p3)            {if (lc_trace_level & trace_map[BT_TRACE_LEVEL_ERROR]) BT_TRACE(TRACE_LAYER_LC, TRACE_TYPE_ERROR, m,p1,p2,p3);}
2114 #define LC_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (lc_trace_level & trace_map[BT_TRACE_LEVEL_ERROR]) BT_TRACE(TRACE_LAYER_LC, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
2115 #define LC_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (lc_trace_level & trace_map[BT_TRACE_LEVEL_ERROR]) BT_TRACE(TRACE_LAYER_LC, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
2116 #define LC_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (lc_trace_level & trace_map[BT_TRACE_LEVEL_ERROR]) BT_TRACE(TRACE_LAYER_LC, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
2117
2118 #define LC_TRACE_WARNING0(m)                   {if (lc_trace_level & trace_map[BT_TRACE_LEVEL_WARNING]) BT_TRACE(TRACE_LAYER_LC, TRACE_TYPE_WARNING, m);}
2119 #define LC_TRACE_WARNING1(m,p1)                {if (lc_trace_level & trace_map[BT_TRACE_LEVEL_WARNING]) BT_TRACE(TRACE_LAYER_LC, TRACE_TYPE_WARNING, m,p1);}
2120 #define LC_TRACE_WARNING2(m,p1,p2)             {if (lc_trace_level & trace_map[BT_TRACE_LEVEL_WARNING]) BT_TRACE(TRACE_LAYER_LC, TRACE_TYPE_WARNING, m,p1,p2);}
2121 #define LC_TRACE_WARNING3(m,p1,p2,p3)          {if (lc_trace_level & trace_map[BT_TRACE_LEVEL_WARNING]) BT_TRACE(TRACE_LAYER_LC, TRACE_TYPE_WARNING, m,p1,p2,p3);}
2122 #define LC_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (lc_trace_level & trace_map[BT_TRACE_LEVEL_WARNING]) BT_TRACE(TRACE_LAYER_LC, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
2123 #define LC_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (lc_trace_level & trace_map[BT_TRACE_LEVEL_WARNING]) BT_TRACE(TRACE_LAYER_LC, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
2124 #define LC_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (lc_trace_level & trace_map[BT_TRACE_LEVEL_WARNING]) BT_TRACE(TRACE_LAYER_LC, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
2125
2126 #define LC_TRACE_EVENT0(m)                     {if (lc_trace_level & trace_map[BT_TRACE_LEVEL_EVENT]) BT_TRACE(TRACE_LAYER_LC, TRACE_TYPE_EVENT, m);}
2127 #define LC_TRACE_EVENT1(m,p1)                  {if (lc_trace_level & trace_map[BT_TRACE_LEVEL_EVENT]) BT_TRACE(TRACE_LAYER_LC, TRACE_TYPE_EVENT, m, p1);}
2128 #define LC_TRACE_EVENT2(m,p1,p2)               {if (lc_trace_level & trace_map[BT_TRACE_LEVEL_EVENT]) BT_TRACE(TRACE_LAYER_LC, TRACE_TYPE_EVENT, m,p1,p2);}
2129 #define LC_TRACE_EVENT3(m,p1,p2,p3)            {if (lc_trace_level & trace_map[BT_TRACE_LEVEL_EVENT]) BT_TRACE(TRACE_LAYER_LC, TRACE_TYPE_EVENT, m,p1,p2,p3);}
2130 #define LC_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (lc_trace_level & trace_map[BT_TRACE_LEVEL_EVENT]) BT_TRACE(TRACE_LAYER_LC, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
2131 #define LC_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (lc_trace_level & trace_map[BT_TRACE_LEVEL_EVENT]) BT_TRACE(TRACE_LAYER_LC, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
2132 #define LC_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (lc_trace_level & trace_map[BT_TRACE_LEVEL_EVENT]) BT_TRACE(TRACE_LAYER_LC, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
2133
2134 #define LC_TRACE_DEBUG0(m)                     {if (lc_trace_level & trace_map[BT_TRACE_LEVEL_DEBUG]) BT_TRACE(TRACE_LAYER_LC, TRACE_TYPE_DEBUG, m);}
2135 #define LC_TRACE_DEBUG1(m,p1)                  {if (lc_trace_level & trace_map[BT_TRACE_LEVEL_DEBUG]) BT_TRACE(TRACE_LAYER_LC, TRACE_TYPE_DEBUG, m,p1);}
2136 #define LC_TRACE_DEBUG2(m,p1,p2)               {if (lc_trace_level & trace_map[BT_TRACE_LEVEL_DEBUG]) BT_TRACE(TRACE_LAYER_LC, TRACE_TYPE_DEBUG, m,p1,p2);}
2137 #define LC_TRACE_DEBUG3(m,p1,p2,p3)            {if (lc_trace_level & trace_map[BT_TRACE_LEVEL_DEBUG]) BT_TRACE(TRACE_LAYER_LC, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
2138 #define LC_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (lc_trace_level & trace_map[BT_TRACE_LEVEL_DEBUG]) BT_TRACE(TRACE_LAYER_LC, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
2139 #define LC_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (lc_trace_level & trace_map[BT_TRACE_LEVEL_DEBUG]) BT_TRACE(TRACE_LAYER_LC, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
2140
2141 /* Define tracing for the Serial Dongle Application SDA
2142 */
2143 #define SDA_TRACE_ERROR0(m)                     {if (sda_config_cb.sda_trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(m);}
2144 #define SDA_TRACE_ERROR1(m,p1)                  {if (sda_config_cb.sda_trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(m,p1);}
2145 #define SDA_TRACE_ERROR2(m,p1,p2)               {if (sda_config_cb.sda_trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(m,p1,p2);}
2146 #define SDA_TRACE_ERROR3(m,p1,p2,p3)            {if (sda_config_cb.sda_trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(m,p1,p2,p3);}
2147 #define SDA_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (sda_config_cb.sda_trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(m,p1,p2,p3,p4);}
2148 #define SDA_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (sda_config_cb.sda_trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(m,p1,p2,p3,p4,p5);}
2149 #define SDA_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (sda_config_cb.sda_trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(m,p1,p2,p3,p4,p5,p6);}
2150
2151 #define SDA_TRACE_WARNING0(m)                   {if (sda_config_cb.sda_trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(m);}
2152 #define SDA_TRACE_WARNING1(m,p1)                {if (sda_config_cb.sda_trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(m,p1);}
2153 #define SDA_TRACE_WARNING2(m,p1,p2)             {if (sda_config_cb.sda_trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(m,p1,p2);}
2154 #define SDA_TRACE_WARNING3(m,p1,p2,p3)          {if (sda_config_cb.sda_trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(m,p1,p2,p3);}
2155 #define SDA_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (sda_config_cb.sda_trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(m,p1,p2,p3,p4);}
2156 #define SDA_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (sda_config_cb.sda_trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(m,p1,p2,p3,p4,p5);}
2157 #define SDA_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (sda_config_cb.sda_trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(m,p1,p2,p3,p4,p5,p6);}
2158
2159 #define SDA_TRACE_EVENT0(m)                     {if (sda_config_cb.sda_trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(m);}
2160 #define SDA_TRACE_EVENT1(m,p1)                  {if (sda_config_cb.sda_trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(m, p1);}
2161 #define SDA_TRACE_EVENT2(m,p1,p2)               {if (sda_config_cb.sda_trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(m,p1,p2);}
2162 #define SDA_TRACE_EVENT3(m,p1,p2,p3)            {if (sda_config_cb.sda_trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(m,p1,p2,p3);}
2163 #define SDA_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (sda_config_cb.sda_trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(m,p1,p2,p3,p4);}
2164 #define SDA_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (sda_config_cb.sda_trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(m,p1,p2,p3,p4,p5);}
2165 #define SDA_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (sda_config_cb.sda_trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(m,p1,p2,p3,p4,p5,p6);}
2166
2167 #define SDA_TRACE_DEBUG0(m)                     {if (sda_config_cb.sda_trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(m);}
2168 #define SDA_TRACE_DEBUG1(m,p1)                  {if (sda_config_cb.sda_trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(m,p1);}
2169 #define SDA_TRACE_DEBUG2(m,p1,p2)               {if (sda_config_cb.sda_trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(m,p1,p2);}
2170 #define SDA_TRACE_DEBUG3(m,p1,p2,p3)            {if (sda_config_cb.sda_trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(m,p1,p2,p3);}
2171 #define SDA_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (sda_config_cb.sda_trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(m,p1,p2,p3,p4);}
2172 #define SDA_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (sda_config_cb.sda_trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(m,p1,p2,p3,p4,p5);}
2173 #define SDA_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (sda_config_cb.sda_trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(m,p1,p2,p3,p4,p5,p6);}
2174
2175 /* AVDTP
2176 */
2177 #define AVDT_TRACE_ERROR0(m)                     {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_ERROR, m);}
2178 #define AVDT_TRACE_ERROR1(m,p1)                  {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_ERROR, m,p1);}
2179 #define AVDT_TRACE_ERROR2(m,p1,p2)               {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_ERROR, m,p1,p2);}
2180 #define AVDT_TRACE_ERROR3(m,p1,p2,p3)            {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_ERROR, m,p1,p2,p3);}
2181 #define AVDT_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
2182 #define AVDT_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
2183 #define AVDT_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
2184
2185 #define AVDT_TRACE_WARNING0(m)                   {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_WARNING, m);}
2186 #define AVDT_TRACE_WARNING1(m,p1)                {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_WARNING, m,p1);}
2187 #define AVDT_TRACE_WARNING2(m,p1,p2)             {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_WARNING, m,p1,p2);}
2188 #define AVDT_TRACE_WARNING3(m,p1,p2,p3)          {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_WARNING, m,p1,p2,p3);}
2189 #define AVDT_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
2190 #define AVDT_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
2191 #define AVDT_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
2192
2193 #define AVDT_TRACE_EVENT0(m)                     {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_EVENT, m);}
2194 #define AVDT_TRACE_EVENT1(m,p1)                  {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_EVENT, m, p1);}
2195 #define AVDT_TRACE_EVENT2(m,p1,p2)               {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_EVENT, m,p1,p2);}
2196 #define AVDT_TRACE_EVENT3(m,p1,p2,p3)            {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_EVENT, m,p1,p2,p3);}
2197 #define AVDT_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
2198 #define AVDT_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
2199 #define AVDT_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
2200
2201 #define AVDT_TRACE_DEBUG0(m)                     {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_DEBUG, m);}
2202 #define AVDT_TRACE_DEBUG1(m,p1)                  {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_DEBUG, m,p1);}
2203 #define AVDT_TRACE_DEBUG2(m,p1,p2)               {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_DEBUG, m,p1,p2);}
2204 #define AVDT_TRACE_DEBUG3(m,p1,p2,p3)            {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
2205 #define AVDT_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
2206 #define AVDT_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
2207 #define AVDT_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
2208
2209 #define AVDT_TRACE_API0(m)                     {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_API, m);}
2210 #define AVDT_TRACE_API1(m,p1)                  {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_API, m,p1);}
2211 #define AVDT_TRACE_API2(m,p1,p2)               {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_API, m,p1,p2);}
2212 #define AVDT_TRACE_API3(m,p1,p2,p3)            {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_API, m,p1,p2,p3);}
2213 #define AVDT_TRACE_API4(m,p1,p2,p3,p4)         {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_API, m,p1,p2,p3,p4);}
2214 #define AVDT_TRACE_API5(m,p1,p2,p3,p4,p5)      {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
2215 #define AVDT_TRACE_API6(m,p1,p2,p3,p4,p5,p6)   {if (avdt_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
2216
2217 /* Define tracing for the AVCTP protocol
2218 */
2219 #define AVCT_TRACE_ERROR0(m)                     {if (avct_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_ERROR, m);}
2220 #define AVCT_TRACE_ERROR1(m,p1)                  {if (avct_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_ERROR, m,p1);}
2221 #define AVCT_TRACE_ERROR2(m,p1,p2)               {if (avct_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_ERROR, m,p1,p2);}
2222 #define AVCT_TRACE_ERROR3(m,p1,p2,p3)            {if (avct_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_ERROR, m,p1,p2,p3);}
2223 #define AVCT_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (avct_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
2224 #define AVCT_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (avct_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
2225 #define AVCT_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (avct_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
2226
2227 #define AVCT_TRACE_WARNING0(m)                   {if (avct_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_WARNING, m);}
2228 #define AVCT_TRACE_WARNING1(m,p1)                {if (avct_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_WARNING, m,p1);}
2229 #define AVCT_TRACE_WARNING2(m,p1,p2)             {if (avct_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_WARNING, m,p1,p2);}
2230 #define AVCT_TRACE_WARNING3(m,p1,p2,p3)          {if (avct_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_WARNING, m,p1,p2,p3);}
2231 #define AVCT_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (avct_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
2232 #define AVCT_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (avct_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
2233 #define AVCT_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (avct_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
2234
2235 #define AVCT_TRACE_EVENT0(m)                     {if (avct_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_EVENT, m);}
2236 #define AVCT_TRACE_EVENT1(m,p1)                  {if (avct_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_EVENT, m, p1);}
2237 #define AVCT_TRACE_EVENT2(m,p1,p2)               {if (avct_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_EVENT, m,p1,p2);}
2238 #define AVCT_TRACE_EVENT3(m,p1,p2,p3)            {if (avct_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_EVENT, m,p1,p2,p3);}
2239 #define AVCT_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (avct_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
2240 #define AVCT_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (avct_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
2241 #define AVCT_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (avct_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
2242
2243 #define AVCT_TRACE_DEBUG0(m)                     {if (avct_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_DEBUG, m);}
2244 #define AVCT_TRACE_DEBUG1(m,p1)                  {if (avct_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_DEBUG, m,p1);}
2245 #define AVCT_TRACE_DEBUG2(m,p1,p2)               {if (avct_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_DEBUG, m,p1,p2);}
2246 #define AVCT_TRACE_DEBUG3(m,p1,p2,p3)            {if (avct_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
2247 #define AVCT_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (avct_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
2248 #define AVCT_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (avct_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
2249 #define AVCT_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (avct_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
2250
2251 #define AVCT_TRACE_API0(m)                     {if (avct_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_API, m);}
2252 #define AVCT_TRACE_API1(m,p1)                  {if (avct_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_API, m,p1);}
2253 #define AVCT_TRACE_API2(m,p1,p2)               {if (avct_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_API, m,p1,p2);}
2254 #define AVCT_TRACE_API3(m,p1,p2,p3)            {if (avct_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_API, m,p1,p2,p3);}
2255 #define AVCT_TRACE_API4(m,p1,p2,p3,p4)         {if (avct_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_API, m,p1,p2,p3,p4);}
2256 #define AVCT_TRACE_API5(m,p1,p2,p3,p4,p5)      {if (avct_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
2257 #define AVCT_TRACE_API6(m,p1,p2,p3,p4,p5,p6)   {if (avct_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
2258
2259
2260 /* Define tracing for the AVRCP profile
2261 */
2262 #define AVRC_TRACE_ERROR0(m)                      {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_ERROR,m);}
2263 #define AVRC_TRACE_ERROR1(m,p1)                   {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_ERROR,m,p1);}
2264 #define AVRC_TRACE_ERROR2(m,p1,p2)                {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_ERROR,m,p1,p2);}
2265 #define AVRC_TRACE_ERROR3(m,p1,p2,p3)             {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_ERROR,m,p1,p2,p3);}
2266 #define AVRC_TRACE_ERROR4(m,p1,p2,p3,p4)          {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_ERROR,m,p1,p2,p3,p4);}
2267 #define AVRC_TRACE_ERROR5(m,p1,p2,p3,p4,p5)       {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_ERROR,m,p1,p2,p3,p4,p5);}
2268 #define AVRC_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)    {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_ERROR,m,p1,p2,p3,p4,p5,p6);}
2269
2270 #define AVRC_TRACE_WARNING0(m)                    {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_WARNING,m);}
2271 #define AVRC_TRACE_WARNING1(m,p1)                 {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_WARNING,m,p1);}
2272 #define AVRC_TRACE_WARNING2(m,p1,p2)              {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_WARNING,m,p1,p2);}
2273 #define AVRC_TRACE_WARNING3(m,p1,p2,p3)           {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_WARNING,m,p1,p2,p3);}
2274 #define AVRC_TRACE_WARNING4(m,p1,p2,p3,p4)        {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_WARNING,m,p1,p2,p3,p4);}
2275 #define AVRC_TRACE_WARNING5(m,p1,p2,p3,p4,p5)     {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_WARNING,m,p1,p2,p3,p4,p5);}
2276 #define AVRC_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)  {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_WARNING,m,p1,p2,p3,p4,p5,p6);}
2277
2278 #define AVRC_TRACE_EVENT0(m)                      {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_EVENT,m);}
2279 #define AVRC_TRACE_EVENT1(m,p1)                   {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_EVENT,m, p1);}
2280 #define AVRC_TRACE_EVENT2(m,p1,p2)                {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_EVENT,m,p1,p2);}
2281 #define AVRC_TRACE_EVENT3(m,p1,p2,p3)             {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_EVENT,m,p1,p2,p3);}
2282 #define AVRC_TRACE_EVENT4(m,p1,p2,p3,p4)          {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_EVENT,m,p1,p2,p3,p4);}
2283 #define AVRC_TRACE_EVENT5(m,p1,p2,p3,p4,p5)       {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_EVENT,m,p1,p2,p3,p4,p5);}
2284 #define AVRC_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)    {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_EVENT,m,p1,p2,p3,p4,p5,p6);}
2285
2286 #define AVRC_TRACE_DEBUG0(m)                      {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_DEBUG,m);}
2287 #define AVRC_TRACE_DEBUG1(m,p1)                   {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_DEBUG,m,p1);}
2288 #define AVRC_TRACE_DEBUG2(m,p1,p2)                {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_DEBUG,m,p1,p2);}
2289 #define AVRC_TRACE_DEBUG3(m,p1,p2,p3)             {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_DEBUG,m,p1,p2,p3);}
2290 #define AVRC_TRACE_DEBUG4(m,p1,p2,p3,p4)          {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_DEBUG,m,p1,p2,p3,p4);}
2291 #define AVRC_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)       {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_DEBUG,m,p1,p2,p3,p4,p5);}
2292 #define AVRC_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)    {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_DEBUG,m,p1,p2,p3,p4,p5,p6);}
2293
2294 #define AVRC_TRACE_API0(m)                        {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_API,m);}
2295 #define AVRC_TRACE_API1(m,p1)                     {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_API,m, p1);}
2296 #define AVRC_TRACE_API2(m,p1,p2)                  {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_API,m,p1,p2);}
2297 #define AVRC_TRACE_API3(m,p1,p2,p3)               {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_API,m,p1,p2,p3);}
2298 #define AVRC_TRACE_API4(m,p1,p2,p3,p4)            {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_API,m,p1,p2,p3,p4);}
2299 #define AVRC_TRACE_API5(m,p1,p2,p3,p4,p5)         {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_API,m,p1,p2,p3,p4,p5);}
2300 #define AVRC_TRACE_API6(m,p1,p2,p3,p4,p5,p6)      {if (avrc_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AVP, TRACE_TYPE_API,m,p1,p2,p3,p4,p5,p6);}
2301
2302 /* MCAP
2303 */
2304 #define MCA_TRACE_ERROR0(m)                     {if (mca_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_ERROR, m);}
2305 #define MCA_TRACE_ERROR1(m,p1)                  {if (mca_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_ERROR, m,p1);}
2306 #define MCA_TRACE_ERROR2(m,p1,p2)               {if (mca_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_ERROR, m,p1,p2);}
2307 #define MCA_TRACE_ERROR3(m,p1,p2,p3)            {if (mca_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_ERROR, m,p1,p2,p3);}
2308 #define MCA_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (mca_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
2309 #define MCA_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (mca_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
2310 #define MCA_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (mca_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
2311
2312 #define MCA_TRACE_WARNING0(m)                   {if (mca_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_WARNING, m);}
2313 #define MCA_TRACE_WARNING1(m,p1)                {if (mca_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_WARNING, m,p1);}
2314 #define MCA_TRACE_WARNING2(m,p1,p2)             {if (mca_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_WARNING, m,p1,p2);}
2315 #define MCA_TRACE_WARNING3(m,p1,p2,p3)          {if (mca_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_WARNING, m,p1,p2,p3);}
2316 #define MCA_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (mca_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
2317 #define MCA_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (mca_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
2318 #define MCA_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (mca_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
2319
2320 #define MCA_TRACE_EVENT0(m)                     {if (mca_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_EVENT, m);}
2321 #define MCA_TRACE_EVENT1(m,p1)                  {if (mca_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_EVENT, m, p1);}
2322 #define MCA_TRACE_EVENT2(m,p1,p2)               {if (mca_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_EVENT, m,p1,p2);}
2323 #define MCA_TRACE_EVENT3(m,p1,p2,p3)            {if (mca_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_EVENT, m,p1,p2,p3);}
2324 #define MCA_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (mca_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
2325 #define MCA_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (mca_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
2326 #define MCA_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (mca_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
2327
2328 #define MCA_TRACE_DEBUG0(m)                     {if (mca_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_DEBUG, m);}
2329 #define MCA_TRACE_DEBUG1(m,p1)                  {if (mca_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_DEBUG, m,p1);}
2330 #define MCA_TRACE_DEBUG2(m,p1,p2)               {if (mca_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_DEBUG, m,p1,p2);}
2331 #define MCA_TRACE_DEBUG3(m,p1,p2,p3)            {if (mca_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
2332 #define MCA_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (mca_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
2333 #define MCA_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (mca_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
2334 #define MCA_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (mca_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
2335
2336 #define MCA_TRACE_API0(m)                     {if (mca_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_API, m);}
2337 #define MCA_TRACE_API1(m,p1)                  {if (mca_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_API, m,p1);}
2338 #define MCA_TRACE_API2(m,p1,p2)               {if (mca_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_API, m,p1,p2);}
2339 #define MCA_TRACE_API3(m,p1,p2,p3)            {if (mca_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_API, m,p1,p2,p3);}
2340 #define MCA_TRACE_API4(m,p1,p2,p3,p4)         {if (mca_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_API, m,p1,p2,p3,p4);}
2341 #define MCA_TRACE_API5(m,p1,p2,p3,p4,p5)      {if (mca_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
2342 #define MCA_TRACE_API6(m,p1,p2,p3,p4,p5,p6)   {if (mca_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_MCA, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
2343
2344 /* Define tracing for the AMP unit
2345 */
2346 #define AMP_TRACE_ERROR0(m)                     {if (amp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_ERROR, m);}
2347 #define AMP_TRACE_ERROR1(m,p1)                  {if (amp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_ERROR, m,p1);}
2348 #define AMP_TRACE_ERROR2(m,p1,p2)               {if (amp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_ERROR, m,p1,p2);}
2349 #define AMP_TRACE_ERROR3(m,p1,p2,p3)            {if (amp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_ERROR, m,p1,p2,p3);}
2350 #define AMP_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (amp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
2351 #define AMP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (amp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
2352 #define AMP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (amp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
2353
2354 #define AMP_TRACE_WARNING0(m)                   {if (amp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_WARNING, m);}
2355 #define AMP_TRACE_WARNING1(m,p1)                {if (amp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_WARNING, m,p1);}
2356 #define AMP_TRACE_WARNING2(m,p1,p2)             {if (amp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_WARNING, m,p1,p2);}
2357 #define AMP_TRACE_WARNING3(m,p1,p2,p3)          {if (amp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_WARNING, m,p1,p2,p3);}
2358 #define AMP_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (amp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
2359 #define AMP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (amp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
2360 #define AMP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (amp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
2361
2362 #define AMP_TRACE_API0(m)                       {if (amp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_API, m);}
2363 #define AMP_TRACE_API1(m,p1)                    {if (amp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_API, m,p1);}
2364 #define AMP_TRACE_API2(m,p1,p2)                 {if (amp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_API, m,p1,p2);}
2365 #define AMP_TRACE_API3(m,p1,p2,p3)              {if (amp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_API, m,p1,p2,p3);}
2366 #define AMP_TRACE_API4(m,p1,p2,p3,p4)           {if (amp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_API, m,p1,p2,p3,p4);}
2367 #define AMP_TRACE_API5(m,p1,p2,p3,p4,p5)        {if (amp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
2368 #define AMP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)     {if (amp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
2369
2370 #define AMP_TRACE_EVENT0(m)                     {if (amp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_EVENT, m);}
2371 #define AMP_TRACE_EVENT1(m,p1)                  {if (amp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_EVENT, m, p1);}
2372 #define AMP_TRACE_EVENT2(m,p1,p2)               {if (amp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_EVENT, m,p1,p2);}
2373 #define AMP_TRACE_EVENT3(m,p1,p2,p3)            {if (amp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_EVENT, m,p1,p2,p3);}
2374 #define AMP_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (amp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
2375 #define AMP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (amp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
2376 #define AMP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (amp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
2377
2378 #define AMP_TRACE_DEBUG0(m)                     {if (amp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_DEBUG, m);}
2379 #define AMP_TRACE_DEBUG1(m,p1)                  {if (amp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_DEBUG, m,p1);}
2380 #define AMP_TRACE_DEBUG2(m,p1,p2)               {if (amp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_DEBUG, m,p1,p2);}
2381 #define AMP_TRACE_DEBUG3(m,p1,p2,p3)            {if (amp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
2382 #define AMP_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (amp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
2383 #define AMP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (amp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
2384 #define AMP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (amp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_AMP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
2385
2386 /* Define tracing for the ATT/GATT unit
2387 */
2388 #define GATT_TRACE_ERROR0(m)                     {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_ERROR, m);}
2389 #define GATT_TRACE_ERROR1(m,p1)                  {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_ERROR, m,p1);}
2390 #define GATT_TRACE_ERROR2(m,p1,p2)               {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_ERROR, m,p1,p2);}
2391 #define GATT_TRACE_ERROR3(m,p1,p2,p3)            {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_ERROR, m,p1,p2,p3);}
2392 #define GATT_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
2393 #define GATT_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
2394 #define GATT_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
2395
2396 #define GATT_TRACE_WARNING0(m)                   {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_WARNING, m);}
2397 #define GATT_TRACE_WARNING1(m,p1)                {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_WARNING, m,p1);}
2398 #define GATT_TRACE_WARNING2(m,p1,p2)             {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_WARNING, m,p1,p2);}
2399 #define GATT_TRACE_WARNING3(m,p1,p2,p3)          {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_WARNING, m,p1,p2,p3);}
2400 #define GATT_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
2401 #define GATT_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
2402 #define GATT_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
2403
2404 #define GATT_TRACE_API0(m)                       {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_API, m);}
2405 #define GATT_TRACE_API1(m,p1)                    {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_API, m,p1);}
2406 #define GATT_TRACE_API2(m,p1,p2)                 {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_API, m,p1,p2);}
2407 #define GATT_TRACE_API3(m,p1,p2,p3)              {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_API, m,p1,p2,p3);}
2408 #define GATT_TRACE_API4(m,p1,p2,p3,p4)           {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_API, m,p1,p2,p3,p4);}
2409 #define GATT_TRACE_API5(m,p1,p2,p3,p4,p5)        {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
2410 #define GATT_TRACE_API6(m,p1,p2,p3,p4,p5,p6)     {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
2411
2412 #define GATT_TRACE_EVENT0(m)                     {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_EVENT, m);}
2413 #define GATT_TRACE_EVENT1(m,p1)                  {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_EVENT, m, p1);}
2414 #define GATT_TRACE_EVENT2(m,p1,p2)               {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_EVENT, m,p1,p2);}
2415 #define GATT_TRACE_EVENT3(m,p1,p2,p3)            {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_EVENT, m,p1,p2,p3);}
2416 #define GATT_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
2417 #define GATT_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
2418 #define GATT_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
2419
2420 #define GATT_TRACE_DEBUG0(m)                     {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_DEBUG, m);}
2421 #define GATT_TRACE_DEBUG1(m,p1)                  {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_DEBUG, m,p1);}
2422 #define GATT_TRACE_DEBUG2(m,p1,p2)               {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_DEBUG, m,p1,p2);}
2423 #define GATT_TRACE_DEBUG3(m,p1,p2,p3)            {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
2424 #define GATT_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
2425 #define GATT_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
2426 #define GATT_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (gatt_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_ATT, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
2427
2428 /* Define tracing for the SMP unit
2429 */
2430 #define SMP_TRACE_ERROR0(m)                     {if (smp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_ERROR, m);}
2431 #define SMP_TRACE_ERROR1(m,p1)                  {if (smp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_ERROR, m,p1);}
2432 #define SMP_TRACE_ERROR2(m,p1,p2)               {if (smp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_ERROR, m,p1,p2);}
2433 #define SMP_TRACE_ERROR3(m,p1,p2,p3)            {if (smp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_ERROR, m,p1,p2,p3);}
2434 #define SMP_TRACE_ERROR4(m,p1,p2,p3,p4)         {if (smp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4);}
2435 #define SMP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)      {if (smp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5);}
2436 #define SMP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)   {if (smp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_ERROR, m,p1,p2,p3,p4,p5,p6);}
2437
2438 #define SMP_TRACE_WARNING0(m)                   {if (smp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_WARNING, m);}
2439 #define SMP_TRACE_WARNING1(m,p1)                {if (smp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_WARNING, m,p1);}
2440 #define SMP_TRACE_WARNING2(m,p1,p2)             {if (smp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_WARNING, m,p1,p2);}
2441 #define SMP_TRACE_WARNING3(m,p1,p2,p3)          {if (smp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_WARNING, m,p1,p2,p3);}
2442 #define SMP_TRACE_WARNING4(m,p1,p2,p3,p4)       {if (smp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4);}
2443 #define SMP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)    {if (smp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5);}
2444 #define SMP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (smp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_WARNING, m,p1,p2,p3,p4,p5,p6);}
2445
2446 #define SMP_TRACE_API0(m)                       {if (smp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_API, m);}
2447 #define SMP_TRACE_API1(m,p1)                    {if (smp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_API, m,p1);}
2448 #define SMP_TRACE_API2(m,p1,p2)                 {if (smp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_API, m,p1,p2);}
2449 #define SMP_TRACE_API3(m,p1,p2,p3)              {if (smp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_API, m,p1,p2,p3);}
2450 #define SMP_TRACE_API4(m,p1,p2,p3,p4)           {if (smp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_API, m,p1,p2,p3,p4);}
2451 #define SMP_TRACE_API5(m,p1,p2,p3,p4,p5)        {if (smp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5);}
2452 #define SMP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)     {if (smp_cb.trace_level >= BT_TRACE_LEVEL_API) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_API, m,p1,p2,p3,p4,p5,p6);}
2453
2454 #define SMP_TRACE_EVENT0(m)                     {if (smp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_EVENT, m);}
2455 #define SMP_TRACE_EVENT1(m,p1)                  {if (smp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_EVENT, m, p1);}
2456 #define SMP_TRACE_EVENT2(m,p1,p2)               {if (smp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_EVENT, m,p1,p2);}
2457 #define SMP_TRACE_EVENT3(m,p1,p2,p3)            {if (smp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_EVENT, m,p1,p2,p3);}
2458 #define SMP_TRACE_EVENT4(m,p1,p2,p3,p4)         {if (smp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4);}
2459 #define SMP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)      {if (smp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5);}
2460 #define SMP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)   {if (smp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_EVENT, m,p1,p2,p3,p4,p5,p6);}
2461
2462 #define SMP_TRACE_DEBUG0(m)                     {if (smp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_DEBUG, m);}
2463 #define SMP_TRACE_DEBUG1(m,p1)                  {if (smp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_DEBUG, m,p1);}
2464 #define SMP_TRACE_DEBUG2(m,p1,p2)               {if (smp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_DEBUG, m,p1,p2);}
2465 #define SMP_TRACE_DEBUG3(m,p1,p2,p3)            {if (smp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_DEBUG, m,p1,p2,p3);}
2466 #define SMP_TRACE_DEBUG4(m,p1,p2,p3,p4)         {if (smp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4);}
2467 #define SMP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)      {if (smp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5);}
2468 #define SMP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)   {if (smp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) BT_TRACE(TRACE_LAYER_SMP, TRACE_TYPE_DEBUG, m,p1,p2,p3,p4,p5,p6);}
2469
2470 /* END OF USE TRACES */
2471 #else
2472
2473 #define BT_TRACE(l,t,...)
2474 #define BT_BT_ERROR_TRACE(l,...)
2475
2476 /* Define tracing for the HCI unit
2477 */
2478 #define HCI_TRACE_ERROR(...)
2479 #define HCI_TRACE_WARNING(...)
2480 #define HCI_TRACE_EVENT(...)
2481 #define HCI_TRACE_DEBUG(...)
2482
2483
2484 /* Define tracing for BTM
2485 */
2486 #define BTM_TRACE_ERROR(...)
2487 #define BTM_TRACE_WARNING(...)
2488 #define BTM_TRACE_API(...)
2489 #define BTM_TRACE_EVENT(...)
2490 #define BTM_TRACE_DEBUG(...)
2491
2492
2493 /* Define tracing for the L2CAP unit
2494 */
2495 #define L2CAP_TRACE_ERROR0(m)
2496 #define L2CAP_TRACE_ERROR1(m,p1)
2497 #define L2CAP_TRACE_ERROR2(m,p1,p2)
2498 #define L2CAP_TRACE_ERROR3(m,p1,p2,p3)
2499 #define L2CAP_TRACE_ERROR4(m,p1,p2,p3,p4)
2500 #define L2CAP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
2501 #define L2CAP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
2502
2503 #define L2CAP_TRACE_WARNING0(m)
2504 #define L2CAP_TRACE_WARNING1(m,p1)
2505 #define L2CAP_TRACE_WARNING2(m,p1,p2)
2506 #define L2CAP_TRACE_WARNING3(m,p1,p2,p3)
2507 #define L2CAP_TRACE_WARNING4(m,p1,p2,p3,p4)
2508 #define L2CAP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
2509 #define L2CAP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
2510
2511 #define L2CAP_TRACE_API0(m)
2512 #define L2CAP_TRACE_API1(m,p1)
2513 #define L2CAP_TRACE_API2(m,p1,p2)
2514 #define L2CAP_TRACE_API3(m,p1,p2,p3)
2515 #define L2CAP_TRACE_API4(m,p1,p2,p3,p4)
2516 #define L2CAP_TRACE_API5(m,p1,p2,p3,p4,p5)
2517 #define L2CAP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
2518
2519 #define L2CAP_TRACE_EVENT0(m)
2520 #define L2CAP_TRACE_EVENT1(m,p1)
2521 #define L2CAP_TRACE_EVENT2(m,p1,p2)
2522 #define L2CAP_TRACE_EVENT3(m,p1,p2,p3)
2523 #define L2CAP_TRACE_EVENT4(m,p1,p2,p3,p4)
2524 #define L2CAP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
2525 #define L2CAP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
2526
2527 #define L2CAP_TRACE_DEBUG0(m)
2528 #define L2CAP_TRACE_DEBUG1(m,p1)
2529 #define L2CAP_TRACE_DEBUG2(m,p1,p2)
2530 #define L2CAP_TRACE_DEBUG3(m,p1,p2,p3)
2531 #define L2CAP_TRACE_DEBUG4(m,p1,p2,p3,p4)
2532 #define L2CAP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
2533 #define L2CAP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
2534
2535 /* Define tracing for the LLCP unit
2536 */
2537 #define LLCP_TRACE_ERROR0(m)
2538 #define LLCP_TRACE_ERROR1(m,p1)
2539 #define LLCP_TRACE_ERROR2(m,p1,p2)
2540 #define LLCP_TRACE_ERROR3(m,p1,p2,p3)
2541 #define LLCP_TRACE_ERROR4(m,p1,p2,p3,p4)
2542 #define LLCP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
2543 #define LLCP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
2544
2545 #define LLCP_TRACE_WARNING0(m)
2546 #define LLCP_TRACE_WARNING1(m,p1)
2547 #define LLCP_TRACE_WARNING2(m,p1,p2)
2548 #define LLCP_TRACE_WARNING3(m,p1,p2,p3)
2549 #define LLCP_TRACE_WARNING4(m,p1,p2,p3,p4)
2550 #define LLCP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
2551 #define LLCP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
2552
2553 #define LLCP_TRACE_API0(m)
2554 #define LLCP_TRACE_API1(m,p1)
2555 #define LLCP_TRACE_API2(m,p1,p2)
2556 #define LLCP_TRACE_API3(m,p1,p2,p3)
2557 #define LLCP_TRACE_API4(m,p1,p2,p3,p4)
2558 #define LLCP_TRACE_API5(m,p1,p2,p3,p4,p5)
2559 #define LLCP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
2560
2561 #define LLCP_TRACE_EVENT0(m)
2562 #define LLCP_TRACE_EVENT1(m,p1)
2563 #define LLCP_TRACE_EVENT2(m,p1,p2)
2564 #define LLCP_TRACE_EVENT3(m,p1,p2,p3)
2565 #define LLCP_TRACE_EVENT4(m,p1,p2,p3,p4)
2566 #define LLCP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
2567 #define LLCP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
2568
2569 #define LLCP_TRACE_DEBUG0(m)
2570 #define LLCP_TRACE_DEBUG1(m,p1)
2571 #define LLCP_TRACE_DEBUG2(m,p1,p2)
2572 #define LLCP_TRACE_DEBUG3(m,p1,p2,p3)
2573 #define LLCP_TRACE_DEBUG4(m,p1,p2,p3,p4)
2574 #define LLCP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
2575 #define LLCP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
2576
2577 /* Define tracing for the SDP unit
2578 */
2579 #define SDP_TRACE_ERROR0(m)
2580 #define SDP_TRACE_ERROR1(m,p1)
2581 #define SDP_TRACE_ERROR2(m,p1,p2)
2582 #define SDP_TRACE_ERROR3(m,p1,p2,p3)
2583 #define SDP_TRACE_ERROR4(m,p1,p2,p3,p4)
2584 #define SDP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
2585 #define SDP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
2586
2587 #define SDP_TRACE_WARNING0(m)
2588 #define SDP_TRACE_WARNING1(m,p1)
2589 #define SDP_TRACE_WARNING2(m,p1,p2)
2590 #define SDP_TRACE_WARNING3(m,p1,p2,p3)
2591 #define SDP_TRACE_WARNING4(m,p1,p2,p3,p4)
2592 #define SDP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
2593 #define SDP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
2594
2595 #define SDP_TRACE_API0(m)
2596 #define SDP_TRACE_API1(m,p1)
2597 #define SDP_TRACE_API2(m,p1,p2)
2598 #define SDP_TRACE_API3(m,p1,p2,p3)
2599 #define SDP_TRACE_API4(m,p1,p2,p3,p4)
2600 #define SDP_TRACE_API5(m,p1,p2,p3,p4,p5)
2601 #define SDP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
2602
2603 #define SDP_TRACE_EVENT0(m)
2604 #define SDP_TRACE_EVENT1(m,p1)
2605 #define SDP_TRACE_EVENT2(m,p1,p2)
2606 #define SDP_TRACE_EVENT3(m,p1,p2,p3)
2607 #define SDP_TRACE_EVENT4(m,p1,p2,p3,p4)
2608 #define SDP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
2609 #define SDP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
2610
2611 #define SDP_TRACE_DEBUG0(m)
2612 #define SDP_TRACE_DEBUG1(m,p1)
2613 #define SDP_TRACE_DEBUG2(m,p1,p2)
2614 #define SDP_TRACE_DEBUG3(m,p1,p2,p3)
2615 #define SDP_TRACE_DEBUG4(m,p1,p2,p3,p4)
2616 #define SDP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
2617 #define SDP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
2618
2619 /* Define tracing for the RFCOMM unit
2620 */
2621 #define RFCOMM_TRACE_ERROR0(m)
2622 #define RFCOMM_TRACE_ERROR1(m,p1)
2623 #define RFCOMM_TRACE_ERROR2(m,p1,p2)
2624 #define RFCOMM_TRACE_ERROR3(m,p1,p2,p3)
2625 #define RFCOMM_TRACE_ERROR4(m,p1,p2,p3,p4)
2626 #define RFCOMM_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
2627 #define RFCOMM_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
2628
2629 #define RFCOMM_TRACE_WARNING0(m)
2630 #define RFCOMM_TRACE_WARNING1(m,p1)
2631 #define RFCOMM_TRACE_WARNING2(m,p1,p2)
2632 #define RFCOMM_TRACE_WARNING3(m,p1,p2,p3)
2633 #define RFCOMM_TRACE_WARNING4(m,p1,p2,p3,p4)
2634 #define RFCOMM_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
2635 #define RFCOMM_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
2636
2637 #define RFCOMM_TRACE_API0(m)
2638 #define RFCOMM_TRACE_API1(m,p1)
2639 #define RFCOMM_TRACE_API2(m,p1,p2)
2640 #define RFCOMM_TRACE_API3(m,p1,p2,p3)
2641 #define RFCOMM_TRACE_API4(m,p1,p2,p3,p4)
2642 #define RFCOMM_TRACE_API5(m,p1,p2,p3,p4,p5)
2643 #define RFCOMM_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
2644
2645 #define RFCOMM_TRACE_EVENT0(m)
2646 #define RFCOMM_TRACE_EVENT1(m,p1)
2647 #define RFCOMM_TRACE_EVENT2(m,p1,p2)
2648 #define RFCOMM_TRACE_EVENT3(m,p1,p2,p3)
2649 #define RFCOMM_TRACE_EVENT4(m,p1,p2,p3,p4)
2650 #define RFCOMM_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
2651 #define RFCOMM_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
2652
2653 #define RFCOMM_TRACE_DEBUG0(m)
2654 #define RFCOMM_TRACE_DEBUG1(m,p1)
2655 #define RFCOMM_TRACE_DEBUG2(m,p1,p2)
2656 #define RFCOMM_TRACE_DEBUG3(m,p1,p2,p3)
2657 #define RFCOMM_TRACE_DEBUG4(m,p1,p2,p3,p4)
2658 #define RFCOMM_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
2659 #define RFCOMM_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
2660
2661 /* Define tracing for Serial Port Profile
2662 */
2663 #define SPP_TRACE_ERROR0(m)
2664 #define SPP_TRACE_ERROR1(m,p1)
2665 #define SPP_TRACE_ERROR2(m,p1,p2)
2666 #define SPP_TRACE_ERROR3(m,p1,p2,p3)
2667 #define SPP_TRACE_ERROR4(m,p1,p2,p3,p4)
2668 #define SPP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
2669 #define SPP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
2670
2671 #define SPP_TRACE_WARNING0(m)
2672 #define SPP_TRACE_WARNING1(m,p1)
2673 #define SPP_TRACE_WARNING2(m,p1,p2)
2674 #define SPP_TRACE_WARNING3(m,p1,p2,p3)
2675 #define SPP_TRACE_WARNING4(m,p1,p2,p3,p4)
2676 #define SPP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
2677 #define SPP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
2678
2679 #define SPP_TRACE_EVENT0(m)
2680 #define SPP_TRACE_EVENT1(m,p1)
2681 #define SPP_TRACE_EVENT2(m,p1,p2)
2682 #define SPP_TRACE_EVENT3(m,p1,p2,p3)
2683 #define SPP_TRACE_EVENT4(m,p1,p2,p3,p4)
2684 #define SPP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
2685 #define SPP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
2686
2687 #define SPP_TRACE_API0(m)
2688 #define SPP_TRACE_API1(m,p1)
2689 #define SPP_TRACE_API2(m,p1,p2)
2690 #define SPP_TRACE_API3(m,p1,p2,p3)
2691 #define SPP_TRACE_API4(m,p1,p2,p3,p4)
2692 #define SPP_TRACE_API5(m,p1,p2,p3,p4,p5)
2693 #define SPP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
2694
2695 #define SPP_TRACE_DEBUG0(m)
2696 #define SPP_TRACE_DEBUG1(m,p1)
2697 #define SPP_TRACE_DEBUG2(m,p1,p2)
2698 #define SPP_TRACE_DEBUG3(m,p1,p2,p3)
2699 #define SPP_TRACE_DEBUG4(m,p1,p2,p3,p4)
2700 #define SPP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
2701 #define SPP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
2702
2703
2704 /* Generic Access Profile traces */
2705 #define GAP_TRACE_ERROR0(m)
2706 #define GAP_TRACE_ERROR1(m,p1)
2707 #define GAP_TRACE_ERROR2(m,p1,p2)
2708 #define GAP_TRACE_ERROR3(m,p1,p2,p3)
2709 #define GAP_TRACE_ERROR4(m,p1,p2,p3,p4)
2710 #define GAP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
2711 #define GAP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
2712
2713 #define GAP_TRACE_EVENT0(m)
2714 #define GAP_TRACE_EVENT1(m,p1)
2715 #define GAP_TRACE_EVENT2(m,p1,p2)
2716 #define GAP_TRACE_EVENT3(m,p1,p2,p3)
2717 #define GAP_TRACE_EVENT4(m,p1,p2,p3,p4)
2718 #define GAP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
2719 #define GAP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
2720
2721 #define GAP_TRACE_API0(m)
2722 #define GAP_TRACE_API1(m,p1)
2723 #define GAP_TRACE_API2(m,p1,p2)
2724 #define GAP_TRACE_API3(m,p1,p2,p3)
2725 #define GAP_TRACE_API4(m,p1,p2,p3,p4)
2726 #define GAP_TRACE_API5(m,p1,p2,p3,p4,p5)
2727 #define GAP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
2728
2729 #define GAP_TRACE_WARNING0(m)
2730 #define GAP_TRACE_WARNING1(m,p1)
2731 #define GAP_TRACE_WARNING2(m,p1,p2)
2732 #define GAP_TRACE_WARNING3(m,p1,p2,p3)
2733 #define GAP_TRACE_WARNING4(m,p1,p2,p3,p4)
2734 #define GAP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
2735 #define GAP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
2736
2737
2738 /* Define tracing for OBX
2739 */
2740 #define OBX_TRACE_ERROR0(m)
2741 #define OBX_TRACE_ERROR1(m,p1)
2742 #define OBX_TRACE_ERROR2(m,p1,p2)
2743 #define OBX_TRACE_ERROR3(m,p1,p2,p3)
2744 #define OBX_TRACE_ERROR4(m,p1,p2,p3,p4)
2745 #define OBX_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
2746 #define OBX_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
2747
2748 #define OBX_TRACE_WARNING0(m)
2749 #define OBX_TRACE_WARNING1(m,p1)
2750 #define OBX_TRACE_WARNING2(m,p1,p2)
2751 #define OBX_TRACE_WARNING3(m,p1,p2,p3)
2752 #define OBX_TRACE_WARNING4(m,p1,p2,p3,p4)
2753 #define OBX_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
2754 #define OBX_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
2755
2756 #define OBX_TRACE_EVENT0(m)
2757 #define OBX_TRACE_EVENT1(m,p1)
2758 #define OBX_TRACE_EVENT2(m,p1,p2)
2759 #define OBX_TRACE_EVENT3(m,p1,p2,p3)
2760 #define OBX_TRACE_EVENT4(m,p1,p2,p3,p4)
2761 #define OBX_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
2762 #define OBX_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
2763
2764 #define OBX_TRACE_DEBUG0(m)
2765 #define OBX_TRACE_DEBUG1(m,p1)
2766 #define OBX_TRACE_DEBUG2(m,p1,p2)
2767 #define OBX_TRACE_DEBUG3(m,p1,p2,p3)
2768 #define OBX_TRACE_DEBUG4(m,p1,p2,p3,p4)
2769 #define OBX_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
2770 #define OBX_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
2771
2772 #define OBX_TRACE_API0(m)
2773 #define OBX_TRACE_API1(m,p1)
2774 #define OBX_TRACE_API2(m,p1,p2)
2775 #define OBX_TRACE_API3(m,p1,p2,p3)
2776 #define OBX_TRACE_API4(m,p1,p2,p3,p4)
2777 #define OBX_TRACE_API5(m,p1,p2,p3,p4,p5)
2778 #define OBX_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
2779
2780 /* Define tracing for GOEP application profiles
2781 */
2782 #define GOEP_TRACE_ERROR0(m)
2783 #define GOEP_TRACE_ERROR1(m,p1)
2784 #define GOEP_TRACE_ERROR2(m,p1,p2)
2785 #define GOEP_TRACE_ERROR3(m,p1,p2,p3)
2786 #define GOEP_TRACE_ERROR4(m,p1,p2,p3,p4)
2787 #define GOEP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
2788 #define GOEP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
2789
2790 #define GOEP_TRACE_WARNING0(m)
2791 #define GOEP_TRACE_WARNING1(m,p1)
2792 #define GOEP_TRACE_WARNING2(m,p1,p2)
2793 #define GOEP_TRACE_WARNING3(m,p1,p2,p3)
2794 #define GOEP_TRACE_WARNING4(m,p1,p2,p3,p4)
2795 #define GOEP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
2796 #define GOEP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
2797
2798 #define GOEP_TRACE_EVENT0(m)
2799 #define GOEP_TRACE_EVENT1(m,p1)
2800 #define GOEP_TRACE_EVENT2(m,p1,p2)
2801 #define GOEP_TRACE_EVENT3(m,p1,p2,p3)
2802 #define GOEP_TRACE_EVENT4(m,p1,p2,p3,p4)
2803 #define GOEP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
2804 #define GOEP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
2805
2806 #define GOEP_TRACE_DEBUG0(m)
2807 #define GOEP_TRACE_DEBUG1(m,p1)
2808 #define GOEP_TRACE_DEBUG2(m,p1,p2)
2809 #define GOEP_TRACE_DEBUG3(m,p1,p2,p3)
2810 #define GOEP_TRACE_DEBUG4(m,p1,p2,p3,p4)
2811 #define GOEP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
2812
2813 #define GOEP_TRACE_API0(m)
2814 #define GOEP_TRACE_API1(m,p1)
2815 #define GOEP_TRACE_API2(m,p1,p2)
2816 #define GOEP_TRACE_API3(m,p1,p2,p3)
2817 #define GOEP_TRACE_API4(m,p1,p2,p3,p4)
2818 #define GOEP_TRACE_API5(m,p1,p2,p3,p4,p5)
2819 #define GOEP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
2820
2821 /* Define tracing for the BPP profile
2822 */
2823 #define BPP_TRACE_ERROR0(m)
2824 #define BPP_TRACE_ERROR1(m,p1)
2825 #define BPP_TRACE_ERROR2(m,p1,p2)
2826 #define BPP_TRACE_ERROR3(m,p1,p2,p3)
2827 #define BPP_TRACE_ERROR4(m,p1,p2,p3,p4)
2828 #define BPP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
2829 #define BPP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
2830
2831 #define BPP_TRACE_WARNING0(m)
2832 #define BPP_TRACE_WARNING1(m,p1)
2833 #define BPP_TRACE_WARNING2(m,p1,p2)
2834 #define BPP_TRACE_WARNING3(m,p1,p2,p3)
2835 #define BPP_TRACE_WARNING4(m,p1,p2,p3,p4)
2836 #define BPP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
2837 #define BPP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
2838
2839 #define BPP_TRACE_EVENT0(m)
2840 #define BPP_TRACE_EVENT1(m,p1)
2841 #define BPP_TRACE_EVENT2(m,p1,p2)
2842 #define BPP_TRACE_EVENT3(m,p1,p2,p3)
2843 #define BPP_TRACE_EVENT4(m,p1,p2,p3,p4)
2844 #define BPP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
2845 #define BPP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
2846
2847 #define BPP_TRACE_DEBUG0(m)
2848 #define BPP_TRACE_DEBUG1(m,p1)
2849 #define BPP_TRACE_DEBUG2(m,p1,p2)
2850 #define BPP_TRACE_DEBUG3(m,p1,p2,p3)
2851 #define BPP_TRACE_DEBUG4(m,p1,p2,p3,p4)
2852 #define BPP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
2853 #define BPP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
2854
2855 #define BPP_TRACE_API0(m)
2856 #define BPP_TRACE_API1(m,p1)
2857 #define BPP_TRACE_API2(m,p1,p2)
2858 #define BPP_TRACE_API3(m,p1,p2,p3)
2859 #define BPP_TRACE_API4(m,p1,p2,p3,p4)
2860 #define BPP_TRACE_API5(m,p1,p2,p3,p4,p5)
2861 #define BPP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
2862
2863 /* Define tracing for the BIP profile
2864 */
2865 #define BIP_TRACE_ERROR0(m)
2866 #define BIP_TRACE_ERROR1(m,p1)
2867 #define BIP_TRACE_ERROR2(m,p1,p2)
2868 #define BIP_TRACE_ERROR3(m,p1,p2,p3)
2869 #define BIP_TRACE_ERROR4(m,p1,p2,p3,p4)
2870 #define BIP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
2871 #define BIP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
2872
2873 #define BIP_TRACE_WARNING0(m)
2874 #define BIP_TRACE_WARNING1(m,p1)
2875 #define BIP_TRACE_WARNING2(m,p1,p2)
2876 #define BIP_TRACE_WARNING3(m,p1,p2,p3)
2877 #define BIP_TRACE_WARNING4(m,p1,p2,p3,p4)
2878 #define BIP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
2879 #define BIP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
2880
2881 #define BIP_TRACE_EVENT0(m)
2882 #define BIP_TRACE_EVENT1(m,p1)
2883 #define BIP_TRACE_EVENT2(m,p1,p2)
2884 #define BIP_TRACE_EVENT3(m,p1,p2,p3)
2885 #define BIP_TRACE_EVENT4(m,p1,p2,p3,p4)
2886 #define BIP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
2887 #define BIP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
2888
2889 #define BIP_TRACE_DEBUG0(m)
2890 #define BIP_TRACE_DEBUG1(m,p1)
2891 #define BIP_TRACE_DEBUG2(m,p1,p2)
2892 #define BIP_TRACE_DEBUG3(m,p1,p2,p3)
2893 #define BIP_TRACE_DEBUG4(m,p1,p2,p3,p4)
2894 #define BIP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
2895 #define BIP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
2896
2897 #define BIP_TRACE_API0(m)
2898 #define BIP_TRACE_API1(m,p1)
2899 #define BIP_TRACE_API2(m,p1,p2)
2900 #define BIP_TRACE_API3(m,p1,p2,p3)
2901 #define BIP_TRACE_API4(m,p1,p2,p3,p4)
2902 #define BIP_TRACE_API5(m,p1,p2,p3,p4,p5)
2903 #define BIP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
2904
2905 /* Define tracing for TCS
2906 */
2907 #define TCS_TRACE_ERROR0(m)
2908 #define TCS_TRACE_ERROR1(m,p1)
2909 #define TCS_TRACE_ERROR2(m,p1,p2)
2910 #define TCS_TRACE_ERROR3(m,p1,p2,p3)
2911 #define TCS_TRACE_ERROR4(m,p1,p2,p3,p4)
2912 #define TCS_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
2913 #define TCS_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
2914
2915 #define TCS_TRACE_WARNING0(m)
2916 #define TCS_TRACE_WARNING1(m,p1)
2917 #define TCS_TRACE_WARNING2(m,p1,p2)
2918 #define TCS_TRACE_WARNING3(m,p1,p2,p3)
2919 #define TCS_TRACE_WARNING4(m,p1,p2,p3,p4)
2920 #define TCS_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
2921 #define TCS_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
2922
2923 #define TCS_TRACE_EVENT0(m)
2924 #define TCS_TRACE_EVENT1(m,p1)
2925 #define TCS_TRACE_EVENT2(m,p1,p2)
2926 #define TCS_TRACE_EVENT3(m,p1,p2,p3)
2927 #define TCS_TRACE_EVENT4(m,p1,p2,p3,p4)
2928 #define TCS_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
2929 #define TCS_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
2930
2931 #define TCS_TRACE_DEBUG0(m)
2932 #define TCS_TRACE_DEBUG1(m,p1)
2933 #define TCS_TRACE_DEBUG2(m,p1,p2)
2934 #define TCS_TRACE_DEBUG3(m,p1,p2,p3)
2935 #define TCS_TRACE_DEBUG4(m,p1,p2,p3,p4)
2936 #define TCS_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
2937 #define TCS_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
2938
2939 #define TCS_TRACE_API0(m)
2940 #define TCS_TRACE_API1(m,p1)
2941 #define TCS_TRACE_API2(m,p1,p2)
2942 #define TCS_TRACE_API3(m,p1,p2,p3)
2943 #define TCS_TRACE_API4(m,p1,p2,p3,p4)
2944 #define TCS_TRACE_API5(m,p1,p2,p3,p4,p5)
2945 #define TCS_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
2946
2947 /* Define tracing for ICP
2948 */
2949 #define ICP_TRACE_ERROR0(m)
2950 #define ICP_TRACE_ERROR1(m,p1)
2951 #define ICP_TRACE_ERROR2(m,p1,p2)
2952 #define ICP_TRACE_ERROR3(m,p1,p2,p3)
2953 #define ICP_TRACE_ERROR4(m,p1,p2,p3,p4)
2954 #define ICP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
2955 #define ICP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
2956
2957 #define ICP_TRACE_WARNING0(m)
2958 #define ICP_TRACE_WARNING1(m,p1)
2959 #define ICP_TRACE_WARNING2(m,p1,p2)
2960 #define ICP_TRACE_WARNING3(m,p1,p2,p3)
2961 #define ICP_TRACE_WARNING4(m,p1,p2,p3,p4)
2962 #define ICP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
2963 #define ICP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
2964
2965 #define ICP_TRACE_EVENT0(m)
2966 #define ICP_TRACE_EVENT1(m,p1)
2967 #define ICP_TRACE_EVENT2(m,p1,p2)
2968 #define ICP_TRACE_EVENT3(m,p1,p2,p3)
2969 #define ICP_TRACE_EVENT4(m,p1,p2,p3,p4)
2970 #define ICP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
2971 #define ICP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
2972
2973 #define ICP_TRACE_DEBUG0(m)
2974 #define ICP_TRACE_DEBUG1(m,p1)
2975 #define ICP_TRACE_DEBUG2(m,p1,p2)
2976 #define ICP_TRACE_DEBUG3(m,p1,p2,p3)
2977 #define ICP_TRACE_DEBUG4(m,p1,p2,p3,p4)
2978 #define ICP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
2979 #define ICP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
2980
2981 #define ICP_TRACE_API0(m)
2982 #define ICP_TRACE_API1(m,p1)
2983 #define ICP_TRACE_API2(m,p1,p2)
2984 #define ICP_TRACE_API3(m,p1,p2,p3)
2985 #define ICP_TRACE_API4(m,p1,p2,p3,p4)
2986 #define ICP_TRACE_API5(m,p1,p2,p3,p4,p5)
2987 #define ICP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
2988
2989 /* Define tracing for CTP
2990 */
2991 #define CTP_TRACE_ERROR0(m)
2992 #define CTP_TRACE_ERROR1(m,p1)
2993 #define CTP_TRACE_ERROR2(m,p1,p2)
2994 #define CTP_TRACE_ERROR3(m,p1,p2,p3)
2995 #define CTP_TRACE_ERROR4(m,p1,p2,p3,p4)
2996 #define CTP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
2997 #define CTP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
2998
2999 #define CTP_TRACE_WARNING0(m)
3000 #define CTP_TRACE_WARNING1(m,p1)
3001 #define CTP_TRACE_WARNING2(m,p1,p2)
3002 #define CTP_TRACE_WARNING3(m,p1,p2,p3)
3003 #define CTP_TRACE_WARNING4(m,p1,p2,p3,p4)
3004 #define CTP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
3005 #define CTP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
3006
3007 #define CTP_TRACE_EVENT0(m)
3008 #define CTP_TRACE_EVENT1(m,p1)
3009 #define CTP_TRACE_EVENT2(m,p1,p2)
3010 #define CTP_TRACE_EVENT3(m,p1,p2,p3)
3011 #define CTP_TRACE_EVENT4(m,p1,p2,p3,p4)
3012 #define CTP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
3013 #define CTP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
3014
3015 #define CTP_TRACE_DEBUG0(m)
3016 #define CTP_TRACE_DEBUG1(m,p1)
3017 #define CTP_TRACE_DEBUG2(m,p1,p2)
3018 #define CTP_TRACE_DEBUG3(m,p1,p2,p3)
3019 #define CTP_TRACE_DEBUG4(m,p1,p2,p3,p4)
3020 #define CTP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
3021 #define CTP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
3022
3023 #define CTP_TRACE_API0(m)
3024 #define CTP_TRACE_API1(m,p1)
3025 #define CTP_TRACE_API2(m,p1,p2)
3026 #define CTP_TRACE_API3(m,p1,p2,p3)
3027 #define CTP_TRACE_API4(m,p1,p2,p3,p4)
3028 #define CTP_TRACE_API5(m,p1,p2,p3,p4,p5)
3029 #define CTP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
3030
3031 /* define traces for headset profile */
3032
3033 #define HSP2_TRACE_ERROR0(pcb,m)
3034 #define HSP2_TRACE_ERROR1(pcb,m,p1)
3035 #define HSP2_TRACE_ERROR2(pcb,m,p1,p2)
3036 #define HSP2_TRACE_ERROR3(pcb,m,p1,p2,p3)
3037 #define HSP2_TRACE_ERROR4(pcb,m,p1,p2,p3,p4)
3038 #define HSP2_TRACE_ERROR5(pcb,m,p1,p2,p3,p4,p5)
3039 #define HSP2_TRACE_ERROR6(pcb,m,p1,p2,p3,p4,p5,p6)
3040
3041 #define HSP2_TRACE_WARNING0(pcb,m)
3042 #define HSP2_TRACE_WARNING1(pcb,m,p1)
3043 #define HSP2_TRACE_WARNING2(pcb,m,p1,p2)
3044 #define HSP2_TRACE_WARNING3(pcb,m,p1,p2,p3)
3045 #define HSP2_TRACE_WARNING4(pcb,m,p1,p2,p3,p4)
3046 #define HSP2_TRACE_WARNING5(pcb,m,p1,p2,p3,p4,p5)
3047 #define HSP2_TRACE_WARNING6(pcb,m,p1,p2,p3,p4,p5,p6)
3048
3049 #define HSP2_TRACE_API0(pcb,m)
3050 #define HSP2_TRACE_API1(pcb,m,p1)
3051 #define HSP2_TRACE_API2(pcb,m,p1,p2)
3052 #define HSP2_TRACE_API3(pcb,m,p1,p2,p3)
3053 #define HSP2_TRACE_API4(pcb,m,p1,p2,p3,p4)
3054 #define HSP2_TRACE_API5(pcb,m,p1,p2,p3,p4,p5)
3055 #define HSP2_TRACE_API6(pcb,m,p1,p2,p3,p4,p5,p6)
3056
3057 #define HSP2_TRACE_EVENT0(pcb,m)
3058 #define HSP2_TRACE_EVENT1(pcb,m,p1)
3059 #define HSP2_TRACE_EVENT2(pcb,m,p1,p2)
3060 #define HSP2_TRACE_EVENT3(pcb,m,p1,p2,p3)
3061 #define HSP2_TRACE_EVENT4(pcb,m,p1,p2,p3,p4)
3062 #define HSP2_TRACE_EVENT5(pcb,m,p1,p2,p3,p4,p5)
3063 #define HSP2_TRACE_EVENT6(pcb,m,p1,p2,p3,p4,p5,p6)
3064
3065 #define HSP2_TRACE_DEBUG0(pcb,m)
3066 #define HSP2_TRACE_DEBUG1(pcb,m,p1)
3067 #define HSP2_TRACE_DEBUG2(pcb,m,p1,p2)
3068 #define HSP2_TRACE_DEBUG3(pcb,m,p1,p2,p3)
3069 #define HSP2_TRACE_DEBUG4(pcb,m,p1,p2,p3,p4)
3070 #define HSP2_TRACE_DEBUG5(pcb,m,p1,p2,p3,p4,p5)
3071 #define HSP2_TRACE_DEBUG6(pcb,m,p1,p2,p3,p4,p5,p6)
3072
3073 /* Define tracing for the NFC unit
3074 */
3075 #define NFC_TRACE_ERROR0(m)
3076 #define NFC_TRACE_ERROR1(m,p1)
3077 #define NFC_TRACE_ERROR2(m,p1,p2)
3078 #define NFC_TRACE_ERROR3(m,p1,p2,p3)
3079 #define NFC_TRACE_ERROR4(m,p1,p2,p3,p4)
3080 #define NFC_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
3081 #define NFC_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
3082
3083 #define NFC_TRACE_WARNING0(m)
3084 #define NFC_TRACE_WARNING1(m,p1)
3085 #define NFC_TRACE_WARNING2(m,p1,p2)
3086 #define NFC_TRACE_WARNING3(m,p1,p2,p3)
3087 #define NFC_TRACE_WARNING4(m,p1,p2,p3,p4)
3088 #define NFC_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
3089 #define NFC_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
3090
3091 #define NFC_TRACE_API0(m)
3092 #define NFC_TRACE_API1(m,p1)
3093 #define NFC_TRACE_API2(m,p1,p2)
3094 #define NFC_TRACE_API3(m,p1,p2,p3)
3095 #define NFC_TRACE_API4(m,p1,p2,p3,p4)
3096 #define NFC_TRACE_API5(m,p1,p2,p3,p4,p5)
3097 #define NFC_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
3098
3099 #define NFC_TRACE_EVENT0(m)
3100 #define NFC_TRACE_EVENT1(m,p1)
3101 #define NFC_TRACE_EVENT2(m,p1,p2)
3102 #define NFC_TRACE_EVENT3(m,p1,p2,p3)
3103 #define NFC_TRACE_EVENT4(m,p1,p2,p3,p4)
3104 #define NFC_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
3105 #define NFC_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
3106
3107 #define NFC_TRACE_DEBUG0(m)
3108 #define NFC_TRACE_DEBUG1(m,p1)
3109 #define NFC_TRACE_DEBUG2(m,p1,p2)
3110 #define NFC_TRACE_DEBUG3(m,p1,p2,p3)
3111 #define NFC_TRACE_DEBUG4(m,p1,p2,p3,p4)
3112 #define NFC_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
3113 #define NFC_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
3114
3115 #define NCI_TRACE_ERROR0(m)
3116 #define NCI_TRACE_ERROR1(m,p1)
3117 #define NCI_TRACE_ERROR2(m,p1,p2)
3118 #define NCI_TRACE_ERROR3(m,p1,p2,p3)
3119 #define NCI_TRACE_ERROR4(m,p1,p2,p3,p4)
3120 #define NCI_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
3121 #define NCI_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
3122
3123 #define NCI_TRACE_WARNING0(m)
3124 #define NCI_TRACE_WARNING1(m,p1)
3125 #define NCI_TRACE_WARNING2(m,p1,p2)
3126 #define NCI_TRACE_WARNING3(m,p1,p2,p3)
3127 #define NCI_TRACE_WARNING4(m,p1,p2,p3,p4)
3128 #define NCI_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
3129 #define NCI_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
3130
3131 #define NCI_TRACE_API0(m)
3132 #define NCI_TRACE_API1(m,p1)
3133 #define NCI_TRACE_API2(m,p1,p2)
3134 #define NCI_TRACE_API3(m,p1,p2,p3)
3135 #define NCI_TRACE_API4(m,p1,p2,p3,p4)
3136 #define NCI_TRACE_API5(m,p1,p2,p3,p4,p5)
3137 #define NCI_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
3138
3139 #define NCI_TRACE_EVENT0(m)
3140 #define NCI_TRACE_EVENT1(m,p1)
3141 #define NCI_TRACE_EVENT2(m,p1,p2)
3142 #define NCI_TRACE_EVENT3(m,p1,p2,p3)
3143 #define NCI_TRACE_EVENT4(m,p1,p2,p3,p4)
3144 #define NCI_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
3145 #define NCI_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
3146
3147 #define NCI_TRACE_DEBUG0(m)
3148 #define NCI_TRACE_DEBUG1(m,p1)
3149 #define NCI_TRACE_DEBUG2(m,p1,p2)
3150 #define NCI_TRACE_DEBUG3(m,p1,p2,p3)
3151 #define NCI_TRACE_DEBUG4(m,p1,p2,p3,p4)
3152 #define NCI_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
3153 #define NCI_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
3154
3155 #define RW_TRACE_ERROR0(m)
3156 #define RW_TRACE_ERROR1(m,p1)
3157 #define RW_TRACE_ERROR2(m,p1,p2)
3158 #define RW_TRACE_ERROR3(m,p1,p2,p3)
3159 #define RW_TRACE_ERROR4(m,p1,p2,p3,p4)
3160 #define RW_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
3161 #define RW_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
3162
3163 #define RW_TRACE_WARNING0(m)
3164 #define RW_TRACE_WARNING1(m,p1)
3165 #define RW_TRACE_WARNING2(m,p1,p2)
3166 #define RW_TRACE_WARNING3(m,p1,p2,p3)
3167 #define RW_TRACE_WARNING4(m,p1,p2,p3,p4)
3168 #define RW_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
3169 #define RW_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) }
3170
3171 #define RW_TRACE_API0(m)
3172 #define RW_TRACE_API1(m,p1)
3173 #define RW_TRACE_API2(m,p1,p2)
3174 #define RW_TRACE_API3(m,p1,p2,p3)
3175 #define RW_TRACE_API4(m,p1,p2,p3,p4)
3176 #define RW_TRACE_API5(m,p1,p2,p3,p4,p5)
3177 #define RW_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
3178
3179 #define RW_TRACE_EVENT0(m)
3180 #define RW_TRACE_EVENT1(m,p1)
3181 #define RW_TRACE_EVENT2(m,p1,p2)
3182 #define RW_TRACE_EVENT3(m,p1,p2,p3)
3183 #define RW_TRACE_EVENT4(m,p1,p2,p3,p4)
3184 #define RW_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
3185 #define RW_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
3186
3187 #define RW_TRACE_DEBUG0(m)
3188 #define RW_TRACE_DEBUG1(m,p1)
3189 #define RW_TRACE_DEBUG2(m,p1,p2)
3190 #define RW_TRACE_DEBUG3(m,p1,p2,p3)
3191 #define RW_TRACE_DEBUG4(m,p1,p2,p3,p4)
3192 #define RW_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
3193 #define RW_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
3194
3195 #define CE_TRACE_ERROR0(m)
3196 #define CE_TRACE_ERROR1(m,p1)
3197 #define CE_TRACE_ERROR2(m,p1,p2)
3198 #define CE_TRACE_ERROR3(m,p1,p2,p3)
3199 #define CE_TRACE_ERROR4(m,p1,p2,p3,p4)
3200 #define CE_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
3201 #define CE_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
3202
3203 #define CE_TRACE_WARNING0(m)
3204 #define CE_TRACE_WARNING1(m,p1)
3205 #define CE_TRACE_WARNING2(m,p1,p2)
3206 #define CE_TRACE_WARNING3(m,p1,p2,p3)
3207 #define CE_TRACE_WARNING4(m,p1,p2,p3,p4)
3208 #define CE_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
3209 #define CE_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
3210
3211 #define CE_TRACE_API0(m)
3212 #define CE_TRACE_API1(m,p1)
3213 #define CE_TRACE_API2(m,p1,p2)
3214 #define CE_TRACE_API3(m,p1,p2,p3)
3215 #define CE_TRACE_API4(m,p1,p2,p3,p4)
3216 #define CE_TRACE_API5(m,p1,p2,p3,p4,p5)
3217 #define CE_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
3218
3219 #define CE_TRACE_EVENT0(m)
3220 #define CE_TRACE_EVENT1(m,p1)
3221 #define CE_TRACE_EVENT2(m,p1,p2)
3222 #define CE_TRACE_EVENT3(m,p1,p2,p3)
3223 #define CE_TRACE_EVENT4(m,p1,p2,p3,p4)
3224 #define CE_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
3225 #define CE_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
3226
3227 #define CE_TRACE_DEBUG0(m)
3228 #define CE_TRACE_DEBUG1(m,p1)
3229 #define CE_TRACE_DEBUG2(m,p1,p2)
3230 #define CE_TRACE_DEBUG3(m,p1,p2,p3)
3231 #define CE_TRACE_DEBUG4(m,p1,p2,p3,p4)
3232 #define CE_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
3233 #define CE_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
3234
3235 #define NDEF_TRACE_ERROR0(m)
3236 #define NDEF_TRACE_ERROR1(m,p1)
3237 #define NDEF_TRACE_ERROR2(m,p1,p2)
3238 #define NDEF_TRACE_ERROR3(m,p1,p2,p3)
3239 #define NDEF_TRACE_ERROR4(m,p1,p2,p3,p4)
3240 #define NDEF_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
3241 #define NDEF_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
3242
3243 #define NDEF_TRACE_WARNING0(m)
3244 #define NDEF_TRACE_WARNING1(m,p1)
3245 #define NDEF_TRACE_WARNING2(m,p1,p2)
3246 #define NDEF_TRACE_WARNING3(m,p1,p2,p3)
3247 #define NDEF_TRACE_WARNING4(m,p1,p2,p3,p4)
3248 #define NDEF_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
3249 #define NDEF_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
3250
3251 #define NDEF_TRACE_API0(m)
3252 #define NDEF_TRACE_API1(m,p1)
3253 #define NDEF_TRACE_API2(m,p1,p2)
3254 #define NDEF_TRACE_API3(m,p1,p2,p3)
3255 #define NDEF_TRACE_API4(m,p1,p2,p3,p4)
3256 #define NDEF_TRACE_API5(m,p1,p2,p3,p4,p5)
3257 #define NDEF_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
3258
3259 #define NDEF_TRACE_EVENT0(m)
3260 #define NDEF_TRACE_EVENT1(m,p1)
3261 #define NDEF_TRACE_EVENT2(m,p1,p2)
3262 #define NDEF_TRACE_EVENT3(m,p1,p2,p3)
3263 #define NDEF_TRACE_EVENT4(m,p1,p2,p3,p4)
3264 #define NDEF_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
3265 #define NDEF_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
3266
3267 #define NDEF_TRACE_DEBUG0(m)
3268 #define NDEF_TRACE_DEBUG1(m,p1)
3269 #define NDEF_TRACE_DEBUG2(m,p1,p2)
3270 #define NDEF_TRACE_DEBUG3(m,p1,p2,p3)
3271 #define NDEF_TRACE_DEBUG4(m,p1,p2,p3,p4)
3272 #define NDEF_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
3273 #define NDEF_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
3274
3275 /* Define tracing for the NFA unit
3276 */
3277 #define NFA_TRACE_ERROR0(m)
3278 #define NFA_TRACE_ERROR1(m,p1)
3279 #define NFA_TRACE_ERROR2(m,p1,p2)
3280 #define NFA_TRACE_ERROR3(m,p1,p2,p3)
3281 #define NFA_TRACE_ERROR4(m,p1,p2,p3,p4)
3282 #define NFA_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
3283 #define NFA_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
3284
3285 #define NFA_TRACE_WARNING0(m)
3286 #define NFA_TRACE_WARNING1(m,p1)
3287 #define NFA_TRACE_WARNING2(m,p1,p2)
3288 #define NFA_TRACE_WARNING3(m,p1,p2,p3)
3289 #define NFA_TRACE_WARNING4(m,p1,p2,p3,p4)
3290 #define NFA_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
3291 #define NFA_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
3292
3293 #define NFA_TRACE_API0(m)
3294 #define NFA_TRACE_API1(m,p1)
3295 #define NFA_TRACE_API2(m,p1,p2)
3296 #define NFA_TRACE_API3(m,p1,p2,p3)
3297 #define NFA_TRACE_API4(m,p1,p2,p3,p4)
3298 #define NFA_TRACE_API5(m,p1,p2,p3,p4,p5)
3299 #define NFA_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
3300
3301 #define NFA_TRACE_EVENT0(m)
3302 #define NFA_TRACE_EVENT1(m,p1)
3303 #define NFA_TRACE_EVENT2(m,p1,p2)
3304 #define NFA_TRACE_EVENT3(m,p1,p2,p3)
3305 #define NFA_TRACE_EVENT4(m,p1,p2,p3,p4)
3306 #define NFA_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
3307 #define NFA_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
3308
3309 #define NFA_TRACE_DEBUG0(m)
3310 #define NFA_TRACE_DEBUG1(m,p1)
3311 #define NFA_TRACE_DEBUG2(m,p1,p2)
3312 #define NFA_TRACE_DEBUG3(m,p1,p2,p3)
3313 #define NFA_TRACE_DEBUG4(m,p1,p2,p3,p4)
3314 #define NFA_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
3315 #define NFA_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
3316
3317
3318 /* define traces for HID Host */
3319 #define HIDH_TRACE_ERROR0(m)
3320 #define HIDH_TRACE_ERROR1(m,p1)
3321 #define HIDH_TRACE_ERROR2(m,p1,p2)
3322 #define HIDH_TRACE_ERROR3(m,p1,p2,p3)
3323 #define HIDH_TRACE_ERROR4(m,p1,p2,p3,p4)
3324 #define HIDH_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
3325 #define HIDH_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
3326
3327 #define HIDH_TRACE_WARNING0(m)
3328 #define HIDH_TRACE_WARNING1(m,p1)
3329 #define HIDH_TRACE_WARNING2(m,p1,p2)
3330 #define HIDH_TRACE_WARNING3(m,p1,p2,p3)
3331 #define HIDH_TRACE_WARNING4(m,p1,p2,p3,p4)
3332 #define HIDH_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
3333 #define HIDH_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
3334
3335 #define HIDH_TRACE_API0(m)
3336 #define HIDH_TRACE_API1(m,p1)
3337 #define HIDH_TRACE_API2(m,p1,p2)
3338 #define HIDH_TRACE_API3(m,p1,p2,p3)
3339 #define HIDH_TRACE_API4(m,p1,p2,p3,p4)
3340 #define HIDH_TRACE_API5(m,p1,p2,p3,p4,p5)
3341 #define HIDH_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
3342
3343 #define HIDH_TRACE_EVENT0(m)
3344 #define HIDH_TRACE_EVENT1(m,p1)
3345 #define HIDH_TRACE_EVENT2(m,p1,p2)
3346 #define HIDH_TRACE_EVENT3(m,p1,p2,p3)
3347 #define HIDH_TRACE_EVENT4(m,p1,p2,p3,p4)
3348 #define HIDH_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
3349 #define HIDH_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
3350
3351 #define HIDH_TRACE_DEBUG0(m)
3352 #define HIDH_TRACE_DEBUG1(m,p1)
3353 #define HIDH_TRACE_DEBUG2(m,p1,p2)
3354 #define HIDH_TRACE_DEBUG3(m,p1,p2,p3)
3355 #define HIDH_TRACE_DEBUG4(m,p1,p2,p3,p4)
3356 #define HIDH_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
3357 #define HIDH_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
3358
3359 /* define traces for HID Device */
3360 #define HIDD_TRACE_ERROR0(m)
3361 #define HIDD_TRACE_ERROR1(m,p1)
3362 #define HIDD_TRACE_ERROR2(m,p1,p2)
3363 #define HIDD_TRACE_ERROR3(m,p1,p2,p3)
3364 #define HIDD_TRACE_ERROR4(m,p1,p2,p3,p4)
3365 #define HIDD_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
3366 #define HIDD_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
3367
3368 #define HIDD_TRACE_WARNING0(m)
3369 #define HIDD_TRACE_WARNING1(m,p1)
3370 #define HIDD_TRACE_WARNING2(m,p1,p2)
3371 #define HIDD_TRACE_WARNING3(m,p1,p2,p3)
3372 #define HIDD_TRACE_WARNING4(m,p1,p2,p3,p4)
3373 #define HIDD_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
3374 #define HIDD_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
3375
3376 #define HIDD_TRACE_API0(m)
3377 #define HIDD_TRACE_API1(m,p1)
3378 #define HIDD_TRACE_API2(m,p1,p2)
3379 #define HIDD_TRACE_API3(m,p1,p2,p3)
3380 #define HIDD_TRACE_API4(m,p1,p2,p3,p4)
3381 #define HIDD_TRACE_API5(m,p1,p2,p3,p4,p5)
3382 #define HIDD_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
3383
3384 #define HIDD_TRACE_EVENT0(m)
3385 #define HIDD_TRACE_EVENT1(m,p1)
3386 #define HIDD_TRACE_EVENT2(m,p1,p2)
3387 #define HIDD_TRACE_EVENT3(m,p1,p2,p3)
3388 #define HIDD_TRACE_EVENT4(m,p1,p2,p3,p4)
3389 #define HIDD_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
3390 #define HIDD_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
3391
3392 #define HIDD_TRACE_DEBUG0(m)
3393 #define HIDD_TRACE_DEBUG1(m,p1)
3394 #define HIDD_TRACE_DEBUG2(m,p1,p2)
3395 #define HIDD_TRACE_DEBUG3(m,p1,p2,p3)
3396 #define HIDD_TRACE_DEBUG4(m,p1,p2,p3,p4)
3397 #define HIDD_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
3398 #define HIDD_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
3399
3400 /* define traces for DUN */
3401
3402 #define DUN_TRACE_ERROR0(m)
3403 #define DUN_TRACE_ERROR1(m,p1)
3404 #define DUN_TRACE_ERROR2(m,p1,p2)
3405 #define DUN_TRACE_ERROR3(m,p1,p2,p3)
3406 #define DUN_TRACE_ERROR4(m,p1,p2,p3,p4)
3407 #define DUN_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
3408 #define DUN_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
3409
3410 #define DUN_TRACE_WARNING0(m)
3411 #define DUN_TRACE_WARNING1(m,p1)
3412 #define DUN_TRACE_WARNING2(m,p1,p2)
3413 #define DUN_TRACE_WARNING3(m,p1,p2,p3)
3414 #define DUN_TRACE_WARNING4(m,p1,p2,p3,p4)
3415 #define DUN_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
3416 #define DUN_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
3417
3418 #define DUN_TRACE_API0(m)
3419 #define DUN_TRACE_API1(m,p1)
3420 #define DUN_TRACE_API2(m,p1,p2)
3421 #define DUN_TRACE_API3(m,p1,p2,p3)
3422 #define DUN_TRACE_API4(m,p1,p2,p3,p4)
3423 #define DUN_TRACE_API5(m,p1,p2,p3,p4,p5)
3424 #define DUN_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
3425
3426 #define DUN_TRACE_EVENT0(m)
3427 #define DUN_TRACE_EVENT1(m,p1)
3428 #define DUN_TRACE_EVENT2(m,p1,p2)
3429 #define DUN_TRACE_EVENT3(m,p1,p2,p3)
3430 #define DUN_TRACE_EVENT4(m,p1,p2,p3,p4)
3431 #define DUN_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
3432 #define DUN_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
3433
3434 #define DUN_TRACE_DEBUG0(m)
3435 #define DUN_TRACE_DEBUG1(m,p1)
3436 #define DUN_TRACE_DEBUG2(m,p1,p2)
3437 #define DUN_TRACE_DEBUG3(m,p1,p2,p3)
3438 #define DUN_TRACE_DEBUG4(m,p1,p2,p3,p4)
3439 #define DUN_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
3440 #define DUN_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
3441
3442 /* define traces for HCRP */
3443
3444 #define HCRP_TRACE_ERROR0(m)
3445 #define HCRP_TRACE_ERROR1(m,p1)
3446 #define HCRP_TRACE_ERROR2(m,p1,p2)
3447 #define HCRP_TRACE_ERROR3(m,p1,p2,p3)
3448 #define HCRP_TRACE_ERROR4(m,p1,p2,p3,p4)
3449 #define HCRP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
3450 #define HCRP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
3451
3452 #define HCRP_TRACE_WARNING0(m)
3453 #define HCRP_TRACE_WARNING1(m,p1)
3454 #define HCRP_TRACE_WARNING2(m,p1,p2)
3455 #define HCRP_TRACE_WARNING3(m,p1,p2,p3)
3456 #define HCRP_TRACE_WARNING4(m,p1,p2,p3,p4)
3457 #define HCRP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
3458 #define HCRP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
3459
3460 #define HCRP_TRACE_API0(m)
3461 #define HCRP_TRACE_API1(m,p1)
3462 #define HCRP_TRACE_API2(m,p1,p2)
3463 #define HCRP_TRACE_API3(m,p1,p2,p3)
3464 #define HCRP_TRACE_API4(m,p1,p2,p3,p4)
3465 #define HCRP_TRACE_API5(m,p1,p2,p3,p4,p5)
3466 #define HCRP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
3467
3468 #define HCRP_TRACE_EVENT0(m)
3469 #define HCRP_TRACE_EVENT1(m,p1)
3470 #define HCRP_TRACE_EVENT2(m,p1,p2)
3471 #define HCRP_TRACE_EVENT3(m,p1,p2,p3)
3472 #define HCRP_TRACE_EVENT4(m,p1,p2,p3,p4)
3473 #define HCRP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
3474 #define HCRP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
3475
3476 #define HCRP_TRACE_DEBUG0(m)
3477 #define HCRP_TRACE_DEBUG1(m,p1)
3478 #define HCRP_TRACE_DEBUG2(m,p1,p2)
3479 #define HCRP_TRACE_DEBUG3(m,p1,p2,p3)
3480 #define HCRP_TRACE_DEBUG4(m,p1,p2,p3,p4)
3481 #define HCRP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
3482 #define HCRP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
3483
3484
3485 /* define traces for HCRP */
3486
3487 #define HCRPM_TRACE_ERROR0(m)
3488 #define HCRPM_TRACE_ERROR1(m,p1)
3489 #define HCRPM_TRACE_ERROR2(m,p1,p2)
3490 #define HCRPM_TRACE_ERROR3(m,p1,p2,p3)
3491 #define HCRPM_TRACE_ERROR4(m,p1,p2,p3,p4)
3492 #define HCRPM_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
3493 #define HCRPM_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
3494
3495 #define HCRPM_TRACE_WARNING0(m)
3496 #define HCRPM_TRACE_WARNING1(m,p1)
3497 #define HCRPM_TRACE_WARNING2(m,p1,p2)
3498 #define HCRPM_TRACE_WARNING3(m,p1,p2,p3)
3499 #define HCRPM_TRACE_WARNING4(m,p1,p2,p3,p4)
3500 #define HCRPM_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
3501 #define HCRPM_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
3502
3503 #define HCRPM_TRACE_API0(m)
3504 #define HCRPM_TRACE_API1(m,p1)
3505 #define HCRPM_TRACE_API2(m,p1,p2)
3506 #define HCRPM_TRACE_API3(m,p1,p2,p3)
3507 #define HCRPM_TRACE_API4(m,p1,p2,p3,p4)
3508 #define HCRPM_TRACE_API5(m,p1,p2,p3,p4,p5)
3509 #define HCRPM_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
3510
3511 #define HCRPM_TRACE_EVENT0(m)
3512 #define HCRPM_TRACE_EVENT1(m,p1)
3513 #define HCRPM_TRACE_EVENT2(m,p1,p2)
3514 #define HCRPM_TRACE_EVENT3(m,p1,p2,p3)
3515 #define HCRPM_TRACE_EVENT4(m,p1,p2,p3,p4)
3516 #define HCRPM_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
3517 #define HCRPM_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
3518
3519 #define HCRPM_TRACE_DEBUG0(m)
3520 #define HCRPM_TRACE_DEBUG1(m,p1)
3521 #define HCRPM_TRACE_DEBUG2(m,p1,p2)
3522 #define HCRPM_TRACE_DEBUG3(m,p1,p2,p3)
3523 #define HCRPM_TRACE_DEBUG4(m,p1,p2,p3,p4)
3524 #define HCRPM_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
3525 #define HCRPM_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
3526
3527 /* define traces for RPC */
3528
3529 #define RPC_TRACE_ERROR0(m)
3530 #define RPC_TRACE_ERROR1(m,p1)
3531 #define RPC_TRACE_ERROR2(m,p1,p2)
3532 #define RPC_TRACE_ERROR3(m,p1,p2,p3)
3533 #define RPC_TRACE_ERROR4(m,p1,p2,p3,p4)
3534 #define RPC_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
3535 #define RPC_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
3536
3537 #define RPC_TRACE_WARNING0(m)
3538 #define RPC_TRACE_WARNING1(m,p1)
3539 #define RPC_TRACE_WARNING2(m,p1,p2)
3540 #define RPC_TRACE_WARNING3(m,p1,p2,p3)
3541 #define RPC_TRACE_WARNING4(m,p1,p2,p3,p4)
3542 #define RPC_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
3543 #define RPC_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
3544
3545 #define RPC_TRACE_API0(m)
3546 #define RPC_TRACE_API1(m,p1)
3547 #define RPC_TRACE_API2(m,p1,p2)
3548 #define RPC_TRACE_API3(m,p1,p2,p3)
3549 #define RPC_TRACE_API4(m,p1,p2,p3,p4)
3550 #define RPC_TRACE_API5(m,p1,p2,p3,p4,p5)
3551 #define RPC_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
3552
3553 #define RPC_TRACE_EVENT0(m)
3554 #define RPC_TRACE_EVENT1(m,p1)
3555 #define RPC_TRACE_EVENT2(m,p1,p2)
3556 #define RPC_TRACE_EVENT3(m,p1,p2,p3)
3557 #define RPC_TRACE_EVENT4(m,p1,p2,p3,p4)
3558 #define RPC_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
3559 #define RPC_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
3560
3561 #define RPC_TRACE_DEBUG0(m)
3562 #define RPC_TRACE_DEBUG1(m,p1)
3563 #define RPC_TRACE_DEBUG2(m,p1,p2)
3564 #define RPC_TRACE_DEBUG3(m,p1,p2,p3)
3565 #define RPC_TRACE_DEBUG4(m,p1,p2,p3,p4)
3566 #define RPC_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
3567 #define RPC_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
3568
3569 /* define traces for BNEP */
3570
3571 #define BNEP_TRACE_ERROR0(m)
3572 #define BNEP_TRACE_ERROR1(m,p1)
3573 #define BNEP_TRACE_ERROR2(m,p1,p2)
3574 #define BNEP_TRACE_ERROR3(m,p1,p2,p3)
3575 #define BNEP_TRACE_ERROR4(m,p1,p2,p3,p4)
3576 #define BNEP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
3577 #define BNEP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
3578
3579 #define BNEP_TRACE_WARNING0(m)
3580 #define BNEP_TRACE_WARNING1(m,p1)
3581 #define BNEP_TRACE_WARNING2(m,p1,p2)
3582 #define BNEP_TRACE_WARNING3(m,p1,p2,p3)
3583 #define BNEP_TRACE_WARNING4(m,p1,p2,p3,p4)
3584 #define BNEP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
3585 #define BNEP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
3586
3587 #define BNEP_TRACE_API0(m)
3588 #define BNEP_TRACE_API1(m,p1)
3589 #define BNEP_TRACE_API2(m,p1,p2)
3590 #define BNEP_TRACE_API3(m,p1,p2,p3)
3591 #define BNEP_TRACE_API4(m,p1,p2,p3,p4)
3592 #define BNEP_TRACE_API5(m,p1,p2,p3,p4,p5)
3593 #define BNEP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
3594
3595 #define BNEP_TRACE_EVENT0(m)
3596 #define BNEP_TRACE_EVENT1(m,p1)
3597 #define BNEP_TRACE_EVENT2(m,p1,p2)
3598 #define BNEP_TRACE_EVENT3(m,p1,p2,p3)
3599 #define BNEP_TRACE_EVENT4(m,p1,p2,p3,p4)
3600 #define BNEP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
3601 #define BNEP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
3602
3603 #define BNEP_TRACE_DEBUG0(m)
3604 #define BNEP_TRACE_DEBUG1(m,p1)
3605 #define BNEP_TRACE_DEBUG2(m,p1,p2)
3606 #define BNEP_TRACE_DEBUG3(m,p1,p2,p3)
3607 #define BNEP_TRACE_DEBUG4(m,p1,p2,p3,p4)
3608 #define BNEP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
3609 #define BNEP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
3610
3611 /* hid module traces */
3612
3613 #define MSKB_TRACE_0(m)
3614 #define MSKB_TRACE_1(m,p1)
3615 #define MSKB_TRACE_2(m,p1,p2)
3616 #define MSKB_TRACE_3(m,p1,p2,p3)
3617 #define MSKB_TRACE_4(m,p1,p2,p3,p4)
3618 #define MSKB_TRACE_5(m,p1,p2,p3,p4,p5)
3619 #define MSKB_TRACE_6(m,p1,p2,p3,p4,p5,p6)
3620
3621 #define MSKB_DEBUG_0(m)
3622 #define MSKB_DEBUG_1(m,p1)
3623 #define MSKB_DEBUG_2(m,p1,p2)
3624 #define MSKB_DEBUG_3(m,p1,p2,p3)
3625 #define MSKB_DEBUG_4(m,p1,p2,p3,p4)
3626 #define MSKB_DEBUG_5(m,p1,p2,p3,p4,p5)
3627 #define MSKB_DEBUG_6(m,p1,p2,p3,p4,p5,p6)
3628
3629 #define MSKB_ERROR_0(m)
3630 #define MSKB_ERROR_1(m,p1)
3631 #define MSKB_ERROR_2(m,p1,p2)
3632 #define MSKB_ERROR_3(m,p1,p2,p3)
3633 #define MSKB_ERROR_4(m,p1,p2,p3,p4)
3634 #define MSKB_ERROR_5(m,p1,p2,p3,p4,p5)
3635 #define MSKB_ERROR_6(m,p1,p2,p3,p4,p5,p6)
3636
3637 /* define traces for PAN */
3638
3639 #define PAN_TRACE_ERROR0(m)
3640 #define PAN_TRACE_ERROR1(m,p1)
3641 #define PAN_TRACE_ERROR2(m,p1,p2)
3642 #define PAN_TRACE_ERROR3(m,p1,p2,p3)
3643 #define PAN_TRACE_ERROR4(m,p1,p2,p3,p4)
3644 #define PAN_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
3645 #define PAN_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
3646
3647 #define PAN_TRACE_WARNING0(m)
3648 #define PAN_TRACE_WARNING1(m,p1)
3649 #define PAN_TRACE_WARNING2(m,p1,p2)
3650 #define PAN_TRACE_WARNING3(m,p1,p2,p3)
3651 #define PAN_TRACE_WARNING4(m,p1,p2,p3,p4)
3652 #define PAN_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
3653 #define PAN_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
3654
3655 #define PAN_TRACE_API0(m)
3656 #define PAN_TRACE_API1(m,p1)
3657 #define PAN_TRACE_API2(m,p1,p2)
3658 #define PAN_TRACE_API3(m,p1,p2,p3)
3659 #define PAN_TRACE_API4(m,p1,p2,p3,p4)
3660 #define PAN_TRACE_API5(m,p1,p2,p3,p4,p5)
3661 #define PAN_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
3662
3663 #define PAN_TRACE_EVENT0(m)
3664 #define PAN_TRACE_EVENT1(m,p1)
3665 #define PAN_TRACE_EVENT2(m,p1,p2)
3666 #define PAN_TRACE_EVENT3(m,p1,p2,p3)
3667 #define PAN_TRACE_EVENT4(m,p1,p2,p3,p4)
3668 #define PAN_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
3669 #define PAN_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
3670
3671 #define PAN_TRACE_DEBUG0(m)
3672 #define PAN_TRACE_DEBUG1(m,p1)
3673 #define PAN_TRACE_DEBUG2(m,p1,p2)
3674 #define PAN_TRACE_DEBUG3(m,p1,p2,p3)
3675 #define PAN_TRACE_DEBUG4(m,p1,p2,p3,p4)
3676 #define PAN_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
3677 #define PAN_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
3678
3679 /* define traces for SIM */
3680
3681 #define SAP_TRACE_ERROR0(m)
3682 #define SAP_TRACE_ERROR1(m,p1)
3683 #define SAP_TRACE_ERROR2(m,p1,p2)
3684 #define SAP_TRACE_ERROR3(m,p1,p2,p3)
3685 #define SAP_TRACE_ERROR4(m,p1,p2,p3,p4)
3686 #define SAP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
3687 #define SAP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
3688
3689 #define SAP_TRACE_WARNING0(m)
3690 #define SAP_TRACE_WARNING1(m,p1)
3691 #define SAP_TRACE_WARNING2(m,p1,p2)
3692 #define SAP_TRACE_WARNING3(m,p1,p2,p3)
3693 #define SAP_TRACE_WARNING4(m,p1,p2,p3,p4)
3694 #define SAP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
3695 #define SAP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
3696
3697 #define SAP_TRACE_API0(m)
3698 #define SAP_TRACE_API1(m,p1)
3699 #define SAP_TRACE_API2(m,p1,p2)
3700 #define SAP_TRACE_API3(m,p1,p2,p3)
3701 #define SAP_TRACE_API4(m,p1,p2,p3,p4)
3702 #define SAP_TRACE_API5(m,p1,p2,p3,p4,p5)
3703 #define SAP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
3704
3705 #define SAP_TRACE_EVENT0(m)
3706 #define SAP_TRACE_EVENT1(m,p1)
3707 #define SAP_TRACE_EVENT2(m,p1,p2)
3708 #define SAP_TRACE_EVENT3(m,p1,p2,p3)
3709 #define SAP_TRACE_EVENT4(m,p1,p2,p3,p4)
3710 #define SAP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
3711 #define SAP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
3712
3713 #define SAP_TRACE_DEBUG0(m)
3714 #define SAP_TRACE_DEBUG1(m,p1)
3715 #define SAP_TRACE_DEBUG2(m,p1,p2)
3716 #define SAP_TRACE_DEBUG3(m,p1,p2,p3)
3717 #define SAP_TRACE_DEBUG4(m,p1,p2,p3,p4)
3718 #define SAP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
3719 #define SAP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
3720
3721 /* Define tracing for the OPP profile
3722 */
3723 #define OPP_TRACE_ERROR0(m)
3724 #define OPP_TRACE_ERROR1(m,p1)
3725 #define OPP_TRACE_ERROR2(m,p1,p2)
3726 #define OPP_TRACE_ERROR3(m,p1,p2,p3)
3727 #define OPP_TRACE_ERROR4(m,p1,p2,p3,p4)
3728 #define OPP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
3729 #define OPP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
3730
3731 #define OPP_TRACE_WARNING0(m)
3732 #define OPP_TRACE_WARNING1(m,p1)
3733 #define OPP_TRACE_WARNING2(m,p1,p2)
3734 #define OPP_TRACE_WARNING3(m,p1,p2,p3)
3735 #define OPP_TRACE_WARNING4(m,p1,p2,p3,p4)
3736 #define OPP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
3737 #define OPP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
3738
3739 #define OPP_TRACE_EVENT0(m)
3740 #define OPP_TRACE_EVENT1(m,p1)
3741 #define OPP_TRACE_EVENT2(m,p1,p2)
3742 #define OPP_TRACE_EVENT3(m,p1,p2,p3)
3743 #define OPP_TRACE_EVENT4(m,p1,p2,p3,p4)
3744 #define OPP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
3745 #define OPP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
3746
3747 #define OPP_TRACE_DEBUG0(m)
3748 #define OPP_TRACE_DEBUG1(m,p1)
3749 #define OPP_TRACE_DEBUG2(m,p1,p2)
3750 #define OPP_TRACE_DEBUG3(m,p1,p2,p3)
3751 #define OPP_TRACE_DEBUG4(m,p1,p2,p3,p4)
3752 #define OPP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
3753 #define OPP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
3754
3755 #define OPP_TRACE_API0(m)
3756 #define OPP_TRACE_API1(m,p1)
3757 #define OPP_TRACE_API2(m,p1,p2)
3758 #define OPP_TRACE_API3(m,p1,p2,p3)
3759 #define OPP_TRACE_API4(m,p1,p2,p3,p4)
3760 #define OPP_TRACE_API5(m,p1,p2,p3,p4,p5)
3761 #define OPP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
3762
3763 /* Define tracing for the FTP profile
3764 */
3765 #define FTP_TRACE_ERROR0(m)
3766 #define FTP_TRACE_ERROR1(m,p1)
3767 #define FTP_TRACE_ERROR2(m,p1,p2)
3768 #define FTP_TRACE_ERROR3(m,p1,p2,p3)
3769 #define FTP_TRACE_ERROR4(m,p1,p2,p3,p4)
3770 #define FTP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
3771 #define FTP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
3772
3773 #define FTP_TRACE_WARNING0(m)
3774 #define FTP_TRACE_WARNING1(m,p1)
3775 #define FTP_TRACE_WARNING2(m,p1,p2)
3776 #define FTP_TRACE_WARNING3(m,p1,p2,p3)
3777 #define FTP_TRACE_WARNING4(m,p1,p2,p3,p4)
3778 #define FTP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
3779 #define FTP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
3780
3781 #define FTP_TRACE_EVENT0(m)
3782 #define FTP_TRACE_EVENT1(m,p1)
3783 #define FTP_TRACE_EVENT2(m,p1,p2)
3784 #define FTP_TRACE_EVENT3(m,p1,p2,p3)
3785 #define FTP_TRACE_EVENT4(m,p1,p2,p3,p4)
3786 #define FTP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
3787 #define FTP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
3788
3789 #define FTP_TRACE_DEBUG0(m)
3790 #define FTP_TRACE_DEBUG1(m,p1)
3791 #define FTP_TRACE_DEBUG2(m,p1,p2)
3792 #define FTP_TRACE_DEBUG3(m,p1,p2,p3)
3793 #define FTP_TRACE_DEBUG4(m,p1,p2,p3,p4)
3794 #define FTP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
3795 #define FTP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
3796
3797 #define FTP_TRACE_API0(m)
3798 #define FTP_TRACE_API1(m,p1)
3799 #define FTP_TRACE_API2(m,p1,p2)
3800 #define FTP_TRACE_API3(m,p1,p2,p3)
3801 #define FTP_TRACE_API4(m,p1,p2,p3,p4)
3802 #define FTP_TRACE_API5(m,p1,p2,p3,p4,p5)
3803 #define FTP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
3804
3805
3806 /* Define tracing for the A2DP profile
3807 */
3808 #define A2D_TRACE_ERROR0(m)
3809 #define A2D_TRACE_ERROR1(m,p1)
3810 #define A2D_TRACE_ERROR2(m,p1,p2)
3811 #define A2D_TRACE_ERROR3(m,p1,p2,p3)
3812 #define A2D_TRACE_ERROR4(m,p1,p2,p3,p4)
3813 #define A2D_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
3814 #define A2D_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
3815
3816 #define A2D_TRACE_WARNING0(m)
3817 #define A2D_TRACE_WARNING1(m,p1)
3818 #define A2D_TRACE_WARNING2(m,p1,p2)
3819 #define A2D_TRACE_WARNING3(m,p1,p2,p3)
3820 #define A2D_TRACE_WARNING4(m,p1,p2,p3,p4)
3821 #define A2D_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
3822 #define A2D_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
3823
3824 #define A2D_TRACE_EVENT0(m)
3825 #define A2D_TRACE_EVENT1(m,p1)
3826 #define A2D_TRACE_EVENT2(m,p1,p2)
3827 #define A2D_TRACE_EVENT3(m,p1,p2,p3)
3828 #define A2D_TRACE_EVENT4(m,p1,p2,p3,p4)
3829 #define A2D_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
3830 #define A2D_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
3831
3832 #define A2D_TRACE_DEBUG0(m)
3833 #define A2D_TRACE_DEBUG1(m,p1)
3834 #define A2D_TRACE_DEBUG2(m,p1,p2)
3835 #define A2D_TRACE_DEBUG3(m,p1,p2,p3)
3836 #define A2D_TRACE_DEBUG4(m,p1,p2,p3,p4)
3837 #define A2D_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
3838 #define A2D_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
3839
3840 #define A2D_TRACE_API0(m)
3841 #define A2D_TRACE_API1(m,p1)
3842 #define A2D_TRACE_API2(m,p1,p2)
3843 #define A2D_TRACE_API3(m,p1,p2,p3)
3844 #define A2D_TRACE_API4(m,p1,p2,p3,p4)
3845 #define A2D_TRACE_API5(m,p1,p2,p3,p4,p5)
3846 #define A2D_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
3847
3848 /* Define tracing for the VDP profile
3849 */
3850 #define VDP_TRACE_ERROR0(m)
3851 #define VDP_TRACE_ERROR1(m,p1)
3852 #define VDP_TRACE_ERROR2(m,p1,p2)
3853 #define VDP_TRACE_ERROR3(m,p1,p2,p3)
3854 #define VDP_TRACE_ERROR4(m,p1,p2,p3,p4)
3855 #define VDP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
3856 #define VDP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
3857
3858 #define VDP_TRACE_WARNING0(m)
3859 #define VDP_TRACE_WARNING1(m,p1)
3860 #define VDP_TRACE_WARNING2(m,p1,p2)
3861 #define VDP_TRACE_WARNING3(m,p1,p2,p3)
3862 #define VDP_TRACE_WARNING4(m,p1,p2,p3,p4)
3863 #define VDP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
3864 #define VDP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
3865
3866 #define VDP_TRACE_EVENT0(m)
3867 #define VDP_TRACE_EVENT1(m,p1)
3868 #define VDP_TRACE_EVENT2(m,p1,p2)
3869 #define VDP_TRACE_EVENT3(m,p1,p2,p3)
3870 #define VDP_TRACE_EVENT4(m,p1,p2,p3,p4)
3871 #define VDP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
3872 #define VDP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
3873
3874 #define VDP_TRACE_DEBUG0(m)
3875 #define VDP_TRACE_DEBUG1(m,p1)
3876 #define VDP_TRACE_DEBUG2(m,p1,p2)
3877 #define VDP_TRACE_DEBUG3(m,p1,p2,p3)
3878 #define VDP_TRACE_DEBUG4(m,p1,p2,p3,p4)
3879 #define VDP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
3880 #define VDP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
3881
3882 #define VDP_TRACE_API0(m)
3883 #define VDP_TRACE_API1(m,p1)
3884 #define VDP_TRACE_API2(m,p1,p2)
3885 #define VDP_TRACE_API3(m,p1,p2,p3)
3886 #define VDP_TRACE_API4(m,p1,p2,p3,p4)
3887 #define VDP_TRACE_API5(m,p1,p2,p3,p4,p5)
3888 #define VDP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
3889
3890
3891 /* Define tracing for the LM unit
3892 */
3893 #define LMP_TRACE_ERROR0(m)
3894 #define LMP_TRACE_ERROR1(m,p1)
3895 #define LMP_TRACE_ERROR2(m,p1,p2)
3896 #define LMP_TRACE_ERROR3(m,p1,p2,p3)
3897 #define LMP_TRACE_ERROR4(m,p1,p2,p3,p4)
3898 #define LMP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
3899 #define LMP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
3900
3901 #define LMP_TRACE_WARNING0(m)
3902 #define LMP_TRACE_WARNING1(m,p1)
3903 #define LMP_TRACE_WARNING2(m,p1,p2)
3904 #define LMP_TRACE_WARNING3(m,p1,p2,p3)
3905 #define LMP_TRACE_WARNING4(m,p1,p2,p3,p4)
3906 #define LMP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
3907 #define LMP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
3908
3909 #define LMP_TRACE_EVENT0(m)
3910 #define LMP_TRACE_EVENT1(m,p1)
3911 #define LMP_TRACE_EVENT2(m,p1,p2)
3912 #define LMP_TRACE_EVENT3(m,p1,p2,p3)
3913 #define LMP_TRACE_EVENT4(m,p1,p2,p3,p4)
3914 #define LMP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
3915 #define LMP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
3916
3917 #define LMP_TRACE_DEBUG0(m)
3918 #define LMP_TRACE_DEBUG1(m,p1)
3919 #define LMP_TRACE_DEBUG2(m,p1,p2)
3920 #define LMP_TRACE_DEBUG3(m,p1,p2,p3)
3921 #define LMP_TRACE_DEBUG4(m,p1,p2,p3,p4)
3922 #define LMP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
3923 #define LMP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
3924
3925 /* Define tracing for the LC unit
3926 */
3927 #define LC_TRACE_ERROR0(m)
3928 #define LC_TRACE_ERROR1(m,p1)
3929 #define LC_TRACE_ERROR2(m,p1,p2)
3930 #define LC_TRACE_ERROR3(m,p1,p2,p3)
3931 #define LC_TRACE_ERROR4(m,p1,p2,p3,p4)
3932 #define LC_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
3933 #define LC_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
3934
3935 #define LC_TRACE_WARNING0(m)
3936 #define LC_TRACE_WARNING1(m,p1)
3937 #define LC_TRACE_WARNING2(m,p1,p2)
3938 #define LC_TRACE_WARNING3(m,p1,p2,p3)
3939 #define LC_TRACE_WARNING4(m,p1,p2,p3,p4)
3940 #define LC_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
3941 #define LC_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
3942
3943 #define LC_TRACE_EVENT0(m)
3944 #define LC_TRACE_EVENT1(m,p1)
3945 #define LC_TRACE_EVENT2(m,p1,p2)
3946 #define LC_TRACE_EVENT3(m,p1,p2,p3)
3947 #define LC_TRACE_EVENT4(m,p1,p2,p3,p4)
3948 #define LC_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
3949 #define LC_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
3950
3951 #define LC_TRACE_DEBUG0(m)
3952 #define LC_TRACE_DEBUG1(m,p1)
3953 #define LC_TRACE_DEBUG2(m,p1,p2)
3954 #define LC_TRACE_DEBUG3(m,p1,p2,p3)
3955 #define LC_TRACE_DEBUG4(m,p1,p2,p3,p4)
3956 #define LC_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
3957 #define LC_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
3958
3959 #define SDA_TRACE_ERROR0(m)
3960 #define SDA_TRACE_ERROR1(m,p1)
3961 #define SDA_TRACE_ERROR2(m,p1,p2)
3962 #define SDA_TRACE_ERROR3(m,p1,p2,p3)
3963 #define SDA_TRACE_ERROR4(m,p1,p2,p3,p4)
3964 #define SDA_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
3965 #define SDA_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
3966
3967 #define SDA_TRACE_WARNING0(m)
3968 #define SDA_TRACE_WARNING1(m,p1)
3969 #define SDA_TRACE_WARNING2(m,p1,p2)
3970 #define SDA_TRACE_WARNING3(m,p1,p2,p3)
3971 #define SDA_TRACE_WARNING4(m,p1,p2,p3,p4)
3972 #define SDA_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
3973 #define SDA_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
3974
3975 #define SDA_TRACE_EVENT0(m)
3976 #define SDA_TRACE_EVENT1(m,p1)
3977 #define SDA_TRACE_EVENT2(m,p1,p2)
3978 #define SDA_TRACE_EVENT3(m,p1,p2,p3)
3979 #define SDA_TRACE_EVENT4(m,p1,p2,p3,p4)
3980 #define SDA_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
3981 #define SDA_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
3982
3983 #define SDA_TRACE_DEBUG0(m)
3984 #define SDA_TRACE_DEBUG1(m,p1)
3985 #define SDA_TRACE_DEBUG2(m,p1,p2)
3986 #define SDA_TRACE_DEBUG3(m,p1,p2,p3)
3987 #define SDA_TRACE_DEBUG4(m,p1,p2,p3,p4)
3988 #define SDA_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
3989 #define SDA_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
3990
3991 /* AVDTP
3992 */
3993 #define AVDT_TRACE_ERROR0(m)
3994 #define AVDT_TRACE_ERROR1(m,p1)
3995 #define AVDT_TRACE_ERROR2(m,p1,p2)
3996 #define AVDT_TRACE_ERROR3(m,p1,p2,p3)
3997 #define AVDT_TRACE_ERROR4(m,p1,p2,p3,p4)
3998 #define AVDT_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
3999 #define AVDT_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
4000
4001 #define AVDT_TRACE_WARNING0(m)
4002 #define AVDT_TRACE_WARNING1(m,p1)
4003 #define AVDT_TRACE_WARNING2(m,p1,p2)
4004 #define AVDT_TRACE_WARNING3(m,p1,p2,p3)
4005 #define AVDT_TRACE_WARNING4(m,p1,p2,p3,p4)
4006 #define AVDT_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
4007 #define AVDT_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
4008
4009 #define AVDT_TRACE_EVENT0(m)
4010 #define AVDT_TRACE_EVENT1(m,p1)
4011 #define AVDT_TRACE_EVENT2(m,p1,p2)
4012 #define AVDT_TRACE_EVENT3(m,p1,p2,p3)
4013 #define AVDT_TRACE_EVENT4(m,p1,p2,p3,p4)
4014 #define AVDT_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
4015 #define AVDT_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
4016
4017 #define AVDT_TRACE_DEBUG0(m)
4018 #define AVDT_TRACE_DEBUG1(m,p1)
4019 #define AVDT_TRACE_DEBUG2(m,p1,p2)
4020 #define AVDT_TRACE_DEBUG3(m,p1,p2,p3)
4021 #define AVDT_TRACE_DEBUG4(m,p1,p2,p3,p4)
4022 #define AVDT_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
4023 #define AVDT_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
4024
4025 #define AVDT_TRACE_API0(m)
4026 #define AVDT_TRACE_API1(m,p1)
4027 #define AVDT_TRACE_API2(m,p1,p2)
4028 #define AVDT_TRACE_API3(m,p1,p2,p3)
4029 #define AVDT_TRACE_API4(m,p1,p2,p3,p4)
4030 #define AVDT_TRACE_API5(m,p1,p2,p3,p4,p5)
4031 #define AVDT_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
4032
4033 /* Define tracing for the AVCTP protocol
4034 */
4035 #define AVCT_TRACE_ERROR0(m)
4036 #define AVCT_TRACE_ERROR1(m,p1)
4037 #define AVCT_TRACE_ERROR2(m,p1,p2)
4038 #define AVCT_TRACE_ERROR3(m,p1,p2,p3)
4039 #define AVCT_TRACE_ERROR4(m,p1,p2,p3,p4)
4040 #define AVCT_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
4041 #define AVCT_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
4042
4043 #define AVCT_TRACE_WARNING0(m)
4044 #define AVCT_TRACE_WARNING1(m,p1)
4045 #define AVCT_TRACE_WARNING2(m,p1,p2)
4046 #define AVCT_TRACE_WARNING3(m,p1,p2,p3)
4047 #define AVCT_TRACE_WARNING4(m,p1,p2,p3,p4)
4048 #define AVCT_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
4049 #define AVCT_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
4050
4051 #define AVCT_TRACE_EVENT0(m)
4052 #define AVCT_TRACE_EVENT1(m,p1)
4053 #define AVCT_TRACE_EVENT2(m,p1,p2)
4054 #define AVCT_TRACE_EVENT3(m,p1,p2,p3)
4055 #define AVCT_TRACE_EVENT4(m,p1,p2,p3,p4)
4056 #define AVCT_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
4057 #define AVCT_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
4058
4059 #define AVCT_TRACE_DEBUG0(m)
4060 #define AVCT_TRACE_DEBUG1(m,p1)
4061 #define AVCT_TRACE_DEBUG2(m,p1,p2)
4062 #define AVCT_TRACE_DEBUG3(m,p1,p2,p3)
4063 #define AVCT_TRACE_DEBUG4(m,p1,p2,p3,p4)
4064 #define AVCT_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
4065 #define AVCT_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
4066
4067 #define AVCT_TRACE_API0(m)
4068 #define AVCT_TRACE_API1(m,p1)
4069 #define AVCT_TRACE_API2(m,p1,p2)
4070 #define AVCT_TRACE_API3(m,p1,p2,p3)
4071 #define AVCT_TRACE_API4(m,p1,p2,p3,p4)
4072 #define AVCT_TRACE_API5(m,p1,p2,p3,p4,p5)
4073 #define AVCT_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
4074
4075
4076 /* Define tracing for the AVRCP profile
4077 */
4078 #define AVRC_TRACE_ERROR0(m)
4079 #define AVRC_TRACE_ERROR1(m,p1)
4080 #define AVRC_TRACE_ERROR2(m,p1,p2)
4081 #define AVRC_TRACE_ERROR3(m,p1,p2,p3)
4082 #define AVRC_TRACE_ERROR4(m,p1,p2,p3,p4)
4083 #define AVRC_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
4084 #define AVRC_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
4085
4086 #define AVRC_TRACE_WARNING0(m)
4087 #define AVRC_TRACE_WARNING1(m,p1)
4088 #define AVRC_TRACE_WARNING2(m,p1,p2)
4089 #define AVRC_TRACE_WARNING3(m,p1,p2,p3)
4090 #define AVRC_TRACE_WARNING4(m,p1,p2,p3,p4)
4091 #define AVRC_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
4092 #define AVRC_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
4093
4094 #define AVRC_TRACE_EVENT0(m)
4095 #define AVRC_TRACE_EVENT1(m,p1)
4096 #define AVRC_TRACE_EVENT2(m,p1,p2)
4097 #define AVRC_TRACE_EVENT3(m,p1,p2,p3)
4098 #define AVRC_TRACE_EVENT4(m,p1,p2,p3,p4)
4099 #define AVRC_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
4100 #define AVRC_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
4101
4102 #define AVRC_TRACE_DEBUG0(m)
4103 #define AVRC_TRACE_DEBUG1(m,p1)
4104 #define AVRC_TRACE_DEBUG2(m,p1,p2)
4105 #define AVRC_TRACE_DEBUG3(m,p1,p2,p3)
4106 #define AVRC_TRACE_DEBUG4(m,p1,p2,p3,p4)
4107 #define AVRC_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
4108 #define AVRC_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
4109
4110 #define AVRC_TRACE_API0(m)
4111 #define AVRC_TRACE_API1(m,p1)
4112 #define AVRC_TRACE_API2(m,p1,p2)
4113 #define AVRC_TRACE_API3(m,p1,p2,p3)
4114 #define AVRC_TRACE_API4(m,p1,p2,p3,p4)
4115 #define AVRC_TRACE_API5(m,p1,p2,p3,p4,p5)
4116 #define AVRC_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
4117
4118 /* MCAP
4119 */
4120 #define MCA_TRACE_ERROR0(m)
4121 #define MCA_TRACE_ERROR1(m,p1)
4122 #define MCA_TRACE_ERROR2(m,p1,p2)
4123 #define MCA_TRACE_ERROR3(m,p1,p2,p3)
4124 #define MCA_TRACE_ERROR4(m,p1,p2,p3,p4)
4125 #define MCA_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
4126 #define MCA_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
4127
4128 #define MCA_TRACE_WARNING0(m)
4129 #define MCA_TRACE_WARNING1(m,p1)
4130 #define MCA_TRACE_WARNING2(m,p1,p2)
4131 #define MCA_TRACE_WARNING3(m,p1,p2,p3)
4132 #define MCA_TRACE_WARNING4(m,p1,p2,p3,p4)
4133 #define MCA_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
4134 #define MCA_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
4135
4136 #define MCA_TRACE_EVENT0(m)
4137 #define MCA_TRACE_EVENT1(m,p1)
4138 #define MCA_TRACE_EVENT2(m,p1,p2)
4139 #define MCA_TRACE_EVENT3(m,p1,p2,p3)
4140 #define MCA_TRACE_EVENT4(m,p1,p2,p3,p4)
4141 #define MCA_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
4142 #define MCA_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
4143
4144 #define MCA_TRACE_DEBUG0(m)
4145 #define MCA_TRACE_DEBUG1(m,p1)
4146 #define MCA_TRACE_DEBUG2(m,p1,p2)
4147 #define MCA_TRACE_DEBUG3(m,p1,p2,p3)
4148 #define MCA_TRACE_DEBUG4(m,p1,p2,p3,p4)
4149 #define MCA_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
4150 #define MCA_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
4151
4152 #define MCA_TRACE_API0(m)
4153 #define MCA_TRACE_API1(m,p1)
4154 #define MCA_TRACE_API2(m,p1,p2)
4155 #define MCA_TRACE_API3(m,p1,p2,p3)
4156 #define MCA_TRACE_API4(m,p1,p2,p3,p4)
4157 #define MCA_TRACE_API5(m,p1,p2,p3,p4,p5)
4158 #define MCA_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
4159
4160 /* Define tracing for the AMP unit
4161 */
4162 #define AMP_TRACE_ERROR0(m)
4163 #define AMP_TRACE_ERROR1(m,p1)
4164 #define AMP_TRACE_ERROR2(m,p1,p2)
4165 #define AMP_TRACE_ERROR3(m,p1,p2,p3)
4166 #define AMP_TRACE_ERROR4(m,p1,p2,p3,p4)
4167 #define AMP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
4168 #define AMP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
4169
4170 #define AMP_TRACE_WARNING0(m)
4171 #define AMP_TRACE_WARNING1(m,p1)
4172 #define AMP_TRACE_WARNING2(m,p1,p2)
4173 #define AMP_TRACE_WARNING3(m,p1,p2,p3)
4174 #define AMP_TRACE_WARNING4(m,p1,p2,p3,p4)
4175 #define AMP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
4176 #define AMP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
4177
4178 #define AMP_TRACE_API0(m)
4179 #define AMP_TRACE_API1(m,p1)
4180 #define AMP_TRACE_API2(m,p1,p2)
4181 #define AMP_TRACE_API3(m,p1,p2,p3)
4182 #define AMP_TRACE_API4(m,p1,p2,p3,p4)
4183 #define AMP_TRACE_API5(m,p1,p2,p3,p4,p5)
4184 #define AMP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
4185
4186 #define AMP_TRACE_EVENT0(m)
4187 #define AMP_TRACE_EVENT1(m,p1)
4188 #define AMP_TRACE_EVENT2(m,p1,p2)
4189 #define AMP_TRACE_EVENT3(m,p1,p2,p3)
4190 #define AMP_TRACE_EVENT4(m,p1,p2,p3,p4)
4191 #define AMP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
4192 #define AMP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
4193
4194 #define AMP_TRACE_DEBUG0(m)
4195 #define AMP_TRACE_DEBUG1(m,p1)
4196 #define AMP_TRACE_DEBUG2(m,p1,p2)
4197 #define AMP_TRACE_DEBUG3(m,p1,p2,p3)
4198 #define AMP_TRACE_DEBUG4(m,p1,p2,p3,p4)
4199 #define AMP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
4200 #define AMP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
4201
4202 /* Define tracing for the GATT
4203 */
4204 #define GATT_TRACE_ERROR0(m)
4205 #define GATT_TRACE_ERROR1(m,p1)
4206 #define GATT_TRACE_ERROR2(m,p1,p2)
4207 #define GATT_TRACE_ERROR3(m,p1,p2,p3)
4208 #define GATT_TRACE_ERROR4(m,p1,p2,p3,p4)
4209 #define GATT_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
4210 #define GATT_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
4211
4212 #define GATT_TRACE_WARNING0(m)
4213 #define GATT_TRACE_WARNING1(m,p1)
4214 #define GATT_TRACE_WARNING2(m,p1,p2)
4215 #define GATT_TRACE_WARNING3(m,p1,p2,p3)
4216 #define GATT_TRACE_WARNING4(m,p1,p2,p3,p4)
4217 #define GATT_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
4218 #define GATT_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
4219
4220 #define GATT_TRACE_API0(m)
4221 #define GATT_TRACE_API1(m,p1)
4222 #define GATT_TRACE_API2(m,p1,p2)
4223 #define GATT_TRACE_API3(m,p1,p2,p3)
4224 #define GATT_TRACE_API4(m,p1,p2,p3,p4)
4225 #define GATT_TRACE_API5(m,p1,p2,p3,p4,p5)
4226 #define GATT_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
4227
4228 #define GATT_TRACE_EVENT0(m)
4229 #define GATT_TRACE_EVENT1(m,p1)
4230 #define GATT_TRACE_EVENT2(m,p1,p2)
4231 #define GATT_TRACE_EVENT3(m,p1,p2,p3)
4232 #define GATT_TRACE_EVENT4(m,p1,p2,p3,p4)
4233 #define GATT_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
4234 #define GATT_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
4235
4236 #define GATT_TRACE_DEBUG0(m)
4237 #define GATT_TRACE_DEBUG1(m,p1)
4238 #define GATT_TRACE_DEBUG2(m,p1,p2)
4239 #define GATT_TRACE_DEBUG3(m,p1,p2,p3)
4240 #define GATT_TRACE_DEBUG4(m,p1,p2,p3,p4)
4241 #define GATT_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
4242 #define GATT_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
4243
4244 /* Define tracing for the SMP unit
4245 */
4246 #define SMP_TRACE_ERROR0(m)
4247 #define SMP_TRACE_ERROR1(m,p1)
4248 #define SMP_TRACE_ERROR2(m,p1,p2)
4249 #define SMP_TRACE_ERROR3(m,p1,p2,p3)
4250 #define SMP_TRACE_ERROR4(m,p1,p2,p3,p4)
4251 #define SMP_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
4252 #define SMP_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
4253
4254 #define SMP_TRACE_WARNING0(m)
4255 #define SMP_TRACE_WARNING1(m,p1)
4256 #define SMP_TRACE_WARNING2(m,p1,p2)
4257 #define SMP_TRACE_WARNING3(m,p1,p2,p3)
4258 #define SMP_TRACE_WARNING4(m,p1,p2,p3,p4)
4259 #define SMP_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
4260 #define SMP_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
4261
4262 #define SMP_TRACE_API0(m)
4263 #define SMP_TRACE_API1(m,p1)
4264 #define SMP_TRACE_API2(m,p1,p2)
4265 #define SMP_TRACE_API3(m,p1,p2,p3)
4266 #define SMP_TRACE_API4(m,p1,p2,p3,p4)
4267 #define SMP_TRACE_API5(m,p1,p2,p3,p4,p5)
4268 #define SMP_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
4269
4270 #define SMP_TRACE_EVENT0(m)
4271 #define SMP_TRACE_EVENT1(m,p1)
4272 #define SMP_TRACE_EVENT2(m,p1,p2)
4273 #define SMP_TRACE_EVENT3(m,p1,p2,p3)
4274 #define SMP_TRACE_EVENT4(m,p1,p2,p3,p4)
4275 #define SMP_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
4276 #define SMP_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
4277
4278 #define SMP_TRACE_DEBUG0(m)
4279 #define SMP_TRACE_DEBUG1(m,p1)
4280 #define SMP_TRACE_DEBUG2(m,p1,p2)
4281 #define SMP_TRACE_DEBUG3(m,p1,p2,p3)
4282 #define SMP_TRACE_DEBUG4(m,p1,p2,p3,p4)
4283 #define SMP_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
4284 #define SMP_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
4285
4286 #endif
4287
4288 #if (BT_TRACE_BTIF == TRUE)
4289
4290 extern UINT8 btif_trace_level;
4291
4292 /* define traces for application */
4293 #define BTIF_TRACE_ERROR0(m)                    {if (btif_trace_level >= BT_TRACE_LEVEL_ERROR) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_ERROR, (m));}
4294 #define BTIF_TRACE_ERROR1(m,p1)                 {if (btif_trace_level >= BT_TRACE_LEVEL_ERROR) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_ERROR, \
4295                                                         (m), (UINT32)(p1));}
4296 #define BTIF_TRACE_ERROR2(m,p1,p2)              {if (btif_trace_level >= BT_TRACE_LEVEL_ERROR) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_ERROR, \
4297                                                         (m), (UINT32)(p1), (UINT32)(p2));}
4298 #define BTIF_TRACE_ERROR3(m,p1,p2,p3)           {if (btif_trace_level >= BT_TRACE_LEVEL_ERROR) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_ERROR, \
4299                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3));}
4300 #define BTIF_TRACE_ERROR4(m,p1,p2,p3,p4)        {if (btif_trace_level >= BT_TRACE_LEVEL_ERROR) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_ERROR, \
4301                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4));}
4302 #define BTIF_TRACE_ERROR5(m,p1,p2,p3,p4,p5)     {if (btif_trace_level >= BT_TRACE_LEVEL_ERROR) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_ERROR, \
4303                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5));}
4304 #define BTIF_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)  {if (btif_trace_level >= BT_TRACE_LEVEL_ERROR) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_ERROR, \
4305                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5), (UINT32)(p6));}
4306
4307 #define BTIF_TRACE_WARNING0(m)                  {if (btif_trace_level >= BT_TRACE_LEVEL_WARNING) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_WARNING, (m));}
4308 #define BTIF_TRACE_WARNING1(m,p1)               {if (btif_trace_level >= BT_TRACE_LEVEL_WARNING) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_WARNING, \
4309                                                         (m), (UINT32)(p1));}
4310 #define BTIF_TRACE_WARNING2(m,p1,p2)            {if (btif_trace_level >= BT_TRACE_LEVEL_WARNING) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_WARNING, \
4311                                                         (m), (UINT32)(p1), (UINT32)(p2));}
4312 #define BTIF_TRACE_WARNING3(m,p1,p2,p3)         {if (btif_trace_level >= BT_TRACE_LEVEL_WARNING) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_WARNING, \
4313                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3));}
4314 #define BTIF_TRACE_WARNING4(m,p1,p2,p3,p4)      {if (btif_trace_level >= BT_TRACE_LEVEL_WARNING) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_WARNING, \
4315                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4));}
4316 #define BTIF_TRACE_WARNING5(m,p1,p2,p3,p4,p5)   {if (btif_trace_level >= BT_TRACE_LEVEL_WARNING) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_WARNING, \
4317                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5));}
4318 #define BTIF_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (btif_trace_level >= BT_TRACE_LEVEL_WARNING) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_WARNING, \
4319                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5), (UINT32)(p6));}
4320
4321 #define BTIF_TRACE_API0(m)                      {if (btif_trace_level >= BT_TRACE_LEVEL_API) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_API, (m));}
4322 #define BTIF_TRACE_API1(m,p1)                   {if (btif_trace_level >= BT_TRACE_LEVEL_API) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_API, \
4323                                                         (m), (UINT32)(p1));}
4324 #define BTIF_TRACE_API2(m,p1,p2)                {if (btif_trace_level >= BT_TRACE_LEVEL_API) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_API, \
4325                                                         (m), (UINT32)(p1), (UINT32)(p2));}
4326 #define BTIF_TRACE_API3(m,p1,p2,p3)             {if (btif_trace_level >= BT_TRACE_LEVEL_API) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_API, \
4327                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3));}
4328 #define BTIF_TRACE_API4(m,p1,p2,p3,p4)          {if (btif_trace_level >= BT_TRACE_LEVEL_API) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_API, \
4329                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4));}
4330 #define BTIF_TRACE_API5(m,p1,p2,p3,p4,p5)       {if (btif_trace_level >= BT_TRACE_LEVEL_API) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_API, \
4331                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5));}
4332 #define BTIF_TRACE_API6(m,p1,p2,p3,p4,p5,p6)    {if (btif_trace_level >= BT_TRACE_LEVEL_API) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_API, \
4333                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5), (UINT32)(p6));}
4334
4335 #define BTIF_TRACE_EVENT0(m)                    {if (btif_trace_level >= BT_TRACE_LEVEL_EVENT) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_EVENT, (m));}
4336 #define BTIF_TRACE_EVENT1(m,p1)                 {if (btif_trace_level >= BT_TRACE_LEVEL_EVENT) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_EVENT, \
4337                                                         (m), (UINT32)(p1));}
4338 #define BTIF_TRACE_EVENT2(m,p1,p2)              {if (btif_trace_level >= BT_TRACE_LEVEL_EVENT) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_EVENT, \
4339                                                         (m), (UINT32)(p1), (UINT32)(p2));}
4340 #define BTIF_TRACE_EVENT3(m,p1,p2,p3)           {if (btif_trace_level >= BT_TRACE_LEVEL_EVENT) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_EVENT, \
4341                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3));}
4342 #define BTIF_TRACE_EVENT4(m,p1,p2,p3,p4)        {if (btif_trace_level >= BT_TRACE_LEVEL_EVENT) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_EVENT, \
4343                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4));}
4344 #define BTIF_TRACE_EVENT5(m,p1,p2,p3,p4,p5)     {if (btif_trace_level >= BT_TRACE_LEVEL_EVENT) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_EVENT, \
4345                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5));}
4346 #define BTIF_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)  {if (btif_trace_level >= BT_TRACE_LEVEL_EVENT) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_EVENT, \
4347                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5), (UINT32)(p6));}
4348
4349 #define BTIF_TRACE_DEBUG0(m)                    {if (btif_trace_level >= BT_TRACE_LEVEL_DEBUG) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_DEBUG, (m));}
4350 #define BTIF_TRACE_DEBUG1(m,p1)                 {if (btif_trace_level >= BT_TRACE_LEVEL_DEBUG) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_DEBUG, \
4351                                                         (m), (UINT32)(p1));}
4352 #define BTIF_TRACE_DEBUG2(m,p1,p2)              {if (btif_trace_level >= BT_TRACE_LEVEL_DEBUG) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_DEBUG, \
4353                                                         (m), (UINT32)(p1), (UINT32)(p2));}
4354 #define BTIF_TRACE_DEBUG3(m,p1,p2,p3)           {if (btif_trace_level >= BT_TRACE_LEVEL_DEBUG) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_DEBUG, \
4355                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3));}
4356 #define BTIF_TRACE_DEBUG4(m,p1,p2,p3,p4)        {if (btif_trace_level >= BT_TRACE_LEVEL_DEBUG) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_DEBUG, \
4357                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4));}
4358 #define BTIF_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)     {if (btif_trace_level >= BT_TRACE_LEVEL_DEBUG) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_DEBUG, \
4359                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5));}
4360 #define BTIF_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)  {if (btif_trace_level >= BT_TRACE_LEVEL_DEBUG) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_DEBUG, \
4361                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5), (UINT32)(p6));}
4362
4363 #define BTIF_TRACE_VERBOSE0(m)                    {if (btif_trace_level >= BT_TRACE_LEVEL_VERBOSE) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_DEBUG, (m));}
4364 #define BTIF_TRACE_VERBOSE1(m,p1)                 {if (btif_trace_level >= BT_TRACE_LEVEL_VERBOSE) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_DEBUG, \
4365                                                         (m), (UINT32)(p1));}
4366 #define BTIF_TRACE_VERBOSE2(m,p1,p2)              {if (btif_trace_level >= BT_TRACE_LEVEL_VERBOSE) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_DEBUG, \
4367                                                         (m), (UINT32)(p1), (UINT32)(p2));}
4368 #define BTIF_TRACE_VERBOSE3(m,p1,p2,p3)           {if (btif_trace_level >= BT_TRACE_LEVEL_VERBOSE) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_DEBUG, \
4369                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3));}
4370 #define BTIF_TRACE_VERBOSE4(m,p1,p2,p3,p4)        {if (btif_trace_level >= BT_TRACE_LEVEL_VERBOSE) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_DEBUG, \
4371                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4));}
4372 #define BTIF_TRACE_VERBOSE5(m,p1,p2,p3,p4,p5)     {if (btif_trace_level >= BT_TRACE_LEVEL_VERBOSE) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_DEBUG, \
4373                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5));}
4374 #define BTIF_TRACE_VERBOSE6(m,p1,p2,p3,p4,p5,p6)  {if (btif_trace_level >= BT_TRACE_LEVEL_VERBOSE) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_DEBUG, \
4375                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5), (UINT32)(p6));}
4376
4377 #else
4378 /* define traces for Application */
4379
4380 #define BTIF_TRACE_ERROR0(m)
4381 #define BTIF_TRACE_ERROR1(m,p1)
4382 #define BTIF_TRACE_ERROR2(m,p1,p2)
4383 #define BTIF_TRACE_ERROR3(m,p1,p2,p3)
4384 #define BTIF_TRACE_ERROR4(m,p1,p2,p3,p4)
4385 #define BTIF_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
4386 #define BTIF_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
4387 #define BTIF_TRACE_ERROR7(m,p1,p2,p3,p4,p5,p6,p7)
4388
4389
4390 #define BTIF_TRACE_WARNING0(m)
4391 #define BTIF_TRACE_WARNING1(m,p1)
4392 #define BTIF_TRACE_WARNING2(m,p1,p2)
4393 #define BTIF_TRACE_WARNING3(m,p1,p2,p3)
4394 #define BTIF_TRACE_WARNING4(m,p1,p2,p3,p4)
4395 #define BTIF_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
4396 #define BTIF_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
4397 #define BTIF_TRACE_WARNING7(m,p1,p2,p3,p4,p5,p6,p7)
4398
4399
4400 #define BTIF_TRACE_API0(m)
4401 #define BTIF_TRACE_API1(m,p1)
4402 #define BTIF_TRACE_API2(m,p1,p2)
4403 #define BTIF_TRACE_API3(m,p1,p2,p3)
4404 #define BTIF_TRACE_API4(m,p1,p2,p3,p4)
4405 #define BTIF_TRACE_API5(m,p1,p2,p3,p4,p5)
4406 #define BTIF_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
4407
4408 #define BTIF_TRACE_EVENT0(m)
4409 #define BTIF_TRACE_EVENT1(m,p1)
4410 #define BTIF_TRACE_EVENT2(m,p1,p2)
4411 #define BTIF_TRACE_EVENT3(m,p1,p2,p3)
4412 #define BTIF_TRACE_EVENT4(m,p1,p2,p3,p4)
4413 #define BTIF_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
4414 #define BTIF_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
4415
4416 #define BTIF_TRACE_DEBUG0(m)
4417 #define BTIF_TRACE_DEBUG1(m,p1)
4418 #define BTIF_TRACE_DEBUG2(m,p1,p2)
4419 #define BTIF_TRACE_DEBUG3(m,p1,p2,p3)
4420 #define BTIF_TRACE_DEBUG4(m,p1,p2,p3,p4)
4421 #define BTIF_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
4422 #define BTIF_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
4423 #define BTIF_TRACE_DEBUG7(m,p1,p2,p3,p4,p5,p6,p7)
4424 #define BTIF_TRACE_DEBUG8(m,p1,p2,p3,p4,p5,p6,p7,p8)
4425
4426
4427
4428
4429 #define BTIF_TRACE_VERBOSE0(m)
4430 #define BTIF_TRACE_VERBOSE1(m,p1)
4431 #define BTIF_TRACE_VERBOSE2(m,p1,p2)
4432 #define BTIF_TRACE_VERBOSE3(m,p1,p2,p3)
4433 #define BTIF_TRACE_VERBOSE4(m,p1,p2,p3,p4)
4434 #define BTIF_TRACE_VERBOSE5(m,p1,p2,p3,p4,p5)
4435 #define BTIF_TRACE_VERBOSE6(m,p1,p2,p3,p4,p5,p6)
4436
4437 #endif
4438
4439
4440 #if (BT_USE_TRACES == TRUE || BT_TRACE_APPL == TRUE)
4441
4442 /* define traces for application */
4443 #define APPL_TRACE_ERROR0(m)                    {if (appl_trace_level >= BT_TRACE_LEVEL_ERROR) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_ERROR, (m));}
4444 #define APPL_TRACE_ERROR1(m,p1)                 {if (appl_trace_level >= BT_TRACE_LEVEL_ERROR) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_ERROR, \
4445                                                         (m), (UINT32)(p1));}
4446 #define APPL_TRACE_ERROR2(m,p1,p2)              {if (appl_trace_level >= BT_TRACE_LEVEL_ERROR) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_ERROR, \
4447                                                         (m), (UINT32)(p1), (UINT32)(p2));}
4448 #define APPL_TRACE_ERROR3(m,p1,p2,p3)           {if (appl_trace_level >= BT_TRACE_LEVEL_ERROR) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_ERROR, \
4449                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3));}
4450 #define APPL_TRACE_ERROR4(m,p1,p2,p3,p4)        {if (appl_trace_level >= BT_TRACE_LEVEL_ERROR) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_ERROR, \
4451                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4));}
4452 #define APPL_TRACE_ERROR5(m,p1,p2,p3,p4,p5)     {if (appl_trace_level >= BT_TRACE_LEVEL_ERROR) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_ERROR, \
4453                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5));}
4454 #define APPL_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)  {if (appl_trace_level >= BT_TRACE_LEVEL_ERROR) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_ERROR, \
4455                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5), (UINT32)(p6));}
4456
4457 #define APPL_TRACE_WARNING0(m)                  {if (appl_trace_level >= BT_TRACE_LEVEL_WARNING) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_WARNING, (m));}
4458 #define APPL_TRACE_WARNING1(m,p1)               {if (appl_trace_level >= BT_TRACE_LEVEL_WARNING) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_WARNING, \
4459                                                         (m), (UINT32)(p1));}
4460 #define APPL_TRACE_WARNING2(m,p1,p2)            {if (appl_trace_level >= BT_TRACE_LEVEL_WARNING) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_WARNING, \
4461                                                         (m), (UINT32)(p1), (UINT32)(p2));}
4462 #define APPL_TRACE_WARNING3(m,p1,p2,p3)         {if (appl_trace_level >= BT_TRACE_LEVEL_WARNING) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_WARNING, \
4463                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3));}
4464 #define APPL_TRACE_WARNING4(m,p1,p2,p3,p4)      {if (appl_trace_level >= BT_TRACE_LEVEL_WARNING) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_WARNING, \
4465                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4));}
4466 #define APPL_TRACE_WARNING5(m,p1,p2,p3,p4,p5)   {if (appl_trace_level >= BT_TRACE_LEVEL_WARNING) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_WARNING, \
4467                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5));}
4468 #define APPL_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6) {if (appl_trace_level >= BT_TRACE_LEVEL_WARNING) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_WARNING, \
4469                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5), (UINT32)(p6));}
4470
4471 #define APPL_TRACE_API0(m)                      {if (appl_trace_level >= BT_TRACE_LEVEL_API) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_API, (m));}
4472 #define APPL_TRACE_API1(m,p1)                   {if (appl_trace_level >= BT_TRACE_LEVEL_API) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_API, \
4473                                                         (m), (UINT32)(p1));}
4474 #define APPL_TRACE_API2(m,p1,p2)                {if (appl_trace_level >= BT_TRACE_LEVEL_API) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_API, \
4475                                                         (m), (UINT32)(p1), (UINT32)(p2));}
4476 #define APPL_TRACE_API3(m,p1,p2,p3)             {if (appl_trace_level >= BT_TRACE_LEVEL_API) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_API, \
4477                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3));}
4478 #define APPL_TRACE_API4(m,p1,p2,p3,p4)          {if (appl_trace_level >= BT_TRACE_LEVEL_API) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_API, \
4479                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4));}
4480 #define APPL_TRACE_API5(m,p1,p2,p3,p4,p5)       {if (appl_trace_level >= BT_TRACE_LEVEL_API) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_API, \
4481                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5));}
4482 #define APPL_TRACE_API6(m,p1,p2,p3,p4,p5,p6)    {if (appl_trace_level >= BT_TRACE_LEVEL_API) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_API, \
4483                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5), (UINT32)(p6));}
4484
4485 #define APPL_TRACE_EVENT0(m)                    {if (appl_trace_level >= BT_TRACE_LEVEL_EVENT) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_EVENT, (m));}
4486 #define APPL_TRACE_EVENT1(m,p1)                 {if (appl_trace_level >= BT_TRACE_LEVEL_EVENT) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_EVENT, \
4487                                                         (m), (UINT32)(p1));}
4488 #define APPL_TRACE_EVENT2(m,p1,p2)              {if (appl_trace_level >= BT_TRACE_LEVEL_EVENT) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_EVENT, \
4489                                                         (m), (UINT32)(p1), (UINT32)(p2));}
4490 #define APPL_TRACE_EVENT3(m,p1,p2,p3)           {if (appl_trace_level >= BT_TRACE_LEVEL_EVENT) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_EVENT, \
4491                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3));}
4492 #define APPL_TRACE_EVENT4(m,p1,p2,p3,p4)        {if (appl_trace_level >= BT_TRACE_LEVEL_EVENT) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_EVENT, \
4493                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4));}
4494 #define APPL_TRACE_EVENT5(m,p1,p2,p3,p4,p5)     {if (appl_trace_level >= BT_TRACE_LEVEL_EVENT) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_EVENT, \
4495                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5));}
4496 #define APPL_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)  {if (appl_trace_level >= BT_TRACE_LEVEL_EVENT) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_EVENT, \
4497                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5), (UINT32)(p6));}
4498
4499 #define APPL_TRACE_DEBUG0(m)                    {if (appl_trace_level >= BT_TRACE_LEVEL_DEBUG) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_DEBUG, (m));}
4500 #define APPL_TRACE_DEBUG1(m,p1)                 {if (appl_trace_level >= BT_TRACE_LEVEL_DEBUG) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_DEBUG, \
4501                                                         (m), (UINT32)(p1));}
4502 #define APPL_TRACE_DEBUG2(m,p1,p2)              {if (appl_trace_level >= BT_TRACE_LEVEL_DEBUG) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_DEBUG, \
4503                                                         (m), (UINT32)(p1), (UINT32)(p2));}
4504 #define APPL_TRACE_DEBUG3(m,p1,p2,p3)           {if (appl_trace_level >= BT_TRACE_LEVEL_DEBUG) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_DEBUG, \
4505                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3));}
4506 #define APPL_TRACE_DEBUG4(m,p1,p2,p3,p4)        {if (appl_trace_level >= BT_TRACE_LEVEL_DEBUG) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_DEBUG, \
4507                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4));}
4508 #define APPL_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)     {if (appl_trace_level >= BT_TRACE_LEVEL_DEBUG) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_DEBUG, \
4509                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5));}
4510 #define APPL_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)  {if (appl_trace_level >= BT_TRACE_LEVEL_DEBUG) LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_DEBUG, \
4511                                                         (m), (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5), (UINT32)(p6));}
4512
4513 #define APPL_TRACE_VERBOSE0(m)                    {if (appl_trace_level >= BT_TRACE_LEVEL_VERBOSE)\
4514     LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_DEBUG, (m));}
4515 #define APPL_TRACE_VERBOSE1(m,p1)                 {if (appl_trace_level >= BT_TRACE_LEVEL_VERBOSE)\
4516     LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_DEBUG, (m), \
4517     (UINT32)(p1));}
4518 #define APPL_TRACE_VERBOSE2(m,p1,p2)              {if (appl_trace_level >= BT_TRACE_LEVEL_VERBOSE)\
4519     LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_DEBUG, (m), \
4520     (UINT32)(p1), (UINT32)(p2));}
4521 #define APPL_TRACE_VERBOSE3(m,p1,p2,p3)           {if (appl_trace_level >= BT_TRACE_LEVEL_VERBOSE)\
4522     LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_DEBUG, (m), \
4523     (UINT32)(p1), (UINT32)(p2), (UINT32)(p3));}
4524 #define APPL_TRACE_VERBOSE4(m,p1,p2,p3,p4)        {if (appl_trace_level >= BT_TRACE_LEVEL_VERBOSE)\
4525     LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_DEBUG, (m), \
4526     (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4));}
4527 #define APPL_TRACE_VERBOSE5(m,p1,p2,p3,p4,p5)     {if (appl_trace_level >= BT_TRACE_LEVEL_VERBOSE)\
4528     LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_DEBUG, (m), \
4529     (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5));}
4530 #define APPL_TRACE_VERBOSE6(m,p1,p2,p3,p4,p5,p6)  {if (appl_trace_level >= BT_TRACE_LEVEL_VERBOSE)\
4531     LogMsg(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | TRACE_TYPE_DEBUG, (m), \
4532     (UINT32)(p1), (UINT32)(p2), (UINT32)(p3), (UINT32)(p4), (UINT32)(p5), (UINT32)(p6));}
4533
4534 #else
4535 /* define traces for Application */
4536
4537 #define APPL_TRACE_ERROR0(m)
4538 #define APPL_TRACE_ERROR1(m,p1)
4539 #define APPL_TRACE_ERROR2(m,p1,p2)
4540 #define APPL_TRACE_ERROR3(m,p1,p2,p3)
4541 #define APPL_TRACE_ERROR4(m,p1,p2,p3,p4)
4542 #define APPL_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
4543 #define APPL_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
4544
4545 #define APPL_TRACE_WARNING0(m)
4546 #define APPL_TRACE_WARNING1(m,p1)
4547 #define APPL_TRACE_WARNING2(m,p1,p2)
4548 #define APPL_TRACE_WARNING3(m,p1,p2,p3)
4549 #define APPL_TRACE_WARNING4(m,p1,p2,p3,p4)
4550 #define APPL_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
4551 #define APPL_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
4552
4553 #define APPL_TRACE_API0(m)
4554 #define APPL_TRACE_API1(m,p1)
4555 #define APPL_TRACE_API2(m,p1,p2)
4556 #define APPL_TRACE_API3(m,p1,p2,p3)
4557 #define APPL_TRACE_API4(m,p1,p2,p3,p4)
4558 #define APPL_TRACE_API5(m,p1,p2,p3,p4,p5)
4559 #define APPL_TRACE_API6(m,p1,p2,p3,p4,p5,p6)
4560
4561 #define APPL_TRACE_EVENT0(m)
4562 #define APPL_TRACE_EVENT1(m,p1)
4563 #define APPL_TRACE_EVENT2(m,p1,p2)
4564 #define APPL_TRACE_EVENT3(m,p1,p2,p3)
4565 #define APPL_TRACE_EVENT4(m,p1,p2,p3,p4)
4566 #define APPL_TRACE_EVENT5(m,p1,p2,p3,p4,p5)
4567 #define APPL_TRACE_EVENT6(m,p1,p2,p3,p4,p5,p6)
4568
4569 #define APPL_TRACE_DEBUG0(m)
4570 #define APPL_TRACE_DEBUG1(m,p1)
4571 #define APPL_TRACE_DEBUG2(m,p1,p2)
4572 #define APPL_TRACE_DEBUG3(m,p1,p2,p3)
4573 #define APPL_TRACE_DEBUG4(m,p1,p2,p3,p4)
4574 #define APPL_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
4575 #define APPL_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
4576
4577 #define APPL_TRACE_VERBOSE0(m)
4578 #define APPL_TRACE_VERBOSE1(m,p1)
4579 #define APPL_TRACE_VERBOSE2(m,p1,p2)
4580 #define APPL_TRACE_VERBOSE3(m,p1,p2,p3)
4581 #define APPL_TRACE_VERBOSE4(m,p1,p2,p3,p4)
4582 #define APPL_TRACE_VERBOSE5(m,p1,p2,p3,p4,p5)
4583 #define APPL_TRACE_VERBOSE6(m,p1,p2,p3,p4,p5,p6)
4584
4585 #endif
4586
4587 #if ((MMI_INCLUDED == TRUE) && (!defined(HID_MSKB_INCLUDED) || (HID_MSKB_INCLUDED == FALSE)))
4588 /* UI for sample applications */
4589 #define SAP_TRACE_0(m)                            MMI_Echo(m)
4590 #define SAP_TRACE_1(m,p1)                         MMI_Echo(m,p1)
4591 #define SAP_TRACE_2(m,p1,p2)                      MMI_Echo(m,p1,p2)
4592 #define SAP_TRACE_3(m,p1,p2,p3)                   MMI_Echo(m,p1,p2,p3)
4593 #define SAP_TRACE_4(m,p1,p2,p3,p4)                MMI_Echo(m,p1,p2,p3,p4)
4594 #define SAP_TRACE_5(m,p1,p2,p3,p4,p5)             MMI_Echo(m,p1,p2,p3,p4,p5)
4595 #define SAP_TRACE_6(m,p1,p2,p3,p4,p5,p6)          MMI_Echo(m,p1,p2,p3,p4,p5,p6)
4596 #else
4597 #define SAP_TRACE_0(m)
4598 #define SAP_TRACE_1(m,p1)
4599 #define SAP_TRACE_2(m,p1,p2)
4600 #define SAP_TRACE_3(m,p1,p2,p3)
4601 #define SAP_TRACE_4(m,p1,p2,p3,p4)
4602 #define SAP_TRACE_5(m,p1,p2,p3,p4,p5)
4603 #define SAP_TRACE_6(m,p1,p2,p3,p4,p5,p6)
4604
4605 #endif  /* End of MMI_INCLUDED */
4606 #if defined(DRV_DEBUG_MSG) && (DRV_DEBUG_MSG == TRUE)
4607 /* Driver Trace macros
4608 */
4609 #define DRV_TRACE_WARNING0(m)                      APPL_TRACE_WARNING0(m)
4610 #define DRV_TRACE_WARNING1(m,p1)                   APPL_TRACE_WARNING1(m,p1)
4611 #define DRV_TRACE_WARNING2(m,p1,p2)                APPL_TRACE_WARNING2(m,p1,p2)
4612 #define DRV_TRACE_WARNING3(m,p1,p2,p3)             APPL_TRACE_WARNING3(m,p1,p2,p3)
4613 #define DRV_TRACE_WARNING4(m,p1,p2,p3,p4)          APPL_TRACE_WARNING4(m,p1,p2,p3,p4)
4614 #define DRV_TRACE_WARNING5(m,p1,p2,p3,p4,p5)       APPL_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
4615 #define DRV_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)    APPL_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
4616 #else
4617 /* Driver Trace macros
4618 */
4619 #define DRV_TRACE_WARNING0(m)
4620 #define DRV_TRACE_WARNING1(m,p1)
4621 #define DRV_TRACE_WARNING2(m,p1,p2)
4622 #define DRV_TRACE_WARNING3(m,p1,p2,p3)
4623 #define DRV_TRACE_WARNING4(m,p1,p2,p3,p4)
4624 #define DRV_TRACE_WARNING5(m,p1,p2,p3,p4,p5)
4625 #define DRV_TRACE_WARNING6(m,p1,p2,p3,p4,p5,p6)
4626 #endif
4627
4628 #define DRV_TRACE_ERROR0(m)                      APPL_TRACE_ERROR0(m)
4629 #define DRV_TRACE_ERROR1(m,p1)                   APPL_TRACE_ERROR1(m,p1)
4630 #define DRV_TRACE_ERROR2(m,p1,p2)                APPL_TRACE_ERROR2(m,p1,p2)
4631 #define DRV_TRACE_ERROR3(m,p1,p2,p3)             APPL_TRACE_ERROR3(m,p1,p2,p3)
4632 #define DRV_TRACE_ERROR4(m,p1,p2,p3,p4)          APPL_TRACE_ERROR4(m,p1,p2,p3,p4)
4633 #define DRV_TRACE_ERROR5(m,p1,p2,p3,p4,p5)       APPL_TRACE_ERROR5(m,p1,p2,p3,p4,p5)
4634 #define DRV_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)    APPL_TRACE_ERROR6(m,p1,p2,p3,p4,p5,p6)
4635
4636 /* Driver Trace macros
4637 */
4638 #define DRV_TRACE_DEBUG0(m)                    APPL_TRACE_DEBUG0(m)
4639 #define DRV_TRACE_DEBUG1(m,p1)                 APPL_TRACE_DEBUG1(m,p1)
4640 #define DRV_TRACE_DEBUG2(m,p1,p2)              APPL_TRACE_DEBUG2(m,p1,p2)
4641 #define DRV_TRACE_DEBUG3(m,p1,p2,p3)           APPL_TRACE_DEBUG3(m,p1,p2,p3)
4642 #define DRV_TRACE_DEBUG4(m,p1,p2,p3,p4)        APPL_TRACE_DEBUG4(m,p1,p2,p3,p4)
4643 #define DRV_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)     APPL_TRACE_DEBUG5(m,p1,p2,p3,p4,p5)
4644 #define DRV_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)  APPL_TRACE_DEBUG6(m,p1,p2,p3,p4,p5,p6)
4645
4646 /* Simplified Trace Helper Macro
4647 */
4648 #if (BT_USE_TRACES == TRUE)
4649 #define bdld(fmt, ...) \
4650     do{\
4651         if((MY_LOG_LEVEL) >= BT_TRACE_LEVEL_DEBUG) \
4652             LogMsg((MY_LOG_LAYER) | TRACE_TYPE_DEBUG, "%s(L%d): " fmt, __FUNCTION__, __LINE__,  ## __VA_ARGS__); \
4653     }while(0)
4654
4655 #define bdlw(fmt, ...) \
4656     do{\
4657         if((MY_LOG_LEVEL) >= BT_TRACE_LEVEL_DEBUG) \
4658             LogMsg((MY_LOG_LAYER) | TRACE_TYPE_WARNING, "%s(L%d): " fmt, __FUNCTION__, __LINE__,  ## __VA_ARGS__); \
4659     }while(0)
4660
4661 #define bdle(fmt, ...) \
4662     do{\
4663         if((MY_LOG_LEVEL) >= BT_TRACE_LEVEL_DEBUG) \
4664             LogMsg((MY_LOG_LAYER) | TRACE_TYPE_ERROR, "%s(L%d): " fmt, __FUNCTION__, __LINE__,  ## __VA_ARGS__); \
4665     }while(0)
4666
4667 #define bdla(assert_if) \
4668     do{\
4669         if(((MY_LOG_LEVEL) >= BT_TRACE_LEVEL_ERROR) && !(assert_if)) \
4670             LogMsg((MY_LOG_LAYER) | TRACE_TYPE_ERROR, "%s(L%d): assert failed: " #assert_if, __FUNCTION__, __LINE__); \
4671     }while(0)
4672 #else
4673 #define bdld(fmt, ...)  ((void)0) /*Empty statement as placeholder*/
4674 #define bdlw(fmt, ...)  ((void)0)
4675 #define bdle(fmt, ...)  ((void)0)
4676 #define bdla(assert_if) ((void)0)
4677 #endif
4678 #endif /* BT_TRACE_H */
4679
4680