189 lines
6.6 KiB
C
189 lines
6.6 KiB
C
#ifndef __BESBLE_DEBUG_H
|
|
#define __BESBLE_DEBUG_H
|
|
|
|
#include "hal_uart.h"
|
|
|
|
const char *DebugMask2Prefix(uint8_t mask);
|
|
|
|
#define DEBUG_PREFIX_FORMAT "%s<%s> "
|
|
#define DEBUG_SUFFIX_FORMAT "\n"
|
|
|
|
#define LOG_HCI_TAG "[BLE HCI]: "
|
|
#define LOG_L2C_TAG "[BLE L2C]: "
|
|
#define LOG_ATT_TAG "[BLE ATT]: "
|
|
#define LOG_GATT_TAG "[BLE GATT]: "
|
|
#define LOG_SMP_TAG "[BLE SMP]: "
|
|
|
|
#define LOG_GAP_TAG "[BLE GAP]: "
|
|
#define LOG_APP_TAG "[BLE APP]: "
|
|
#define LOG_BLE_TAG "[BLE]: "
|
|
#define LOG_HTP_TAG "[BLE HTP]: "
|
|
|
|
#define GAP_ERROR 1
|
|
#define GAP_OUT 2
|
|
#define GATT_ERROR 3
|
|
#define GATT_OUT 4
|
|
#define ATT_ERROR 5
|
|
#define ATT_OUT 6
|
|
#define L2C_ERROR 7
|
|
#define L2C_OUT 8
|
|
#define HCI_ERROR 9
|
|
#define HCI_OUT 10
|
|
#define SMP_ERROR 11
|
|
#define SMP_OUT 12
|
|
#define APP_ERROR 13
|
|
#define APP_OUT 14
|
|
/* Profile macro start */
|
|
#define PRF_HT_ERROR 15
|
|
#define PRF_HT_OUT 16
|
|
/* Profile macro end */
|
|
#define BLE_ERROR 30
|
|
#define BLE_OUT 31
|
|
|
|
#define DebugOut(mask, str, ...) \
|
|
do \
|
|
{ \
|
|
const char *prefix = NULL; \
|
|
prefix = DebugMask2Prefix(mask); \
|
|
TRACE(1, DEBUG_PREFIX_FORMAT, prefix, __FUNCTION__); \
|
|
TRACE(1, str, ##__VA_ARGS__); \
|
|
} while (0)
|
|
|
|
#if 0
|
|
#define DEBUG_HCI_DBG 1
|
|
#define DEBUG_GAP_DBG 0
|
|
#define DEBUG_GATT_DBG 0
|
|
#define DEBUG_ATT_DBG 0
|
|
#define DEBUG_L2C_DBG 0
|
|
#define DEBUG_SMP_DBG 0
|
|
#define DEBUG_APP_DBG 0
|
|
#define DEBUG_PRF_DBG 0
|
|
#define DEBUG_BLE_DBG 0
|
|
|
|
#else
|
|
/* ble debug macro switch */
|
|
#define DEBUG_HCI_DBG 0
|
|
#define DEBUG_GAP_DBG 0
|
|
#define DEBUG_GATT_DBG 0
|
|
#define DEBUG_ATT_DBG 0
|
|
#define DEBUG_L2C_DBG 0
|
|
#define DEBUG_SMP_DBG 0
|
|
#define DEBUG_APP_DBG 0
|
|
#define DEBUG_PRF_DBG 0
|
|
#define DEBUG_BLE_DBG 0
|
|
#endif
|
|
|
|
#if DEBUG_HCI_DBG
|
|
#define BLE_HCI_DBG(str,...) DebugOut(HCI_OUT, str, ##__VA_ARGS__)
|
|
#define BLE_HCI_ERR(str,...) DebugOut(HCI_ERROR, str, ##__VA_ARGS__)
|
|
#define BLE_HCI_FUNC_ENTER() TRACE(LOG_BLE_TAG"%s line: %d +++\n", __FUNCTION__, __LINE__)
|
|
#define BLE_HCI_FUNC_LEAVE() TRACE(LOG_BLE_TAG"%s line: %d ---\n", __FUNCTION__, __LINE__)
|
|
#else
|
|
#define BLE_HCI_DBG(str,...)
|
|
#define BLE_HCI_ERR(str,...) DebugOut(HCI_ERROR, str, ##__VA_ARGS__)
|
|
#define BLE_HCI_FUNC_ENTER()
|
|
#define BLE_HCI_FUNC_LEAVE()
|
|
#endif
|
|
|
|
#if DEBUG_GAP_DBG
|
|
#define BLE_GAP_DBG(str,...) DebugOut(GAP_OUT, str, ##__VA_ARGS__)
|
|
#define BLE_GAP_ERR(str,...) DebugOut(GAP_ERROR, str, ##__VA_ARGS__)
|
|
#define BLE_GAP_FUNC_ENTER() TRACE(LOG_GAP_TAG"%s line: %d +++\n", __FUNCTION__, __LINE__)
|
|
#define BLE_GAP_FUNC_LEAVE() TRACE(LOG_GAP_TAG"%s line: %d ---\n", __FUNCTION__, __LINE__)
|
|
#else
|
|
#define BLE_GAP_DBG(str,...)
|
|
#define BLE_GAP_ERR(str,...) DebugOut(GAP_ERROR, str, ##__VA_ARGS__)
|
|
#define BLE_GAP_FUNC_ENTER()
|
|
#define BLE_GAP_FUNC_LEAVE()
|
|
#endif
|
|
|
|
#if DEBUG_GATT_DBG
|
|
#define BLE_GATT_DBG(str,...) DebugOut(GATT_OUT, str, ##__VA_ARGS__)
|
|
#define BLE_GATT_ERR(str,...) DebugOut(GATT_ERROR, str, ##__VA_ARGS__)
|
|
#define BLE_GATT_FUNC_ENTER() TRACE(LOG_GATT_TAG"%s line: %d +++\n", __FUNCTION__, __LINE__)
|
|
#define BLE_GATT_FUNC_LEAVE() TRACE(LOG_GATT_TAG"%s line: %d ---\n", __FUNCTION__, __LINE__)
|
|
#else
|
|
#define BLE_GATT_DBG(str,...)
|
|
#define BLE_GATT_ERR(str,...) DebugOut(GATT_ERROR, str, ##__VA_ARGS__)
|
|
#define BLE_GATT_FUNC_ENTER()
|
|
#define BLE_GATT_FUNC_LEAVE()
|
|
#endif
|
|
|
|
#if DEBUG_ATT_DBG
|
|
#define BLE_ATT_DBG(str,...) DebugOut(ATT_OUT, str, ##__VA_ARGS__)
|
|
#define BLE_ATT_ERR(str,...) DebugOut(ATT_ERROR, str, ##__VA_ARGS__)
|
|
#define BLE_ATT_FUNC_ENTER() TRACE(LOG_ATT_TAG"%s line: %d +++\n", __FUNCTION__, __LINE__)
|
|
#define BLE_ATT_FUNC_LEAVE() TRACE(LOG_ATT_TAG"%s line: %d ---\n", __FUNCTION__, __LINE__)
|
|
#else
|
|
#define BLE_ATT_DBG(str,...)
|
|
#define BLE_ATT_ERR(str,...) DebugOut(ATT_ERROR, str, ##__VA_ARGS__)
|
|
#define BLE_ATT_FUNC_ENTER()
|
|
#define BLE_ATT_FUNC_LEAVE()
|
|
#endif
|
|
|
|
#if DEBUG_L2C_DBG
|
|
#define BLE_L2C_DBG(str,...) DebugOut(L2C_OUT, str, ##__VA_ARGS__)
|
|
#define BLE_L2C_ERR(str,...) DebugOut(L2C_ERROR, str, ##__VA_ARGS__)
|
|
#define BLE_L2C_FUNC_ENTER() TRACE(LOG_L2C_TAG"%s line: %d +++\n", __FUNCTION__, __LINE__)
|
|
#define BLE_L2C_FUNC_LEAVE() TRACE(LOG_L2C_TAG"%s line: %d ---\n", __FUNCTION__, __LINE__)
|
|
#else
|
|
#define BLE_L2C_DBG(str,...)
|
|
#define BLE_L2C_ERR(str,...) DebugOut(L2C_ERROR, str, ##__VA_ARGS__)
|
|
#define BLE_L2C_FUNC_ENTER()
|
|
#define BLE_L2C_FUNC_LEAVE()
|
|
#endif
|
|
|
|
#if DEBUG_L2C_DBG
|
|
#define BLE_SMP_DBG(str,...) DebugOut(SMP_OUT, str, ##__VA_ARGS__)
|
|
#define BLE_SMP_ERR(str,...) DebugOut(SMP_ERROR, str, ##__VA_ARGS__)
|
|
#define BLE_SMP_FUNC_ENTER() TRACE(LOG_SMP_TAG"%s line: %d +++\n", __FUNCTION__, __LINE__)
|
|
#define BLE_SMP_FUNC_LEAVE() TRACE(LOG_SMP_TAG"%s line: %d ---\n", __FUNCTION__, __LINE__)
|
|
#else
|
|
#define BLE_SMP_DBG(str,...)
|
|
#define BLE_SMP_ERR(str,...) DebugOut(SMP_ERROR, str, ##__VA_ARGS__)
|
|
#define BLE_SMP_FUNC_ENTER()
|
|
#define BLE_SMP_FUNC_LEAVE()
|
|
#endif
|
|
|
|
#if DEBUG_APP_DBG
|
|
#define BLE_APP_DBG(str,...) DebugOut(APP_OUT, str, ##__VA_ARGS__)
|
|
#define BLE_APP_ERR(str,...) DebugOut(APP_ERROR, str, ##__VA_ARGS__)
|
|
#define BLE_APP_FUNC_ENTER() TRACE(LOG_APP_TAG"%s line: %d +++\n", __FUNCTION__, __LINE__)
|
|
#define BLE_APP_FUNC_LEAVE() TRACE(LOG_APP_TAG"%s line: %d ---\n", __FUNCTION__, __LINE__)
|
|
#else
|
|
#define BLE_APP_DBG(str,...)
|
|
#define BLE_APP_ERR(str,...) DebugOut(APP_ERROR, str, ##__VA_ARGS__)
|
|
#define BLE_APP_FUNC_ENTER()
|
|
#define BLE_APP_FUNC_LEAVE()
|
|
#endif
|
|
|
|
#if DEBUG_PRF_DBG
|
|
#define BLE_PRF_HP_DBG(str,...) DebugOut(PRF_HT_OUT, str, ##__VA_ARGS__)
|
|
#define BLE_PRF_HP_ERR(str,...) DebugOut(PRF_HT_ERROR, str, ##__VA_ARGS__)
|
|
#define BLE_PRF_HP_FUNC_ENTER() TRACE(LOG_HTP_TAG"%s line: %d +++\n", __FUNCTION__, __LINE__)
|
|
#define BLE_PRF_HP_FUNC_LEAVE() TRACE(LOG_HTP_TAG"%s line: %d ---\n", __FUNCTION__, __LINE__)
|
|
#else
|
|
#define BLE_PRF_HP_DBG(str,...)
|
|
#define BLE_PRF_HP_ERR(str,...) DebugOut(PRF_HT_ERROR, str, ##__VA_ARGS__)
|
|
#define BLE_PRF_HP_FUNC_ENTER()
|
|
#define BLE_PRF_HP_FUNC_LEAVE()
|
|
#endif
|
|
|
|
#if DEBUG_BLE_DBG
|
|
#define BLE_DBG(str,...) DebugOut(BLE_OUT, str, ##__VA_ARGS__)
|
|
#define BLE_ERR(str,...) DebugOut(BLE_ERROR, str, ##__VA_ARGS__)
|
|
#define BLE_FUNC_ENTER() TRACE(LOG_BLE_TAG"%s line: %d +++\n", __FUNCTION__, __LINE__)
|
|
#define BLE_FUNC_LEAVE() TRACE(LOG_BLE_TAG"%s line: %d ---\n", __FUNCTION__, __LINE__)
|
|
#define BLE_DUMP8(x,y,z) DUMP8(x,y,z)
|
|
|
|
#else
|
|
#define BLE_DBG(str,...)
|
|
#define BLE_ERR(str,...) DebugOut(BLE_ERROR, str, ##__VA_ARGS__)
|
|
#define BLE_FUNC_ENTER()
|
|
#define BLE_FUNC_LEAVE()
|
|
#define BLE_DUMP8(x,y,z)
|
|
|
|
#endif
|
|
|
|
#endif
|