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 #ifndef BT_TRACE_H 19 #define BT_TRACE_H 20 21 #ifdef __cplusplus 22 extern "C" { 23 #endif 24 25 /* External declaration for appl_trace_level here to avoid to add the 26 * declaration in all the files using APPL_TRACExxx macros */ 27 extern uint8_t appl_trace_level; 28 29 /* Prototype for message logging function. */ 30 extern void LogMsg(uint32_t trace_set_mask, const char* fmt_str, ...); 31 extern void LogMsg_0(uint32_t trace_set_mask, const char* p_str); 32 extern void LogMsg_1(uint32_t trace_set_mask, const char* fmt_str, 33 uintptr_t p1); 34 extern void LogMsg_2(uint32_t trace_set_mask, const char* fmt_str, uintptr_t p1, 35 uintptr_t p2); 36 extern void LogMsg_3(uint32_t trace_set_mask, const char* fmt_str, uintptr_t p1, 37 uintptr_t p2, uintptr_t p3); 38 extern void LogMsg_4(uint32_t trace_set_mask, const char* fmt_str, uintptr_t p1, 39 uintptr_t p2, uintptr_t p3, uintptr_t p4); 40 extern void LogMsg_5(uint32_t trace_set_mask, const char* fmt_str, uintptr_t p1, 41 uintptr_t p2, uintptr_t p3, uintptr_t p4, uintptr_t p5); 42 extern void LogMsg_6(uint32_t trace_set_mask, const char* fmt_str, uintptr_t p1, 43 uintptr_t p2, uintptr_t p3, uintptr_t p4, uintptr_t p5, 44 uintptr_t p6); 45 46 #ifdef __cplusplus 47 } 48 #endif 49 50 /****************************************************************************** 51 ** 52 ** Trace configurable parameters 53 ** 54 ******************************************************************************/ 55 56 /* Enables or disables verbose trace information. */ 57 #ifndef BT_TRACE_VERBOSE 58 #define BT_TRACE_VERBOSE FALSE 59 #endif 60 61 /* Enables or disables protocol trace information. */ 62 #ifndef BT_TRACE_PROTOCOL 63 #define BT_TRACE_PROTOCOL TRUE /* Android requires TRUE */ 64 #endif 65 66 /****************************************************************************** 67 ** 68 ** Trace Levels 69 ** 70 ** The following values may be used for different levels: 71 ** BT_TRACE_LEVEL_NONE 0 * No trace messages to be generated 72 ** BT_TRACE_LEVEL_ERROR 1 * Error condition trace messages 73 ** BT_TRACE_LEVEL_WARNING 2 * Warning condition trace messages 74 ** BT_TRACE_LEVEL_API 3 * API traces 75 ** BT_TRACE_LEVEL_EVENT 4 * Debug messages for events 76 ** BT_TRACE_LEVEL_DEBUG 5 * Debug messages (general) 77 ******************************************************************************/ 78 79 /* Core Stack default trace levels */ 80 #ifndef HCI_INITIAL_TRACE_LEVEL 81 #define HCI_INITIAL_TRACE_LEVEL BT_TRACE_LEVEL_DEBUG 82 #endif 83 84 #ifndef LLCP_INITIAL_TRACE_LEVEL 85 #define LLCP_INITIAL_TRACE_LEVEL BT_TRACE_LEVEL_DEBUG 86 #endif 87 88 #ifndef APPL_INITIAL_TRACE_LEVEL 89 #define APPL_INITIAL_TRACE_LEVEL BT_TRACE_LEVEL_DEBUG 90 #endif 91 92 #ifndef NFC_INITIAL_TRACE_LEVEL 93 #define NFC_INITIAL_TRACE_LEVEL BT_TRACE_LEVEL_DEBUG 94 #endif 95 96 #ifndef SMP_INITIAL_TRACE_LEVEL 97 #define SMP_INITIAL_TRACE_LEVEL BT_TRACE_LEVEL_DEBUG 98 #endif 99 100 #define BT_TRACE_0(l, t, m) \ 101 LogMsg_0((TRACE_CTRL_GENERAL | (l) | TRACE_ORG_STACK | (t)), (m)) 102 #define BT_TRACE_1(l, t, m, p1) \ 103 LogMsg_1(TRACE_CTRL_GENERAL | (l) | TRACE_ORG_STACK | (t), (m), \ 104 (uintptr_t)(p1)) 105 #define BT_TRACE_2(l, t, m, p1, p2) \ 106 LogMsg_2(TRACE_CTRL_GENERAL | (l) | TRACE_ORG_STACK | (t), (m), \ 107 (uintptr_t)(p1), (uintptr_t)(p2)) 108 #define BT_TRACE_3(l, t, m, p1, p2, p3) \ 109 LogMsg_3(TRACE_CTRL_GENERAL | (l) | TRACE_ORG_STACK | (t), (m), \ 110 (uintptr_t)(p1), (uintptr_t)(p2), (uintptr_t)(p3)) 111 #define BT_TRACE_4(l, t, m, p1, p2, p3, p4) \ 112 LogMsg_4(TRACE_CTRL_GENERAL | (l) | TRACE_ORG_STACK | (t), (m), \ 113 (uintptr_t)(p1), (uintptr_t)(p2), (uintptr_t)(p3), (uintptr_t)(p4)) 114 #define BT_TRACE_5(l, t, m, p1, p2, p3, p4, p5) \ 115 LogMsg_5(TRACE_CTRL_GENERAL | (l) | TRACE_ORG_STACK | (t), (m), \ 116 (uintptr_t)(p1), (uintptr_t)(p2), (uintptr_t)(p3), (uintptr_t)(p4), \ 117 (uintptr_t)(p5)) 118 #define BT_TRACE_6(l, t, m, p1, p2, p3, p4, p5, p6) \ 119 LogMsg_6(TRACE_CTRL_GENERAL | (l) | TRACE_ORG_STACK | (t), (m), \ 120 (uintptr_t)(p1), (uintptr_t)(p2), (uintptr_t)(p3), (uintptr_t)(p4), \ 121 (uintptr_t)(p5), (uintptr_t)(p6)) 122 123 #define BT_ERROR_TRACE_0(l, m) \ 124 LogMsg_0(TRACE_CTRL_GENERAL | (l) | TRACE_ORG_STACK | TRACE_TYPE_ERROR, (m)) 125 #define BT_ERROR_TRACE_1(l, m, p1) \ 126 LogMsg_1(TRACE_CTRL_GENERAL | (l) | TRACE_ORG_STACK | TRACE_TYPE_ERROR, (m), \ 127 (uintptr_t)(p1)) 128 #define BT_ERROR_TRACE_2(l, m, p1, p2) \ 129 LogMsg_2(TRACE_CTRL_GENERAL | (l) | TRACE_ORG_STACK | TRACE_TYPE_ERROR, (m), \ 130 (uintptr_t)(p1), (uintptr_t)(p2)) 131 #define BT_ERROR_TRACE_3(l, m, p1, p2, p3) \ 132 LogMsg_3(TRACE_CTRL_GENERAL | (l) | TRACE_ORG_STACK | TRACE_TYPE_ERROR, (m), \ 133 (uintptr_t)(p1), (uintptr_t)(p2), (uintptr_t)(p3)) 134 135 /* Define tracing for the LLCP unit 136 */ 137 #define LLCP_TRACE_ERROR0(m) \ 138 { \ 139 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 140 BT_TRACE_0(TRACE_LAYER_LLCP, TRACE_TYPE_ERROR, m); \ 141 } 142 #define LLCP_TRACE_ERROR1(m, p1) \ 143 { \ 144 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 145 BT_TRACE_1(TRACE_LAYER_LLCP, TRACE_TYPE_ERROR, m, p1); \ 146 } 147 #define LLCP_TRACE_ERROR2(m, p1, p2) \ 148 { \ 149 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 150 BT_TRACE_2(TRACE_LAYER_LLCP, TRACE_TYPE_ERROR, m, p1, p2); \ 151 } 152 #define LLCP_TRACE_ERROR3(m, p1, p2, p3) \ 153 { \ 154 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 155 BT_TRACE_3(TRACE_LAYER_LLCP, TRACE_TYPE_ERROR, m, p1, p2, p3); \ 156 } 157 #define LLCP_TRACE_ERROR4(m, p1, p2, p3, p4) \ 158 { \ 159 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 160 BT_TRACE_4(TRACE_LAYER_LLCP, TRACE_TYPE_ERROR, m, p1, p2, p3, p4); \ 161 } 162 #define LLCP_TRACE_ERROR5(m, p1, p2, p3, p4, p5) \ 163 { \ 164 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 165 BT_TRACE_5(TRACE_LAYER_LLCP, TRACE_TYPE_ERROR, m, p1, p2, p3, p4, p5); \ 166 } 167 #define LLCP_TRACE_ERROR6(m, p1, p2, p3, p4, p5, p6) \ 168 { \ 169 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 170 BT_TRACE_6(TRACE_LAYER_LLCP, TRACE_TYPE_ERROR, m, p1, p2, p3, p4, p5, \ 171 p6); \ 172 } 173 174 #define LLCP_TRACE_WARNING0(m) \ 175 { \ 176 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 177 BT_TRACE_0(TRACE_LAYER_LLCP, TRACE_TYPE_WARNING, m); \ 178 } 179 #define LLCP_TRACE_WARNING1(m, p1) \ 180 { \ 181 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 182 BT_TRACE_1(TRACE_LAYER_LLCP, TRACE_TYPE_WARNING, m, p1); \ 183 } 184 #define LLCP_TRACE_WARNING2(m, p1, p2) \ 185 { \ 186 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 187 BT_TRACE_2(TRACE_LAYER_LLCP, TRACE_TYPE_WARNING, m, p1, p2); \ 188 } 189 #define LLCP_TRACE_WARNING3(m, p1, p2, p3) \ 190 { \ 191 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 192 BT_TRACE_3(TRACE_LAYER_LLCP, TRACE_TYPE_WARNING, m, p1, p2, p3); \ 193 } 194 #define LLCP_TRACE_WARNING4(m, p1, p2, p3, p4) \ 195 { \ 196 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 197 BT_TRACE_4(TRACE_LAYER_LLCP, TRACE_TYPE_WARNING, m, p1, p2, p3, p4); \ 198 } 199 #define LLCP_TRACE_WARNING5(m, p1, p2, p3, p4, p5) \ 200 { \ 201 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 202 BT_TRACE_5(TRACE_LAYER_LLCP, TRACE_TYPE_WARNING, m, p1, p2, p3, p4, p5); \ 203 } 204 #define LLCP_TRACE_WARNING6(m, p1, p2, p3, p4, p5, p6) \ 205 { \ 206 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 207 BT_TRACE_6(TRACE_LAYER_LLCP, TRACE_TYPE_WARNING, m, p1, p2, p3, p4, p5, \ 208 p6); \ 209 } 210 211 #define LLCP_TRACE_API0(m) \ 212 { \ 213 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_API) \ 214 BT_TRACE_0(TRACE_LAYER_LLCP, TRACE_TYPE_API, m); \ 215 } 216 #define LLCP_TRACE_API1(m, p1) \ 217 { \ 218 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_API) \ 219 BT_TRACE_1(TRACE_LAYER_LLCP, TRACE_TYPE_API, m, p1); \ 220 } 221 #define LLCP_TRACE_API2(m, p1, p2) \ 222 { \ 223 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_API) \ 224 BT_TRACE_2(TRACE_LAYER_LLCP, TRACE_TYPE_API, m, p1, p2); \ 225 } 226 #define LLCP_TRACE_API3(m, p1, p2, p3) \ 227 { \ 228 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_API) \ 229 BT_TRACE_3(TRACE_LAYER_LLCP, TRACE_TYPE_API, m, p1, p2, p3); \ 230 } 231 #define LLCP_TRACE_API4(m, p1, p2, p3, p4) \ 232 { \ 233 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_API) \ 234 BT_TRACE_4(TRACE_LAYER_LLCP, TRACE_TYPE_API, m, p1, p2, p3, p4); \ 235 } 236 #define LLCP_TRACE_API5(m, p1, p2, p3, p4, p5) \ 237 { \ 238 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_API) \ 239 BT_TRACE_5(TRACE_LAYER_LLCP, TRACE_TYPE_API, m, p1, p2, p3, p4, p5); \ 240 } 241 #define LLCP_TRACE_API6(m, p1, p2, p3, p4, p5, p6) \ 242 { \ 243 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_API) \ 244 BT_TRACE_6(TRACE_LAYER_LLCP, TRACE_TYPE_API, m, p1, p2, p3, p4, p5, p6); \ 245 } 246 247 #define LLCP_TRACE_EVENT0(m) \ 248 { \ 249 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 250 BT_TRACE_0(TRACE_LAYER_LLCP, TRACE_TYPE_EVENT, m); \ 251 } 252 #define LLCP_TRACE_EVENT1(m, p1) \ 253 { \ 254 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 255 BT_TRACE_1(TRACE_LAYER_LLCP, TRACE_TYPE_EVENT, m, p1); \ 256 } 257 #define LLCP_TRACE_EVENT2(m, p1, p2) \ 258 { \ 259 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 260 BT_TRACE_2(TRACE_LAYER_LLCP, TRACE_TYPE_EVENT, m, p1, p2); \ 261 } 262 #define LLCP_TRACE_EVENT3(m, p1, p2, p3) \ 263 { \ 264 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 265 BT_TRACE_3(TRACE_LAYER_LLCP, TRACE_TYPE_EVENT, m, p1, p2, p3); \ 266 } 267 #define LLCP_TRACE_EVENT4(m, p1, p2, p3, p4) \ 268 { \ 269 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 270 BT_TRACE_4(TRACE_LAYER_LLCP, TRACE_TYPE_EVENT, m, p1, p2, p3, p4); \ 271 } 272 #define LLCP_TRACE_EVENT5(m, p1, p2, p3, p4, p5) \ 273 { \ 274 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 275 BT_TRACE_5(TRACE_LAYER_LLCP, TRACE_TYPE_EVENT, m, p1, p2, p3, p4, p5); \ 276 } 277 #define LLCP_TRACE_EVENT6(m, p1, p2, p3, p4, p5, p6) \ 278 { \ 279 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 280 BT_TRACE_6(TRACE_LAYER_LLCP, TRACE_TYPE_EVENT, m, p1, p2, p3, p4, p5, \ 281 p6); \ 282 } 283 284 #define LLCP_TRACE_DEBUG0(m) \ 285 { \ 286 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 287 BT_TRACE_0(TRACE_LAYER_LLCP, TRACE_TYPE_DEBUG, m); \ 288 } 289 #define LLCP_TRACE_DEBUG1(m, p1) \ 290 { \ 291 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 292 BT_TRACE_1(TRACE_LAYER_LLCP, TRACE_TYPE_DEBUG, m, p1); \ 293 } 294 #define LLCP_TRACE_DEBUG2(m, p1, p2) \ 295 { \ 296 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 297 BT_TRACE_2(TRACE_LAYER_LLCP, TRACE_TYPE_DEBUG, m, p1, p2); \ 298 } 299 #define LLCP_TRACE_DEBUG3(m, p1, p2, p3) \ 300 { \ 301 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 302 BT_TRACE_3(TRACE_LAYER_LLCP, TRACE_TYPE_DEBUG, m, p1, p2, p3); \ 303 } 304 #define LLCP_TRACE_DEBUG4(m, p1, p2, p3, p4) \ 305 { \ 306 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 307 BT_TRACE_4(TRACE_LAYER_LLCP, TRACE_TYPE_DEBUG, m, p1, p2, p3, p4); \ 308 } 309 #define LLCP_TRACE_DEBUG5(m, p1, p2, p3, p4, p5) \ 310 { \ 311 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 312 BT_TRACE_5(TRACE_LAYER_LLCP, TRACE_TYPE_DEBUG, m, p1, p2, p3, p4, p5); \ 313 } 314 #define LLCP_TRACE_DEBUG6(m, p1, p2, p3, p4, p5, p6) \ 315 { \ 316 if (llcp_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 317 BT_TRACE_6(TRACE_LAYER_LLCP, TRACE_TYPE_DEBUG, m, p1, p2, p3, p4, p5, \ 318 p6); \ 319 } 320 321 /* Define tracing for the NFC unit 322 */ 323 #define NFC_TRACE_ERROR0(m) \ 324 { \ 325 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 326 BT_TRACE_0(TRACE_LAYER_NFC, TRACE_TYPE_ERROR, m); \ 327 } 328 #define NFC_TRACE_ERROR1(m, p1) \ 329 { \ 330 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 331 BT_TRACE_1(TRACE_LAYER_NFC, TRACE_TYPE_ERROR, m, p1); \ 332 } 333 #define NFC_TRACE_ERROR2(m, p1, p2) \ 334 { \ 335 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 336 BT_TRACE_2(TRACE_LAYER_NFC, TRACE_TYPE_ERROR, m, p1, p2); \ 337 } 338 #define NFC_TRACE_ERROR3(m, p1, p2, p3) \ 339 { \ 340 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 341 BT_TRACE_3(TRACE_LAYER_NFC, TRACE_TYPE_ERROR, m, p1, p2, p3); \ 342 } 343 #define NFC_TRACE_ERROR4(m, p1, p2, p3, p4) \ 344 { \ 345 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 346 BT_TRACE_4(TRACE_LAYER_NFC, TRACE_TYPE_ERROR, m, p1, p2, p3, p4); \ 347 } 348 #define NFC_TRACE_ERROR5(m, p1, p2, p3, p4, p5) \ 349 { \ 350 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 351 BT_TRACE_5(TRACE_LAYER_NFC, TRACE_TYPE_ERROR, m, p1, p2, p3, p4, p5); \ 352 } 353 #define NFC_TRACE_ERROR6(m, p1, p2, p3, p4, p5, p6) \ 354 { \ 355 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 356 BT_TRACE_6(TRACE_LAYER_NFC, TRACE_TYPE_ERROR, m, p1, p2, p3, p4, p5, \ 357 p6); \ 358 } 359 360 #define NFC_TRACE_WARNING0(m) \ 361 { \ 362 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 363 BT_TRACE_0(TRACE_LAYER_NFC, TRACE_TYPE_WARNING, m); \ 364 } 365 #define NFC_TRACE_WARNING1(m, p1) \ 366 { \ 367 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 368 BT_TRACE_1(TRACE_LAYER_NFC, TRACE_TYPE_WARNING, m, p1); \ 369 } 370 #define NFC_TRACE_WARNING2(m, p1, p2) \ 371 { \ 372 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 373 BT_TRACE_2(TRACE_LAYER_NFC, TRACE_TYPE_WARNING, m, p1, p2); \ 374 } 375 #define NFC_TRACE_WARNING3(m, p1, p2, p3) \ 376 { \ 377 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 378 BT_TRACE_3(TRACE_LAYER_NFC, TRACE_TYPE_WARNING, m, p1, p2, p3); \ 379 } 380 #define NFC_TRACE_WARNING4(m, p1, p2, p3, p4) \ 381 { \ 382 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 383 BT_TRACE_4(TRACE_LAYER_NFC, TRACE_TYPE_WARNING, m, p1, p2, p3, p4); \ 384 } 385 #define NFC_TRACE_WARNING5(m, p1, p2, p3, p4, p5) \ 386 { \ 387 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 388 BT_TRACE_5(TRACE_LAYER_NFC, TRACE_TYPE_WARNING, m, p1, p2, p3, p4, p5); \ 389 } 390 #define NFC_TRACE_WARNING6(m, p1, p2, p3, p4, p5, p6) \ 391 { \ 392 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 393 BT_TRACE_6(TRACE_LAYER_NFC, TRACE_TYPE_WARNING, m, p1, p2, p3, p4, p5, \ 394 p6); \ 395 } 396 397 #define NFC_TRACE_API0(m) \ 398 { \ 399 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_API) \ 400 BT_TRACE_0(TRACE_LAYER_NFC, TRACE_TYPE_API, m); \ 401 } 402 #define NFC_TRACE_API1(m, p1) \ 403 { \ 404 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_API) \ 405 BT_TRACE_1(TRACE_LAYER_NFC, TRACE_TYPE_API, m, p1); \ 406 } 407 #define NFC_TRACE_API2(m, p1, p2) \ 408 { \ 409 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_API) \ 410 BT_TRACE_2(TRACE_LAYER_NFC, TRACE_TYPE_API, m, p1, p2); \ 411 } 412 #define NFC_TRACE_API3(m, p1, p2, p3) \ 413 { \ 414 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_API) \ 415 BT_TRACE_3(TRACE_LAYER_NFC, TRACE_TYPE_API, m, p1, p2, p3); \ 416 } 417 #define NFC_TRACE_API4(m, p1, p2, p3, p4) \ 418 { \ 419 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_API) \ 420 BT_TRACE_4(TRACE_LAYER_NFC, TRACE_TYPE_API, m, p1, p2, p3, p4); \ 421 } 422 #define NFC_TRACE_API5(m, p1, p2, p3, p4, p5) \ 423 { \ 424 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_API) \ 425 BT_TRACE_5(TRACE_LAYER_NFC, TRACE_TYPE_API, m, p1, p2, p3, p4, p5); \ 426 } 427 #define NFC_TRACE_API6(m, p1, p2, p3, p4, p5, p6) \ 428 { \ 429 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_API) \ 430 BT_TRACE_6(TRACE_LAYER_NFC, TRACE_TYPE_API, m, p1, p2, p3, p4, p5, p6); \ 431 } 432 433 #define NFC_TRACE_EVENT0(m) \ 434 { \ 435 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 436 BT_TRACE_0(TRACE_LAYER_NFC, TRACE_TYPE_EVENT, m); \ 437 } 438 #define NFC_TRACE_EVENT1(m, p1) \ 439 { \ 440 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 441 BT_TRACE_1(TRACE_LAYER_NFC, TRACE_TYPE_EVENT, m, p1); \ 442 } 443 #define NFC_TRACE_EVENT2(m, p1, p2) \ 444 { \ 445 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 446 BT_TRACE_2(TRACE_LAYER_NFC, TRACE_TYPE_EVENT, m, p1, p2); \ 447 } 448 #define NFC_TRACE_EVENT3(m, p1, p2, p3) \ 449 { \ 450 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 451 BT_TRACE_3(TRACE_LAYER_NFC, TRACE_TYPE_EVENT, m, p1, p2, p3); \ 452 } 453 #define NFC_TRACE_EVENT4(m, p1, p2, p3, p4) \ 454 { \ 455 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 456 BT_TRACE_4(TRACE_LAYER_NFC, TRACE_TYPE_EVENT, m, p1, p2, p3, p4); \ 457 } 458 #define NFC_TRACE_EVENT5(m, p1, p2, p3, p4, p5) \ 459 { \ 460 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 461 BT_TRACE_5(TRACE_LAYER_NFC, TRACE_TYPE_EVENT, m, p1, p2, p3, p4, p5); \ 462 } 463 #define NFC_TRACE_EVENT6(m, p1, p2, p3, p4, p5, p6) \ 464 { \ 465 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 466 BT_TRACE_6(TRACE_LAYER_NFC, TRACE_TYPE_EVENT, m, p1, p2, p3, p4, p5, \ 467 p6); \ 468 } 469 470 #define NFC_TRACE_DEBUG0(m) \ 471 { \ 472 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 473 BT_TRACE_0(TRACE_LAYER_NFC, TRACE_TYPE_DEBUG, m); \ 474 } 475 #define NFC_TRACE_DEBUG1(m, p1) \ 476 { \ 477 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 478 BT_TRACE_1(TRACE_LAYER_NFC, TRACE_TYPE_DEBUG, m, p1); \ 479 } 480 #define NFC_TRACE_DEBUG2(m, p1, p2) \ 481 { \ 482 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 483 BT_TRACE_2(TRACE_LAYER_NFC, TRACE_TYPE_DEBUG, m, p1, p2); \ 484 } 485 #define NFC_TRACE_DEBUG3(m, p1, p2, p3) \ 486 { \ 487 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 488 BT_TRACE_3(TRACE_LAYER_NFC, TRACE_TYPE_DEBUG, m, p1, p2, p3); \ 489 } 490 #define NFC_TRACE_DEBUG4(m, p1, p2, p3, p4) \ 491 { \ 492 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 493 BT_TRACE_4(TRACE_LAYER_NFC, TRACE_TYPE_DEBUG, m, p1, p2, p3, p4); \ 494 } 495 #define NFC_TRACE_DEBUG5(m, p1, p2, p3, p4, p5) \ 496 { \ 497 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 498 BT_TRACE_5(TRACE_LAYER_NFC, TRACE_TYPE_DEBUG, m, p1, p2, p3, p4, p5); \ 499 } 500 #define NFC_TRACE_DEBUG6(m, p1, p2, p3, p4, p5, p6) \ 501 { \ 502 if (nfc_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 503 BT_TRACE_6(TRACE_LAYER_NFC, TRACE_TYPE_DEBUG, m, p1, p2, p3, p4, p5, \ 504 p6); \ 505 } 506 507 #define NCI_TRACE_ERROR0(m) \ 508 { \ 509 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 510 BT_TRACE_0(TRACE_LAYER_NCI, TRACE_TYPE_ERROR, m); \ 511 } 512 #define NCI_TRACE_ERROR1(m, p1) \ 513 { \ 514 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 515 BT_TRACE_1(TRACE_LAYER_NCI, TRACE_TYPE_ERROR, m, p1); \ 516 } 517 #define NCI_TRACE_ERROR2(m, p1, p2) \ 518 { \ 519 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 520 BT_TRACE_2(TRACE_LAYER_NCI, TRACE_TYPE_ERROR, m, p1, p2); \ 521 } 522 #define NCI_TRACE_ERROR3(m, p1, p2, p3) \ 523 { \ 524 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 525 BT_TRACE_3(TRACE_LAYER_NCI, TRACE_TYPE_ERROR, m, p1, p2, p3); \ 526 } 527 #define NCI_TRACE_ERROR4(m, p1, p2, p3, p4) \ 528 { \ 529 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 530 BT_TRACE_4(TRACE_LAYER_NCI, TRACE_TYPE_ERROR, m, p1, p2, p3, p4); \ 531 } 532 #define NCI_TRACE_ERROR5(m, p1, p2, p3, p4, p5) \ 533 { \ 534 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 535 BT_TRACE_5(TRACE_LAYER_NCI, TRACE_TYPE_ERROR, m, p1, p2, p3, p4, p5); \ 536 } 537 #define NCI_TRACE_ERROR6(m, p1, p2, p3, p4, p5, p6) \ 538 { \ 539 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 540 BT_TRACE_6(TRACE_LAYER_NCI, TRACE_TYPE_ERROR, m, p1, p2, p3, p4, p5, \ 541 p6); \ 542 } 543 544 #define NCI_TRACE_WARNING0(m) \ 545 { \ 546 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 547 BT_TRACE_0(TRACE_LAYER_NCI, TRACE_TYPE_WARNING, m); \ 548 } 549 #define NCI_TRACE_WARNING1(m, p1) \ 550 { \ 551 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 552 BT_TRACE_1(TRACE_LAYER_NCI, TRACE_TYPE_WARNING, m, p1); \ 553 } 554 #define NCI_TRACE_WARNING2(m, p1, p2) \ 555 { \ 556 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 557 BT_TRACE_2(TRACE_LAYER_NCI, TRACE_TYPE_WARNING, m, p1, p2); \ 558 } 559 #define NCI_TRACE_WARNING3(m, p1, p2, p3) \ 560 { \ 561 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 562 BT_TRACE_3(TRACE_LAYER_NCI, TRACE_TYPE_WARNING, m, p1, p2, p3); \ 563 } 564 #define NCI_TRACE_WARNING4(m, p1, p2, p3, p4) \ 565 { \ 566 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 567 BT_TRACE_4(TRACE_LAYER_NCI, TRACE_TYPE_WARNING, m, p1, p2, p3, p4); \ 568 } 569 #define NCI_TRACE_WARNING5(m, p1, p2, p3, p4, p5) \ 570 { \ 571 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 572 BT_TRACE_5(TRACE_LAYER_NCI, TRACE_TYPE_WARNING, m, p1, p2, p3, p4, p5); \ 573 } 574 #define NCI_TRACE_WARNING6(m, p1, p2, p3, p4, p5, p6) \ 575 { \ 576 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 577 BT_TRACE_6(TRACE_LAYER_NCI, TRACE_TYPE_WARNING, m, p1, p2, p3, p4, p5, \ 578 p6); \ 579 } 580 581 #define NCI_TRACE_API0(m) \ 582 { \ 583 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_API) \ 584 BT_TRACE_0(TRACE_LAYER_NCI, TRACE_TYPE_API, m); \ 585 } 586 #define NCI_TRACE_API1(m, p1) \ 587 { \ 588 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_API) \ 589 BT_TRACE_1(TRACE_LAYER_NCI, TRACE_TYPE_API, m, p1); \ 590 } 591 #define NCI_TRACE_API2(m, p1, p2) \ 592 { \ 593 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_API) \ 594 BT_TRACE_2(TRACE_LAYER_NCI, TRACE_TYPE_API, m, p1, p2); \ 595 } 596 #define NCI_TRACE_API3(m, p1, p2, p3) \ 597 { \ 598 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_API) \ 599 BT_TRACE_3(TRACE_LAYER_NCI, TRACE_TYPE_API, m, p1, p2, p3); \ 600 } 601 #define NCI_TRACE_API4(m, p1, p2, p3, p4) \ 602 { \ 603 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_API) \ 604 BT_TRACE_4(TRACE_LAYER_NCI, TRACE_TYPE_API, m, p1, p2, p3, p4); \ 605 } 606 #define NCI_TRACE_API5(m, p1, p2, p3, p4, p5) \ 607 { \ 608 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_API) \ 609 BT_TRACE_5(TRACE_LAYER_NCI, TRACE_TYPE_API, m, p1, p2, p3, p4, p5); \ 610 } 611 #define NCI_TRACE_API6(m, p1, p2, p3, p4, p5, p6) \ 612 { \ 613 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_API) \ 614 BT_TRACE_6(TRACE_LAYER_NCI, TRACE_TYPE_API, m, p1, p2, p3, p4, p5, p6); \ 615 } 616 617 #define NCI_TRACE_EVENT0(m) \ 618 { \ 619 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 620 BT_TRACE_0(TRACE_LAYER_NCI, TRACE_TYPE_EVENT, m); \ 621 } 622 #define NCI_TRACE_EVENT1(m, p1) \ 623 { \ 624 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 625 BT_TRACE_1(TRACE_LAYER_NCI, TRACE_TYPE_EVENT, m, p1); \ 626 } 627 #define NCI_TRACE_EVENT2(m, p1, p2) \ 628 { \ 629 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 630 BT_TRACE_2(TRACE_LAYER_NCI, TRACE_TYPE_EVENT, m, p1, p2); \ 631 } 632 #define NCI_TRACE_EVENT3(m, p1, p2, p3) \ 633 { \ 634 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 635 BT_TRACE_3(TRACE_LAYER_NCI, TRACE_TYPE_EVENT, m, p1, p2, p3); \ 636 } 637 #define NCI_TRACE_EVENT4(m, p1, p2, p3, p4) \ 638 { \ 639 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 640 BT_TRACE_4(TRACE_LAYER_NCI, TRACE_TYPE_EVENT, m, p1, p2, p3, p4); \ 641 } 642 #define NCI_TRACE_EVENT5(m, p1, p2, p3, p4, p5) \ 643 { \ 644 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 645 BT_TRACE_5(TRACE_LAYER_NCI, TRACE_TYPE_EVENT, m, p1, p2, p3, p4, p5); \ 646 } 647 #define NCI_TRACE_EVENT6(m, p1, p2, p3, p4, p5, p6) \ 648 { \ 649 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 650 BT_TRACE_6(TRACE_LAYER_NCI, TRACE_TYPE_EVENT, m, p1, p2, p3, p4, p5, \ 651 p6); \ 652 } 653 654 #define NCI_TRACE_DEBUG0(m) \ 655 { \ 656 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 657 BT_TRACE_0(TRACE_LAYER_NCI, TRACE_TYPE_DEBUG, m); \ 658 } 659 #define NCI_TRACE_DEBUG1(m, p1) \ 660 { \ 661 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 662 BT_TRACE_1(TRACE_LAYER_NCI, TRACE_TYPE_DEBUG, m, p1); \ 663 } 664 #define NCI_TRACE_DEBUG2(m, p1, p2) \ 665 { \ 666 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 667 BT_TRACE_2(TRACE_LAYER_NCI, TRACE_TYPE_DEBUG, m, p1, p2); \ 668 } 669 #define NCI_TRACE_DEBUG3(m, p1, p2, p3) \ 670 { \ 671 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 672 BT_TRACE_3(TRACE_LAYER_NCI, TRACE_TYPE_DEBUG, m, p1, p2, p3); \ 673 } 674 #define NCI_TRACE_DEBUG4(m, p1, p2, p3, p4) \ 675 { \ 676 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 677 BT_TRACE_4(TRACE_LAYER_NCI, TRACE_TYPE_DEBUG, m, p1, p2, p3, p4); \ 678 } 679 #define NCI_TRACE_DEBUG5(m, p1, p2, p3, p4, p5) \ 680 { \ 681 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 682 BT_TRACE_5(TRACE_LAYER_NCI, TRACE_TYPE_DEBUG, m, p1, p2, p3, p4, p5); \ 683 } 684 #define NCI_TRACE_DEBUG6(m, p1, p2, p3, p4, p5, p6) \ 685 { \ 686 if (ncit_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 687 BT_TRACE_6(TRACE_LAYER_NCI, TRACE_TYPE_DEBUG, m, p1, p2, p3, p4, p5, \ 688 p6); \ 689 } 690 691 #define RW_TRACE_ERROR0(m) \ 692 { \ 693 if (rw_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 694 BT_TRACE_0(TRACE_LAYER_RW, TRACE_TYPE_ERROR, m); \ 695 } 696 #define RW_TRACE_ERROR1(m, p1) \ 697 { \ 698 if (rw_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 699 BT_TRACE_1(TRACE_LAYER_RW, TRACE_TYPE_ERROR, m, p1); \ 700 } 701 #define RW_TRACE_ERROR2(m, p1, p2) \ 702 { \ 703 if (rw_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 704 BT_TRACE_2(TRACE_LAYER_RW, TRACE_TYPE_ERROR, m, p1, p2); \ 705 } 706 #define RW_TRACE_ERROR3(m, p1, p2, p3) \ 707 { \ 708 if (rw_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 709 BT_TRACE_3(TRACE_LAYER_RW, TRACE_TYPE_ERROR, m, p1, p2, p3); \ 710 } 711 #define RW_TRACE_ERROR4(m, p1, p2, p3, p4) \ 712 { \ 713 if (rw_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 714 BT_TRACE_4(TRACE_LAYER_RW, TRACE_TYPE_ERROR, m, p1, p2, p3, p4); \ 715 } 716 #define RW_TRACE_ERROR5(m, p1, p2, p3, p4, p5) \ 717 { \ 718 if (rw_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 719 BT_TRACE_5(TRACE_LAYER_RW, TRACE_TYPE_ERROR, m, p1, p2, p3, p4, p5); \ 720 } 721 #define RW_TRACE_ERROR6(m, p1, p2, p3, p4, p5, p6) \ 722 { \ 723 if (rw_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 724 BT_TRACE_6(TRACE_LAYER_RW, TRACE_TYPE_ERROR, m, p1, p2, p3, p4, p5, p6); \ 725 } 726 727 #define RW_TRACE_WARNING0(m) \ 728 { \ 729 if (rw_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 730 BT_TRACE_0(TRACE_LAYER_RW, TRACE_TYPE_WARNING, m); \ 731 } 732 #define RW_TRACE_WARNING1(m, p1) \ 733 { \ 734 if (rw_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 735 BT_TRACE_1(TRACE_LAYER_RW, TRACE_TYPE_WARNING, m, p1); \ 736 } 737 #define RW_TRACE_WARNING2(m, p1, p2) \ 738 { \ 739 if (rw_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 740 BT_TRACE_2(TRACE_LAYER_RW, TRACE_TYPE_WARNING, m, p1, p2); \ 741 } 742 #define RW_TRACE_WARNING3(m, p1, p2, p3) \ 743 { \ 744 if (rw_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 745 BT_TRACE_3(TRACE_LAYER_RW, TRACE_TYPE_WARNING, m, p1, p2, p3); \ 746 } 747 #define RW_TRACE_WARNING4(m, p1, p2, p3, p4) \ 748 { \ 749 if (rw_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 750 BT_TRACE_4(TRACE_LAYER_RW, TRACE_TYPE_WARNING, m, p1, p2, p3, p4); \ 751 } 752 #define RW_TRACE_WARNING5(m, p1, p2, p3, p4, p5) \ 753 { \ 754 if (rw_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 755 BT_TRACE_5(TRACE_LAYER_RW, TRACE_TYPE_WARNING, m, p1, p2, p3, p4, p5); \ 756 } 757 #define RW_TRACE_WARNING6(m, p1, p2, p3, p4, p5, p6) \ 758 { \ 759 if (rw_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 760 BT_TRACE_6(TRACE_LAYER_RW, TRACE_TYPE_WARNING, m, p1, p2, p3, p4, p5, \ 761 p6); \ 762 } 763 764 #define RW_TRACE_API0(m) \ 765 { \ 766 if (rw_cb.trace_level >= BT_TRACE_LEVEL_API) \ 767 BT_TRACE_0(TRACE_LAYER_RW, TRACE_TYPE_API, m); \ 768 } 769 #define RW_TRACE_API1(m, p1) \ 770 { \ 771 if (rw_cb.trace_level >= BT_TRACE_LEVEL_API) \ 772 BT_TRACE_1(TRACE_LAYER_RW, TRACE_TYPE_API, m, p1); \ 773 } 774 #define RW_TRACE_API2(m, p1, p2) \ 775 { \ 776 if (rw_cb.trace_level >= BT_TRACE_LEVEL_API) \ 777 BT_TRACE_2(TRACE_LAYER_RW, TRACE_TYPE_API, m, p1, p2); \ 778 } 779 #define RW_TRACE_API3(m, p1, p2, p3) \ 780 { \ 781 if (rw_cb.trace_level >= BT_TRACE_LEVEL_API) \ 782 BT_TRACE_3(TRACE_LAYER_RW, TRACE_TYPE_API, m, p1, p2, p3); \ 783 } 784 #define RW_TRACE_API4(m, p1, p2, p3, p4) \ 785 { \ 786 if (rw_cb.trace_level >= BT_TRACE_LEVEL_API) \ 787 BT_TRACE_4(TRACE_LAYER_RW, TRACE_TYPE_API, m, p1, p2, p3, p4); \ 788 } 789 #define RW_TRACE_API5(m, p1, p2, p3, p4, p5) \ 790 { \ 791 if (rw_cb.trace_level >= BT_TRACE_LEVEL_API) \ 792 BT_TRACE_5(TRACE_LAYER_RW, TRACE_TYPE_API, m, p1, p2, p3, p4, p5); \ 793 } 794 #define RW_TRACE_API6(m, p1, p2, p3, p4, p5, p6) \ 795 { \ 796 if (rw_cb.trace_level >= BT_TRACE_LEVEL_API) \ 797 BT_TRACE_6(TRACE_LAYER_RW, TRACE_TYPE_API, m, p1, p2, p3, p4, p5, p6); \ 798 } 799 800 #define RW_TRACE_EVENT0(m) \ 801 { \ 802 if (rw_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 803 BT_TRACE_0(TRACE_LAYER_RW, TRACE_TYPE_EVENT, m); \ 804 } 805 #define RW_TRACE_EVENT1(m, p1) \ 806 { \ 807 if (rw_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 808 BT_TRACE_1(TRACE_LAYER_RW, TRACE_TYPE_EVENT, m, p1); \ 809 } 810 #define RW_TRACE_EVENT2(m, p1, p2) \ 811 { \ 812 if (rw_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 813 BT_TRACE_2(TRACE_LAYER_RW, TRACE_TYPE_EVENT, m, p1, p2); \ 814 } 815 #define RW_TRACE_EVENT3(m, p1, p2, p3) \ 816 { \ 817 if (rw_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 818 BT_TRACE_3(TRACE_LAYER_RW, TRACE_TYPE_EVENT, m, p1, p2, p3); \ 819 } 820 #define RW_TRACE_EVENT4(m, p1, p2, p3, p4) \ 821 { \ 822 if (rw_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 823 BT_TRACE_4(TRACE_LAYER_RW, TRACE_TYPE_EVENT, m, p1, p2, p3, p4); \ 824 } 825 #define RW_TRACE_EVENT5(m, p1, p2, p3, p4, p5) \ 826 { \ 827 if (rw_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 828 BT_TRACE_5(TRACE_LAYER_RW, TRACE_TYPE_EVENT, m, p1, p2, p3, p4, p5); \ 829 } 830 #define RW_TRACE_EVENT6(m, p1, p2, p3, p4, p5, p6) \ 831 { \ 832 if (rw_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 833 BT_TRACE_6(TRACE_LAYER_RW, TRACE_TYPE_EVENT, m, p1, p2, p3, p4, p5, p6); \ 834 } 835 836 #define RW_TRACE_DEBUG0(m) \ 837 { \ 838 if (rw_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 839 BT_TRACE_0(TRACE_LAYER_RW, TRACE_TYPE_DEBUG, m); \ 840 } 841 #define RW_TRACE_DEBUG1(m, p1) \ 842 { \ 843 if (rw_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 844 BT_TRACE_1(TRACE_LAYER_RW, TRACE_TYPE_DEBUG, m, p1); \ 845 } 846 #define RW_TRACE_DEBUG2(m, p1, p2) \ 847 { \ 848 if (rw_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 849 BT_TRACE_2(TRACE_LAYER_RW, TRACE_TYPE_DEBUG, m, p1, p2); \ 850 } 851 #define RW_TRACE_DEBUG3(m, p1, p2, p3) \ 852 { \ 853 if (rw_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 854 BT_TRACE_3(TRACE_LAYER_RW, TRACE_TYPE_DEBUG, m, p1, p2, p3); \ 855 } 856 #define RW_TRACE_DEBUG4(m, p1, p2, p3, p4) \ 857 { \ 858 if (rw_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 859 BT_TRACE_4(TRACE_LAYER_RW, TRACE_TYPE_DEBUG, m, p1, p2, p3, p4); \ 860 } 861 #define RW_TRACE_DEBUG5(m, p1, p2, p3, p4, p5) \ 862 { \ 863 if (rw_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 864 BT_TRACE_5(TRACE_LAYER_RW, TRACE_TYPE_DEBUG, m, p1, p2, p3, p4, p5); \ 865 } 866 #define RW_TRACE_DEBUG6(m, p1, p2, p3, p4, p5, p6) \ 867 { \ 868 if (rw_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 869 BT_TRACE_6(TRACE_LAYER_RW, TRACE_TYPE_DEBUG, m, p1, p2, p3, p4, p5, p6); \ 870 } 871 872 #define CE_TRACE_ERROR0(m) \ 873 { \ 874 if (ce_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 875 BT_TRACE_0(TRACE_LAYER_CE, TRACE_TYPE_ERROR, m); \ 876 } 877 #define CE_TRACE_ERROR1(m, p1) \ 878 { \ 879 if (ce_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 880 BT_TRACE_1(TRACE_LAYER_CE, TRACE_TYPE_ERROR, m, p1); \ 881 } 882 #define CE_TRACE_ERROR2(m, p1, p2) \ 883 { \ 884 if (ce_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 885 BT_TRACE_2(TRACE_LAYER_CE, TRACE_TYPE_ERROR, m, p1, p2); \ 886 } 887 #define CE_TRACE_ERROR3(m, p1, p2, p3) \ 888 { \ 889 if (ce_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 890 BT_TRACE_3(TRACE_LAYER_CE, TRACE_TYPE_ERROR, m, p1, p2, p3); \ 891 } 892 #define CE_TRACE_ERROR4(m, p1, p2, p3, p4) \ 893 { \ 894 if (ce_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 895 BT_TRACE_4(TRACE_LAYER_CE, TRACE_TYPE_ERROR, m, p1, p2, p3, p4); \ 896 } 897 #define CE_TRACE_ERROR5(m, p1, p2, p3, p4, p5) \ 898 { \ 899 if (ce_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 900 BT_TRACE_5(TRACE_LAYER_CE, TRACE_TYPE_ERROR, m, p1, p2, p3, p4, p5); \ 901 } 902 #define CE_TRACE_ERROR6(m, p1, p2, p3, p4, p5, p6) \ 903 { \ 904 if (ce_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 905 BT_TRACE_6(TRACE_LAYER_CE, TRACE_TYPE_ERROR, m, p1, p2, p3, p4, p5, p6); \ 906 } 907 908 #define CE_TRACE_WARNING0(m) \ 909 { \ 910 if (ce_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 911 BT_TRACE_0(TRACE_LAYER_CE, TRACE_TYPE_WARNING, m); \ 912 } 913 #define CE_TRACE_WARNING1(m, p1) \ 914 { \ 915 if (ce_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 916 BT_TRACE_1(TRACE_LAYER_CE, TRACE_TYPE_WARNING, m, p1); \ 917 } 918 #define CE_TRACE_WARNING2(m, p1, p2) \ 919 { \ 920 if (ce_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 921 BT_TRACE_2(TRACE_LAYER_CE, TRACE_TYPE_WARNING, m, p1, p2); \ 922 } 923 #define CE_TRACE_WARNING3(m, p1, p2, p3) \ 924 { \ 925 if (ce_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 926 BT_TRACE_3(TRACE_LAYER_CE, TRACE_TYPE_WARNING, m, p1, p2, p3); \ 927 } 928 #define CE_TRACE_WARNING4(m, p1, p2, p3, p4) \ 929 { \ 930 if (ce_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 931 BT_TRACE_4(TRACE_LAYER_CE, TRACE_TYPE_WARNING, m, p1, p2, p3, p4); \ 932 } 933 #define CE_TRACE_WARNING5(m, p1, p2, p3, p4, p5) \ 934 { \ 935 if (ce_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 936 BT_TRACE_5(TRACE_LAYER_CE, TRACE_TYPE_WARNING, m, p1, p2, p3, p4, p5); \ 937 } 938 #define CE_TRACE_WARNING6(m, p1, p2, p3, p4, p5, p6) \ 939 { \ 940 if (ce_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 941 BT_TRACE_6(TRACE_LAYER_CE, TRACE_TYPE_WARNING, m, p1, p2, p3, p4, p5, \ 942 p6); \ 943 } 944 945 #define CE_TRACE_API0(m) \ 946 { \ 947 if (ce_cb.trace_level >= BT_TRACE_LEVEL_API) \ 948 BT_TRACE_0(TRACE_LAYER_CE, TRACE_TYPE_API, m); \ 949 } 950 #define CE_TRACE_API1(m, p1) \ 951 { \ 952 if (ce_cb.trace_level >= BT_TRACE_LEVEL_API) \ 953 BT_TRACE_1(TRACE_LAYER_CE, TRACE_TYPE_API, m, p1); \ 954 } 955 #define CE_TRACE_API2(m, p1, p2) \ 956 { \ 957 if (ce_cb.trace_level >= BT_TRACE_LEVEL_API) \ 958 BT_TRACE_2(TRACE_LAYER_CE, TRACE_TYPE_API, m, p1, p2); \ 959 } 960 #define CE_TRACE_API3(m, p1, p2, p3) \ 961 { \ 962 if (ce_cb.trace_level >= BT_TRACE_LEVEL_API) \ 963 BT_TRACE_3(TRACE_LAYER_CE, TRACE_TYPE_API, m, p1, p2, p3); \ 964 } 965 #define CE_TRACE_API4(m, p1, p2, p3, p4) \ 966 { \ 967 if (ce_cb.trace_level >= BT_TRACE_LEVEL_API) \ 968 BT_TRACE_4(TRACE_LAYER_CE, TRACE_TYPE_API, m, p1, p2, p3, p4); \ 969 } 970 #define CE_TRACE_API5(m, p1, p2, p3, p4, p5) \ 971 { \ 972 if (ce_cb.trace_level >= BT_TRACE_LEVEL_API) \ 973 BT_TRACE_5(TRACE_LAYER_CE, TRACE_TYPE_API, m, p1, p2, p3, p4, p5); \ 974 } 975 #define CE_TRACE_API6(m, p1, p2, p3, p4, p5, p6) \ 976 { \ 977 if (ce_cb.trace_level >= BT_TRACE_LEVEL_API) \ 978 BT_TRACE_6(TRACE_LAYER_CE, TRACE_TYPE_API, m, p1, p2, p3, p4, p5, p6); \ 979 } 980 981 #define CE_TRACE_EVENT0(m) \ 982 { \ 983 if (ce_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 984 BT_TRACE_0(TRACE_LAYER_CE, TRACE_TYPE_EVENT, m); \ 985 } 986 #define CE_TRACE_EVENT1(m, p1) \ 987 { \ 988 if (ce_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 989 BT_TRACE_1(TRACE_LAYER_CE, TRACE_TYPE_EVENT, m, p1); \ 990 } 991 #define CE_TRACE_EVENT2(m, p1, p2) \ 992 { \ 993 if (ce_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 994 BT_TRACE_2(TRACE_LAYER_CE, TRACE_TYPE_EVENT, m, p1, p2); \ 995 } 996 #define CE_TRACE_EVENT3(m, p1, p2, p3) \ 997 { \ 998 if (ce_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 999 BT_TRACE_3(TRACE_LAYER_CE, TRACE_TYPE_EVENT, m, p1, p2, p3); \ 1000 } 1001 #define CE_TRACE_EVENT4(m, p1, p2, p3, p4) \ 1002 { \ 1003 if (ce_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 1004 BT_TRACE_4(TRACE_LAYER_CE, TRACE_TYPE_EVENT, m, p1, p2, p3, p4); \ 1005 } 1006 #define CE_TRACE_EVENT5(m, p1, p2, p3, p4, p5) \ 1007 { \ 1008 if (ce_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 1009 BT_TRACE_5(TRACE_LAYER_CE, TRACE_TYPE_EVENT, m, p1, p2, p3, p4, p5); \ 1010 } 1011 #define CE_TRACE_EVENT6(m, p1, p2, p3, p4, p5, p6) \ 1012 { \ 1013 if (ce_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 1014 BT_TRACE_6(TRACE_LAYER_CE, TRACE_TYPE_EVENT, m, p1, p2, p3, p4, p5, p6); \ 1015 } 1016 1017 #define CE_TRACE_DEBUG0(m) \ 1018 { \ 1019 if (ce_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1020 BT_TRACE_0(TRACE_LAYER_CE, TRACE_TYPE_DEBUG, m); \ 1021 } 1022 #define CE_TRACE_DEBUG1(m, p1) \ 1023 { \ 1024 if (ce_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1025 BT_TRACE_1(TRACE_LAYER_CE, TRACE_TYPE_DEBUG, m, p1); \ 1026 } 1027 #define CE_TRACE_DEBUG2(m, p1, p2) \ 1028 { \ 1029 if (ce_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1030 BT_TRACE_2(TRACE_LAYER_CE, TRACE_TYPE_DEBUG, m, p1, p2); \ 1031 } 1032 #define CE_TRACE_DEBUG3(m, p1, p2, p3) \ 1033 { \ 1034 if (ce_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1035 BT_TRACE_3(TRACE_LAYER_CE, TRACE_TYPE_DEBUG, m, p1, p2, p3); \ 1036 } 1037 #define CE_TRACE_DEBUG4(m, p1, p2, p3, p4) \ 1038 { \ 1039 if (ce_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1040 BT_TRACE_4(TRACE_LAYER_CE, TRACE_TYPE_DEBUG, m, p1, p2, p3, p4); \ 1041 } 1042 #define CE_TRACE_DEBUG5(m, p1, p2, p3, p4, p5) \ 1043 { \ 1044 if (ce_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1045 BT_TRACE_5(TRACE_LAYER_CE, TRACE_TYPE_DEBUG, m, p1, p2, p3, p4, p5); \ 1046 } 1047 #define CE_TRACE_DEBUG6(m, p1, p2, p3, p4, p5, p6) \ 1048 { \ 1049 if (ce_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1050 BT_TRACE_6(TRACE_LAYER_CE, TRACE_TYPE_DEBUG, m, p1, p2, p3, p4, p5, p6); \ 1051 } 1052 1053 #define NDEF_TRACE_ERROR0(m) \ 1054 { \ 1055 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 1056 BT_TRACE_0(TRACE_LAYER_NDEF, TRACE_TYPE_ERROR, m); \ 1057 } 1058 #define NDEF_TRACE_ERROR1(m, p1) \ 1059 { \ 1060 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 1061 BT_TRACE_1(TRACE_LAYER_NDEF, TRACE_TYPE_ERROR, m, p1); \ 1062 } 1063 #define NDEF_TRACE_ERROR2(m, p1, p2) \ 1064 { \ 1065 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 1066 BT_TRACE_2(TRACE_LAYER_NDEF, TRACE_TYPE_ERROR, m, p1, p2); \ 1067 } 1068 #define NDEF_TRACE_ERROR3(m, p1, p2, p3) \ 1069 { \ 1070 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 1071 BT_TRACE_3(TRACE_LAYER_NDEF, TRACE_TYPE_ERROR, m, p1, p2, p3); \ 1072 } 1073 #define NDEF_TRACE_ERROR4(m, p1, p2, p3, p4) \ 1074 { \ 1075 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 1076 BT_TRACE_4(TRACE_LAYER_NDEF, TRACE_TYPE_ERROR, m, p1, p2, p3, p4); \ 1077 } 1078 #define NDEF_TRACE_ERROR5(m, p1, p2, p3, p4, p5) \ 1079 { \ 1080 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 1081 BT_TRACE_5(TRACE_LAYER_NDEF, TRACE_TYPE_ERROR, m, p1, p2, p3, p4, p5); \ 1082 } 1083 #define NDEF_TRACE_ERROR6(m, p1, p2, p3, p4, p5, p6) \ 1084 { \ 1085 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 1086 BT_TRACE_6(TRACE_LAYER_NDEF, TRACE_TYPE_ERROR, m, p1, p2, p3, p4, p5, \ 1087 p6); \ 1088 } 1089 1090 #define NDEF_TRACE_WARNING0(m) \ 1091 { \ 1092 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 1093 BT_TRACE_0(TRACE_LAYER_NDEF, TRACE_TYPE_WARNING, m); \ 1094 } 1095 #define NDEF_TRACE_WARNING1(m, p1) \ 1096 { \ 1097 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 1098 BT_TRACE_1(TRACE_LAYER_NDEF, TRACE_TYPE_WARNING, m, p1); \ 1099 } 1100 #define NDEF_TRACE_WARNING2(m, p1, p2) \ 1101 { \ 1102 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 1103 BT_TRACE_2(TRACE_LAYER_NDEF, TRACE_TYPE_WARNING, m, p1, p2); \ 1104 } 1105 #define NDEF_TRACE_WARNING3(m, p1, p2, p3) \ 1106 { \ 1107 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 1108 BT_TRACE_3(TRACE_LAYER_NDEF, TRACE_TYPE_WARNING, m, p1, p2, p3); \ 1109 } 1110 #define NDEF_TRACE_WARNING4(m, p1, p2, p3, p4) \ 1111 { \ 1112 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 1113 BT_TRACE_4(TRACE_LAYER_NDEF, TRACE_TYPE_WARNING, m, p1, p2, p3, p4); \ 1114 } 1115 #define NDEF_TRACE_WARNING5(m, p1, p2, p3, p4, p5) \ 1116 { \ 1117 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 1118 BT_TRACE_5(TRACE_LAYER_NDEF, TRACE_TYPE_WARNING, m, p1, p2, p3, p4, p5); \ 1119 } 1120 #define NDEF_TRACE_WARNING6(m, p1, p2, p3, p4, p5, p6) \ 1121 { \ 1122 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 1123 BT_TRACE_6(TRACE_LAYER_NDEF, TRACE_TYPE_WARNING, m, p1, p2, p3, p4, p5, \ 1124 p6); \ 1125 } 1126 1127 #define NDEF_TRACE_API0(m) \ 1128 { \ 1129 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_API) \ 1130 BT_TRACE_0(TRACE_LAYER_NDEF, TRACE_TYPE_API, m); \ 1131 } 1132 #define NDEF_TRACE_API1(m, p1) \ 1133 { \ 1134 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_API) \ 1135 BT_TRACE_1(TRACE_LAYER_NDEF, TRACE_TYPE_API, m, p1); \ 1136 } 1137 #define NDEF_TRACE_API2(m, p1, p2) \ 1138 { \ 1139 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_API) \ 1140 BT_TRACE_2(TRACE_LAYER_NDEF, TRACE_TYPE_API, m, p1, p2); \ 1141 } 1142 #define NDEF_TRACE_API3(m, p1, p2, p3) \ 1143 { \ 1144 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_API) \ 1145 BT_TRACE_3(TRACE_LAYER_NDEF, TRACE_TYPE_API, m, p1, p2, p3); \ 1146 } 1147 #define NDEF_TRACE_API4(m, p1, p2, p3, p4) \ 1148 { \ 1149 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_API) \ 1150 BT_TRACE_4(TRACE_LAYER_NDEF, TRACE_TYPE_API, m, p1, p2, p3, p4); \ 1151 } 1152 #define NDEF_TRACE_API5(m, p1, p2, p3, p4, p5) \ 1153 { \ 1154 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_API) \ 1155 BT_TRACE_5(TRACE_LAYER_NDEF, TRACE_TYPE_API, m, p1, p2, p3, p4, p5); \ 1156 } 1157 #define NDEF_TRACE_API6(m, p1, p2, p3, p4, p5, p6) \ 1158 { \ 1159 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_API) \ 1160 BT_TRACE_6(TRACE_LAYER_NDEF, TRACE_TYPE_API, m, p1, p2, p3, p4, p5, p6); \ 1161 } 1162 1163 #define NDEF_TRACE_EVENT0(m) \ 1164 { \ 1165 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 1166 BT_TRACE_0(TRACE_LAYER_NDEF, TRACE_TYPE_EVENT, m); \ 1167 } 1168 #define NDEF_TRACE_EVENT1(m, p1) \ 1169 { \ 1170 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 1171 BT_TRACE_1(TRACE_LAYER_NDEF, TRACE_TYPE_EVENT, m, p1); \ 1172 } 1173 #define NDEF_TRACE_EVENT2(m, p1, p2) \ 1174 { \ 1175 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 1176 BT_TRACE_2(TRACE_LAYER_NDEF, TRACE_TYPE_EVENT, m, p1, p2); \ 1177 } 1178 #define NDEF_TRACE_EVENT3(m, p1, p2, p3) \ 1179 { \ 1180 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 1181 BT_TRACE_3(TRACE_LAYER_NDEF, TRACE_TYPE_EVENT, m, p1, p2, p3); \ 1182 } 1183 #define NDEF_TRACE_EVENT4(m, p1, p2, p3, p4) \ 1184 { \ 1185 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 1186 BT_TRACE_4(TRACE_LAYER_NDEF, TRACE_TYPE_EVENT, m, p1, p2, p3, p4); \ 1187 } 1188 #define NDEF_TRACE_EVENT5(m, p1, p2, p3, p4, p5) \ 1189 { \ 1190 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 1191 BT_TRACE_5(TRACE_LAYER_NDEF, TRACE_TYPE_EVENT, m, p1, p2, p3, p4, p5); \ 1192 } 1193 #define NDEF_TRACE_EVENT6(m, p1, p2, p3, p4, p5, p6) \ 1194 { \ 1195 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 1196 BT_TRACE_6(TRACE_LAYER_NDEF, TRACE_TYPE_EVENT, m, p1, p2, p3, p4, p5, \ 1197 p6); \ 1198 } 1199 1200 #define NDEF_TRACE_DEBUG0(m) \ 1201 { \ 1202 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1203 BT_TRACE_0(TRACE_LAYER_NDEF, TRACE_TYPE_DEBUG, m); \ 1204 } 1205 #define NDEF_TRACE_DEBUG1(m, p1) \ 1206 { \ 1207 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1208 BT_TRACE_1(TRACE_LAYER_NDEF, TRACE_TYPE_DEBUG, m, p1); \ 1209 } 1210 #define NDEF_TRACE_DEBUG2(m, p1, p2) \ 1211 { \ 1212 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1213 BT_TRACE_2(TRACE_LAYER_NDEF, TRACE_TYPE_DEBUG, m, p1, p2); \ 1214 } 1215 #define NDEF_TRACE_DEBUG3(m, p1, p2, p3) \ 1216 { \ 1217 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1218 BT_TRACE_3(TRACE_LAYER_NDEF, TRACE_TYPE_DEBUG, m, p1, p2, p3); \ 1219 } 1220 #define NDEF_TRACE_DEBUG4(m, p1, p2, p3, p4) \ 1221 { \ 1222 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1223 BT_TRACE_4(TRACE_LAYER_NDEF, TRACE_TYPE_DEBUG, m, p1, p2, p3, p4); \ 1224 } 1225 #define NDEF_TRACE_DEBUG5(m, p1, p2, p3, p4, p5) \ 1226 { \ 1227 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1228 BT_TRACE_5(TRACE_LAYER_NDEF, TRACE_TYPE_DEBUG, m, p1, p2, p3, p4, p5); \ 1229 } 1230 #define NDEF_TRACE_DEBUG6(m, p1, p2, p3, p4, p5, p6) \ 1231 { \ 1232 if (ndef_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1233 BT_TRACE_6(TRACE_LAYER_NDEF, TRACE_TYPE_DEBUG, m, p1, p2, p3, p4, p5, \ 1234 p6); \ 1235 } 1236 1237 /* Define tracing for the NFA unit 1238 */ 1239 #define NFA_TRACE_ERROR0(m) \ 1240 { \ 1241 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 1242 BT_TRACE_0(TRACE_LAYER_NFA, TRACE_TYPE_ERROR, m); \ 1243 } 1244 #define NFA_TRACE_ERROR1(m, p1) \ 1245 { \ 1246 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 1247 BT_TRACE_1(TRACE_LAYER_NFA, TRACE_TYPE_ERROR, m, p1); \ 1248 } 1249 #define NFA_TRACE_ERROR2(m, p1, p2) \ 1250 { \ 1251 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 1252 BT_TRACE_2(TRACE_LAYER_NFA, TRACE_TYPE_ERROR, m, p1, p2); \ 1253 } 1254 #define NFA_TRACE_ERROR3(m, p1, p2, p3) \ 1255 { \ 1256 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 1257 BT_TRACE_3(TRACE_LAYER_NFA, TRACE_TYPE_ERROR, m, p1, p2, p3); \ 1258 } 1259 #define NFA_TRACE_ERROR4(m, p1, p2, p3, p4) \ 1260 { \ 1261 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 1262 BT_TRACE_4(TRACE_LAYER_NFA, TRACE_TYPE_ERROR, m, p1, p2, p3, p4); \ 1263 } 1264 #define NFA_TRACE_ERROR5(m, p1, p2, p3, p4, p5) \ 1265 { \ 1266 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 1267 BT_TRACE_5(TRACE_LAYER_NFA, TRACE_TYPE_ERROR, m, p1, p2, p3, p4, p5); \ 1268 } 1269 #define NFA_TRACE_ERROR6(m, p1, p2, p3, p4, p5, p6) \ 1270 { \ 1271 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 1272 BT_TRACE_6(TRACE_LAYER_NFA, TRACE_TYPE_ERROR, m, p1, p2, p3, p4, p5, \ 1273 p6); \ 1274 } 1275 1276 #define NFA_TRACE_WARNING0(m) \ 1277 { \ 1278 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 1279 BT_TRACE_0(TRACE_LAYER_NFA, TRACE_TYPE_WARNING, m); \ 1280 } 1281 #define NFA_TRACE_WARNING1(m, p1) \ 1282 { \ 1283 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 1284 BT_TRACE_1(TRACE_LAYER_NFA, TRACE_TYPE_WARNING, m, p1); \ 1285 } 1286 #define NFA_TRACE_WARNING2(m, p1, p2) \ 1287 { \ 1288 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 1289 BT_TRACE_2(TRACE_LAYER_NFA, TRACE_TYPE_WARNING, m, p1, p2); \ 1290 } 1291 #define NFA_TRACE_WARNING3(m, p1, p2, p3) \ 1292 { \ 1293 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 1294 BT_TRACE_3(TRACE_LAYER_NFA, TRACE_TYPE_WARNING, m, p1, p2, p3); \ 1295 } 1296 #define NFA_TRACE_WARNING4(m, p1, p2, p3, p4) \ 1297 { \ 1298 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 1299 BT_TRACE_4(TRACE_LAYER_NFA, TRACE_TYPE_WARNING, m, p1, p2, p3, p4); \ 1300 } 1301 #define NFA_TRACE_WARNING5(m, p1, p2, p3, p4, p5) \ 1302 { \ 1303 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 1304 BT_TRACE_5(TRACE_LAYER_NFA, TRACE_TYPE_WARNING, m, p1, p2, p3, p4, p5); \ 1305 } 1306 #define NFA_TRACE_WARNING6(m, p1, p2, p3, p4, p5, p6) \ 1307 { \ 1308 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 1309 BT_TRACE_6(TRACE_LAYER_NFA, TRACE_TYPE_WARNING, m, p1, p2, p3, p4, p5, \ 1310 p6); \ 1311 } 1312 1313 #define NFA_TRACE_API0(m) \ 1314 { \ 1315 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_API) \ 1316 BT_TRACE_0(TRACE_LAYER_NFA, TRACE_TYPE_API, m); \ 1317 } 1318 #define NFA_TRACE_API1(m, p1) \ 1319 { \ 1320 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_API) \ 1321 BT_TRACE_1(TRACE_LAYER_NFA, TRACE_TYPE_API, m, p1); \ 1322 } 1323 #define NFA_TRACE_API2(m, p1, p2) \ 1324 { \ 1325 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_API) \ 1326 BT_TRACE_2(TRACE_LAYER_NFA, TRACE_TYPE_API, m, p1, p2); \ 1327 } 1328 #define NFA_TRACE_API3(m, p1, p2, p3) \ 1329 { \ 1330 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_API) \ 1331 BT_TRACE_3(TRACE_LAYER_NFA, TRACE_TYPE_API, m, p1, p2, p3); \ 1332 } 1333 #define NFA_TRACE_API4(m, p1, p2, p3, p4) \ 1334 { \ 1335 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_API) \ 1336 BT_TRACE_4(TRACE_LAYER_NFA, TRACE_TYPE_API, m, p1, p2, p3, p4); \ 1337 } 1338 #define NFA_TRACE_API5(m, p1, p2, p3, p4, p5) \ 1339 { \ 1340 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_API) \ 1341 BT_TRACE_5(TRACE_LAYER_NFA, TRACE_TYPE_API, m, p1, p2, p3, p4, p5); \ 1342 } 1343 #define NFA_TRACE_API6(m, p1, p2, p3, p4, p5, p6) \ 1344 { \ 1345 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_API) \ 1346 BT_TRACE_6(TRACE_LAYER_NFA, TRACE_TYPE_API, m, p1, p2, p3, p4, p5, p6); \ 1347 } 1348 1349 #define NFA_TRACE_EVENT0(m) \ 1350 { \ 1351 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 1352 BT_TRACE_0(TRACE_LAYER_NFA, TRACE_TYPE_EVENT, m); \ 1353 } 1354 #define NFA_TRACE_EVENT1(m, p1) \ 1355 { \ 1356 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 1357 BT_TRACE_1(TRACE_LAYER_NFA, TRACE_TYPE_EVENT, m, p1); \ 1358 } 1359 #define NFA_TRACE_EVENT2(m, p1, p2) \ 1360 { \ 1361 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 1362 BT_TRACE_2(TRACE_LAYER_NFA, TRACE_TYPE_EVENT, m, p1, p2); \ 1363 } 1364 #define NFA_TRACE_EVENT3(m, p1, p2, p3) \ 1365 { \ 1366 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 1367 BT_TRACE_3(TRACE_LAYER_NFA, TRACE_TYPE_EVENT, m, p1, p2, p3); \ 1368 } 1369 #define NFA_TRACE_EVENT4(m, p1, p2, p3, p4) \ 1370 { \ 1371 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 1372 BT_TRACE_4(TRACE_LAYER_NFA, TRACE_TYPE_EVENT, m, p1, p2, p3, p4); \ 1373 } 1374 #define NFA_TRACE_EVENT5(m, p1, p2, p3, p4, p5) \ 1375 { \ 1376 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 1377 BT_TRACE_5(TRACE_LAYER_NFA, TRACE_TYPE_EVENT, m, p1, p2, p3, p4, p5); \ 1378 } 1379 #define NFA_TRACE_EVENT6(m, p1, p2, p3, p4, p5, p6) \ 1380 { \ 1381 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 1382 BT_TRACE_6(TRACE_LAYER_NFA, TRACE_TYPE_EVENT, m, p1, p2, p3, p4, p5, \ 1383 p6); \ 1384 } 1385 1386 #define NFA_TRACE_DEBUG0(m) \ 1387 { \ 1388 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1389 BT_TRACE_0(TRACE_LAYER_NFA, TRACE_TYPE_DEBUG, m); \ 1390 } 1391 #define NFA_TRACE_DEBUG1(m, p1) \ 1392 { \ 1393 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1394 BT_TRACE_1(TRACE_LAYER_NFA, TRACE_TYPE_DEBUG, m, p1); \ 1395 } 1396 #define NFA_TRACE_DEBUG2(m, p1, p2) \ 1397 { \ 1398 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1399 BT_TRACE_2(TRACE_LAYER_NFA, TRACE_TYPE_DEBUG, m, p1, p2); \ 1400 } 1401 #define NFA_TRACE_DEBUG3(m, p1, p2, p3) \ 1402 { \ 1403 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1404 BT_TRACE_3(TRACE_LAYER_NFA, TRACE_TYPE_DEBUG, m, p1, p2, p3); \ 1405 } 1406 #define NFA_TRACE_DEBUG4(m, p1, p2, p3, p4) \ 1407 { \ 1408 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1409 BT_TRACE_4(TRACE_LAYER_NFA, TRACE_TYPE_DEBUG, m, p1, p2, p3, p4); \ 1410 } 1411 #define NFA_TRACE_DEBUG5(m, p1, p2, p3, p4, p5) \ 1412 { \ 1413 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1414 BT_TRACE_5(TRACE_LAYER_NFA, TRACE_TYPE_DEBUG, m, p1, p2, p3, p4, p5); \ 1415 } 1416 #define NFA_TRACE_DEBUG6(m, p1, p2, p3, p4, p5, p6) \ 1417 { \ 1418 if (nfa_sys_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1419 BT_TRACE_6(TRACE_LAYER_NFA, TRACE_TYPE_DEBUG, m, p1, p2, p3, p4, p5, \ 1420 p6); \ 1421 } 1422 1423 /* Define tracing for the NFA P2P unit 1424 */ 1425 #define P2P_TRACE_ERROR0(m) \ 1426 { \ 1427 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 1428 BT_TRACE_0(TRACE_LAYER_P2P, TRACE_TYPE_ERROR, m); \ 1429 } 1430 #define P2P_TRACE_ERROR1(m, p1) \ 1431 { \ 1432 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 1433 BT_TRACE_1(TRACE_LAYER_P2P, TRACE_TYPE_ERROR, m, p1); \ 1434 } 1435 #define P2P_TRACE_ERROR2(m, p1, p2) \ 1436 { \ 1437 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 1438 BT_TRACE_2(TRACE_LAYER_P2P, TRACE_TYPE_ERROR, m, p1, p2); \ 1439 } 1440 #define P2P_TRACE_ERROR3(m, p1, p2, p3) \ 1441 { \ 1442 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 1443 BT_TRACE_3(TRACE_LAYER_P2P, TRACE_TYPE_ERROR, m, p1, p2, p3); \ 1444 } 1445 #define P2P_TRACE_ERROR4(m, p1, p2, p3, p4) \ 1446 { \ 1447 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 1448 BT_TRACE_4(TRACE_LAYER_P2P, TRACE_TYPE_ERROR, m, p1, p2, p3, p4); \ 1449 } 1450 #define P2P_TRACE_ERROR5(m, p1, p2, p3, p4, p5) \ 1451 { \ 1452 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 1453 BT_TRACE_5(TRACE_LAYER_P2P, TRACE_TYPE_ERROR, m, p1, p2, p3, p4, p5); \ 1454 } 1455 #define P2P_TRACE_ERROR6(m, p1, p2, p3, p4, p5, p6) \ 1456 { \ 1457 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_ERROR) \ 1458 BT_TRACE_6(TRACE_LAYER_P2P, TRACE_TYPE_ERROR, m, p1, p2, p3, p4, p5, \ 1459 p6); \ 1460 } 1461 1462 #define P2P_TRACE_WARNING0(m) \ 1463 { \ 1464 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 1465 BT_TRACE_0(TRACE_LAYER_P2P, TRACE_TYPE_WARNING, m); \ 1466 } 1467 #define P2P_TRACE_WARNING1(m, p1) \ 1468 { \ 1469 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 1470 BT_TRACE_1(TRACE_LAYER_P2P, TRACE_TYPE_WARNING, m, p1); \ 1471 } 1472 #define P2P_TRACE_WARNING2(m, p1, p2) \ 1473 { \ 1474 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 1475 BT_TRACE_2(TRACE_LAYER_P2P, TRACE_TYPE_WARNING, m, p1, p2); \ 1476 } 1477 #define P2P_TRACE_WARNING3(m, p1, p2, p3) \ 1478 { \ 1479 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 1480 BT_TRACE_3(TRACE_LAYER_P2P, TRACE_TYPE_WARNING, m, p1, p2, p3); \ 1481 } 1482 #define P2P_TRACE_WARNING4(m, p1, p2, p3, p4) \ 1483 { \ 1484 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 1485 BT_TRACE_4(TRACE_LAYER_P2P, TRACE_TYPE_WARNING, m, p1, p2, p3, p4); \ 1486 } 1487 #define P2P_TRACE_WARNING5(m, p1, p2, p3, p4, p5) \ 1488 { \ 1489 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 1490 BT_TRACE_5(TRACE_LAYER_P2P, TRACE_TYPE_WARNING, m, p1, p2, p3, p4, p5); \ 1491 } 1492 #define P2P_TRACE_WARNING6(m, p1, p2, p3, p4, p5, p6) \ 1493 { \ 1494 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_WARNING) \ 1495 BT_TRACE_6(TRACE_LAYER_P2P, TRACE_TYPE_WARNING, m, p1, p2, p3, p4, p5, \ 1496 p6); \ 1497 } 1498 1499 #define P2P_TRACE_API0(m) \ 1500 { \ 1501 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_API) \ 1502 BT_TRACE_0(TRACE_LAYER_P2P, TRACE_TYPE_API, m); \ 1503 } 1504 #define P2P_TRACE_API1(m, p1) \ 1505 { \ 1506 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_API) \ 1507 BT_TRACE_1(TRACE_LAYER_P2P, TRACE_TYPE_API, m, p1); \ 1508 } 1509 #define P2P_TRACE_API2(m, p1, p2) \ 1510 { \ 1511 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_API) \ 1512 BT_TRACE_2(TRACE_LAYER_P2P, TRACE_TYPE_API, m, p1, p2); \ 1513 } 1514 #define P2P_TRACE_API3(m, p1, p2, p3) \ 1515 { \ 1516 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_API) \ 1517 BT_TRACE_3(TRACE_LAYER_P2P, TRACE_TYPE_API, m, p1, p2, p3); \ 1518 } 1519 #define P2P_TRACE_API4(m, p1, p2, p3, p4) \ 1520 { \ 1521 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_API) \ 1522 BT_TRACE_4(TRACE_LAYER_P2P, TRACE_TYPE_API, m, p1, p2, p3, p4); \ 1523 } 1524 #define P2P_TRACE_API5(m, p1, p2, p3, p4, p5) \ 1525 { \ 1526 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_API) \ 1527 BT_TRACE_5(TRACE_LAYER_P2P, TRACE_TYPE_API, m, p1, p2, p3, p4, p5); \ 1528 } 1529 #define P2P_TRACE_API6(m, p1, p2, p3, p4, p5, p6) \ 1530 { \ 1531 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_API) \ 1532 BT_TRACE_6(TRACE_LAYER_P2P, TRACE_TYPE_API, m, p1, p2, p3, p4, p5, p6); \ 1533 } 1534 1535 #define P2P_TRACE_EVENT0(m) \ 1536 { \ 1537 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 1538 BT_TRACE_0(TRACE_LAYER_P2P, TRACE_TYPE_EVENT, m); \ 1539 } 1540 #define P2P_TRACE_EVENT1(m, p1) \ 1541 { \ 1542 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 1543 BT_TRACE_1(TRACE_LAYER_P2P, TRACE_TYPE_EVENT, m, p1); \ 1544 } 1545 #define P2P_TRACE_EVENT2(m, p1, p2) \ 1546 { \ 1547 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 1548 BT_TRACE_2(TRACE_LAYER_P2P, TRACE_TYPE_EVENT, m, p1, p2); \ 1549 } 1550 #define P2P_TRACE_EVENT3(m, p1, p2, p3) \ 1551 { \ 1552 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 1553 BT_TRACE_3(TRACE_LAYER_P2P, TRACE_TYPE_EVENT, m, p1, p2, p3); \ 1554 } 1555 #define P2P_TRACE_EVENT4(m, p1, p2, p3, p4) \ 1556 { \ 1557 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 1558 BT_TRACE_4(TRACE_LAYER_P2P, TRACE_TYPE_EVENT, m, p1, p2, p3, p4); \ 1559 } 1560 #define P2P_TRACE_EVENT5(m, p1, p2, p3, p4, p5) \ 1561 { \ 1562 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 1563 BT_TRACE_5(TRACE_LAYER_P2P, TRACE_TYPE_EVENT, m, p1, p2, p3, p4, p5); \ 1564 } 1565 #define P2P_TRACE_EVENT6(m, p1, p2, p3, p4, p5, p6) \ 1566 { \ 1567 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_EVENT) \ 1568 BT_TRACE_6(TRACE_LAYER_P2P, TRACE_TYPE_EVENT, m, p1, p2, p3, p4, p5, \ 1569 p6); \ 1570 } 1571 1572 #define P2P_TRACE_DEBUG0(m) \ 1573 { \ 1574 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1575 BT_TRACE_0(TRACE_LAYER_P2P, TRACE_TYPE_DEBUG, m); \ 1576 } 1577 #define P2P_TRACE_DEBUG1(m, p1) \ 1578 { \ 1579 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1580 BT_TRACE_1(TRACE_LAYER_P2P, TRACE_TYPE_DEBUG, m, p1); \ 1581 } 1582 #define P2P_TRACE_DEBUG2(m, p1, p2) \ 1583 { \ 1584 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1585 BT_TRACE_2(TRACE_LAYER_P2P, TRACE_TYPE_DEBUG, m, p1, p2); \ 1586 } 1587 #define P2P_TRACE_DEBUG3(m, p1, p2, p3) \ 1588 { \ 1589 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1590 BT_TRACE_3(TRACE_LAYER_P2P, TRACE_TYPE_DEBUG, m, p1, p2, p3); \ 1591 } 1592 #define P2P_TRACE_DEBUG4(m, p1, p2, p3, p4) \ 1593 { \ 1594 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1595 BT_TRACE_4(TRACE_LAYER_P2P, TRACE_TYPE_DEBUG, m, p1, p2, p3, p4); \ 1596 } 1597 #define P2P_TRACE_DEBUG5(m, p1, p2, p3, p4, p5) \ 1598 { \ 1599 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1600 BT_TRACE_5(TRACE_LAYER_P2P, TRACE_TYPE_DEBUG, m, p1, p2, p3, p4, p5); \ 1601 } 1602 #define P2P_TRACE_DEBUG6(m, p1, p2, p3, p4, p5, p6) \ 1603 { \ 1604 if (nfa_p2p_cb.trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1605 BT_TRACE_6(TRACE_LAYER_P2P, TRACE_TYPE_DEBUG, m, p1, p2, p3, p4, p5, \ 1606 p6); \ 1607 } 1608 1609 /* define traces for application */ 1610 #define APPL_TRACE_ERROR0(m) \ 1611 { \ 1612 if (appl_trace_level >= BT_TRACE_LEVEL_ERROR) \ 1613 LogMsg_0(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1614 TRACE_TYPE_ERROR, \ 1615 (m)); \ 1616 } 1617 #define APPL_TRACE_ERROR1(m, p1) \ 1618 { \ 1619 if (appl_trace_level >= BT_TRACE_LEVEL_ERROR) \ 1620 LogMsg_1(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1621 TRACE_TYPE_ERROR, \ 1622 (m), (uintptr_t)(p1)); \ 1623 } 1624 #define APPL_TRACE_ERROR2(m, p1, p2) \ 1625 { \ 1626 if (appl_trace_level >= BT_TRACE_LEVEL_ERROR) \ 1627 LogMsg_2(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1628 TRACE_TYPE_ERROR, \ 1629 (m), (uintptr_t)(p1), (uintptr_t)(p2)); \ 1630 } 1631 #define APPL_TRACE_ERROR3(m, p1, p2, p3) \ 1632 { \ 1633 if (appl_trace_level >= BT_TRACE_LEVEL_ERROR) \ 1634 LogMsg_3(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1635 TRACE_TYPE_ERROR, \ 1636 (m), (uintptr_t)(p1), (uintptr_t)(p2), (uintptr_t)(p3)); \ 1637 } 1638 #define APPL_TRACE_ERROR4(m, p1, p2, p3, p4) \ 1639 { \ 1640 if (appl_trace_level >= BT_TRACE_LEVEL_ERROR) \ 1641 LogMsg_4(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1642 TRACE_TYPE_ERROR, \ 1643 (m), (uintptr_t)(p1), (uintptr_t)(p2), (uintptr_t)(p3), \ 1644 (uintptr_t)(p4)); \ 1645 } 1646 #define APPL_TRACE_ERROR5(m, p1, p2, p3, p4, p5) \ 1647 { \ 1648 if (appl_trace_level >= BT_TRACE_LEVEL_ERROR) \ 1649 LogMsg_5(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1650 TRACE_TYPE_ERROR, \ 1651 (m), (uintptr_t)(p1), (uintptr_t)(p2), (uintptr_t)(p3), \ 1652 (uintptr_t)(p4), (uintptr_t)(p5)); \ 1653 } 1654 #define APPL_TRACE_ERROR6(m, p1, p2, p3, p4, p5, p6) \ 1655 { \ 1656 if (appl_trace_level >= BT_TRACE_LEVEL_ERROR) \ 1657 LogMsg_6(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1658 TRACE_TYPE_ERROR, \ 1659 (m), (uintptr_t)(p1), (uintptr_t)(p2), (uintptr_t)(p3), \ 1660 (uintptr_t)(p4), (uintptr_t)(p5), (uintptr_t)(p6)); \ 1661 } 1662 1663 #define APPL_TRACE_WARNING0(m) \ 1664 { \ 1665 if (appl_trace_level >= BT_TRACE_LEVEL_WARNING) \ 1666 LogMsg_0(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1667 TRACE_TYPE_WARNING, \ 1668 (m)); \ 1669 } 1670 #define APPL_TRACE_WARNING1(m, p1) \ 1671 { \ 1672 if (appl_trace_level >= BT_TRACE_LEVEL_WARNING) \ 1673 LogMsg_1(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1674 TRACE_TYPE_WARNING, \ 1675 (m), (uintptr_t)(p1)); \ 1676 } 1677 #define APPL_TRACE_WARNING2(m, p1, p2) \ 1678 { \ 1679 if (appl_trace_level >= BT_TRACE_LEVEL_WARNING) \ 1680 LogMsg_2(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1681 TRACE_TYPE_WARNING, \ 1682 (m), (uintptr_t)(p1), (uintptr_t)(p2)); \ 1683 } 1684 #define APPL_TRACE_WARNING3(m, p1, p2, p3) \ 1685 { \ 1686 if (appl_trace_level >= BT_TRACE_LEVEL_WARNING) \ 1687 LogMsg_3(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1688 TRACE_TYPE_WARNING, \ 1689 (m), (uintptr_t)(p1), (uintptr_t)(p2), (uintptr_t)(p3)); \ 1690 } 1691 #define APPL_TRACE_WARNING4(m, p1, p2, p3, p4) \ 1692 { \ 1693 if (appl_trace_level >= BT_TRACE_LEVEL_WARNING) \ 1694 LogMsg_4(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1695 TRACE_TYPE_WARNING, \ 1696 (m), (uintptr_t)(p1), (uintptr_t)(p2), (uintptr_t)(p3), \ 1697 (uintptr_t)(p4)); \ 1698 } 1699 #define APPL_TRACE_WARNING5(m, p1, p2, p3, p4, p5) \ 1700 { \ 1701 if (appl_trace_level >= BT_TRACE_LEVEL_WARNING) \ 1702 LogMsg_5(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1703 TRACE_TYPE_WARNING, \ 1704 (m), (uintptr_t)(p1), (uintptr_t)(p2), (uintptr_t)(p3), \ 1705 (uintptr_t)(p4), (uintptr_t)(p5)); \ 1706 } 1707 #define APPL_TRACE_WARNING6(m, p1, p2, p3, p4, p5, p6) \ 1708 { \ 1709 if (appl_trace_level >= BT_TRACE_LEVEL_WARNING) \ 1710 LogMsg_6(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1711 TRACE_TYPE_WARNING, \ 1712 (m), (uintptr_t)(p1), (uintptr_t)(p2), (uintptr_t)(p3), \ 1713 (uintptr_t)(p4), (uintptr_t)(p5), (uintptr_t)(p6)); \ 1714 } 1715 1716 #define APPL_TRACE_API0(m) \ 1717 { \ 1718 if (appl_trace_level >= BT_TRACE_LEVEL_API) \ 1719 LogMsg_0(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1720 TRACE_TYPE_API, \ 1721 (m)); \ 1722 } 1723 #define APPL_TRACE_API1(m, p1) \ 1724 { \ 1725 if (appl_trace_level >= BT_TRACE_LEVEL_API) \ 1726 LogMsg_1(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1727 TRACE_TYPE_API, \ 1728 (m), (uintptr_t)(p1)); \ 1729 } 1730 #define APPL_TRACE_API2(m, p1, p2) \ 1731 { \ 1732 if (appl_trace_level >= BT_TRACE_LEVEL_API) \ 1733 LogMsg_2(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1734 TRACE_TYPE_API, \ 1735 (m), (uintptr_t)(p1), (uintptr_t)(p2)); \ 1736 } 1737 #define APPL_TRACE_API3(m, p1, p2, p3) \ 1738 { \ 1739 if (appl_trace_level >= BT_TRACE_LEVEL_API) \ 1740 LogMsg_3(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1741 TRACE_TYPE_API, \ 1742 (m), (uintptr_t)(p1), (uintptr_t)(p2), (uintptr_t)(p3)); \ 1743 } 1744 #define APPL_TRACE_API4(m, p1, p2, p3, p4) \ 1745 { \ 1746 if (appl_trace_level >= BT_TRACE_LEVEL_API) \ 1747 LogMsg_4(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1748 TRACE_TYPE_API, \ 1749 (m), (uintptr_t)(p1), (uintptr_t)(p2), (uintptr_t)(p3), \ 1750 (uintptr_t)(p4)); \ 1751 } 1752 #define APPL_TRACE_API5(m, p1, p2, p3, p4, p5) \ 1753 { \ 1754 if (appl_trace_level >= BT_TRACE_LEVEL_API) \ 1755 LogMsg_5(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1756 TRACE_TYPE_API, \ 1757 (m), (uintptr_t)(p1), (uintptr_t)(p2), (uintptr_t)(p3), \ 1758 (uintptr_t)(p4), (uintptr_t)(p5)); \ 1759 } 1760 #define APPL_TRACE_API6(m, p1, p2, p3, p4, p5, p6) \ 1761 { \ 1762 if (appl_trace_level >= BT_TRACE_LEVEL_API) \ 1763 LogMsg_6(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1764 TRACE_TYPE_API, \ 1765 (m), (uintptr_t)(p1), (uintptr_t)(p2), (uintptr_t)(p3), \ 1766 (uintptr_t)(p4), (uintptr_t)(p5), (uintptr_t)(p6)); \ 1767 } 1768 1769 #define APPL_TRACE_EVENT0(m) \ 1770 { \ 1771 if (appl_trace_level >= BT_TRACE_LEVEL_EVENT) \ 1772 LogMsg_0(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1773 TRACE_TYPE_EVENT, \ 1774 (m)); \ 1775 } 1776 #define APPL_TRACE_EVENT1(m, p1) \ 1777 { \ 1778 if (appl_trace_level >= BT_TRACE_LEVEL_EVENT) \ 1779 LogMsg_1(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1780 TRACE_TYPE_EVENT, \ 1781 (m), (uintptr_t)(p1)); \ 1782 } 1783 #define APPL_TRACE_EVENT2(m, p1, p2) \ 1784 { \ 1785 if (appl_trace_level >= BT_TRACE_LEVEL_EVENT) \ 1786 LogMsg_2(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1787 TRACE_TYPE_EVENT, \ 1788 (m), (uintptr_t)(p1), (uintptr_t)(p2)); \ 1789 } 1790 #define APPL_TRACE_EVENT3(m, p1, p2, p3) \ 1791 { \ 1792 if (appl_trace_level >= BT_TRACE_LEVEL_EVENT) \ 1793 LogMsg_3(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1794 TRACE_TYPE_EVENT, \ 1795 (m), (uintptr_t)(p1), (uintptr_t)(p2), (uintptr_t)(p3)); \ 1796 } 1797 #define APPL_TRACE_EVENT4(m, p1, p2, p3, p4) \ 1798 { \ 1799 if (appl_trace_level >= BT_TRACE_LEVEL_EVENT) \ 1800 LogMsg_4(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1801 TRACE_TYPE_EVENT, \ 1802 (m), (uintptr_t)(p1), (uintptr_t)(p2), (uintptr_t)(p3), \ 1803 (uintptr_t)(p4)); \ 1804 } 1805 #define APPL_TRACE_EVENT5(m, p1, p2, p3, p4, p5) \ 1806 { \ 1807 if (appl_trace_level >= BT_TRACE_LEVEL_EVENT) \ 1808 LogMsg_5(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1809 TRACE_TYPE_EVENT, \ 1810 (m), (uintptr_t)(p1), (uintptr_t)(p2), (uintptr_t)(p3), \ 1811 (uintptr_t)(p4), (uintptr_t)(p5)); \ 1812 } 1813 #define APPL_TRACE_EVENT6(m, p1, p2, p3, p4, p5, p6) \ 1814 { \ 1815 if (appl_trace_level >= BT_TRACE_LEVEL_EVENT) \ 1816 LogMsg_6(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1817 TRACE_TYPE_EVENT, \ 1818 (m), (uintptr_t)(p1), (uintptr_t)(p2), (uintptr_t)(p3), \ 1819 (uintptr_t)(p4), (uintptr_t)(p5), (uintptr_t)(p6)); \ 1820 } 1821 1822 #define APPL_TRACE_DEBUG0(m) \ 1823 { \ 1824 if (appl_trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1825 LogMsg_0(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1826 TRACE_TYPE_DEBUG, \ 1827 (m)); \ 1828 } 1829 #define APPL_TRACE_DEBUG1(m, p1) \ 1830 { \ 1831 if (appl_trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1832 LogMsg_1(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1833 TRACE_TYPE_DEBUG, \ 1834 (m), (uintptr_t)(p1)); \ 1835 } 1836 #define APPL_TRACE_DEBUG2(m, p1, p2) \ 1837 { \ 1838 if (appl_trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1839 LogMsg_2(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1840 TRACE_TYPE_DEBUG, \ 1841 (m), (uintptr_t)(p1), (uintptr_t)(p2)); \ 1842 } 1843 #define APPL_TRACE_DEBUG3(m, p1, p2, p3) \ 1844 { \ 1845 if (appl_trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1846 LogMsg_3(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1847 TRACE_TYPE_DEBUG, \ 1848 (m), (uintptr_t)(p1), (uintptr_t)(p2), (uintptr_t)(p3)); \ 1849 } 1850 #define APPL_TRACE_DEBUG4(m, p1, p2, p3, p4) \ 1851 { \ 1852 if (appl_trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1853 LogMsg_4(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1854 TRACE_TYPE_DEBUG, \ 1855 (m), (uintptr_t)(p1), (uintptr_t)(p2), (uintptr_t)(p3), \ 1856 (uintptr_t)(p4)); \ 1857 } 1858 #define APPL_TRACE_DEBUG5(m, p1, p2, p3, p4, p5) \ 1859 { \ 1860 if (appl_trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1861 LogMsg_5(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1862 TRACE_TYPE_DEBUG, \ 1863 (m), (uintptr_t)(p1), (uintptr_t)(p2), (uintptr_t)(p3), \ 1864 (uintptr_t)(p4), (uintptr_t)(p5)); \ 1865 } 1866 #define APPL_TRACE_DEBUG6(m, p1, p2, p3, p4, p5, p6) \ 1867 { \ 1868 if (appl_trace_level >= BT_TRACE_LEVEL_DEBUG) \ 1869 LogMsg_6(TRACE_CTRL_GENERAL | TRACE_LAYER_NONE | TRACE_ORG_APPL | \ 1870 TRACE_TYPE_DEBUG, \ 1871 (m), (uintptr_t)(p1), (uintptr_t)(p2), (uintptr_t)(p3), \ 1872 (uintptr_t)(p4), (uintptr_t)(p5), (uintptr_t)(p6)); \ 1873 } 1874 1875 #endif /* BT_TRACE_H */ 1876