42#define MAX_LOG_MSG_SIZE (2200u)
44#define GMSL_LOG_LEVEL_ERR 0x0
45#define GMSL_LOG_LEVEL_WARNING 0x1
46#define GMSL_LOG_LEVEL_INFO 0x2
47#define GMSL_LOG_LEVEL_DEBUG 0x3
53extern uint32_t gmsl_uc_log_msg_buf_length;
54extern void gmsl_uc_log_error(uint8_t *tx_data, uint32_t size);
55extern void gmsl_uc_log_debug(uint8_t *tx_data, uint32_t size);
56extern void gmsl_uc_log_info(uint8_t *tx_data, uint32_t size);
57extern void gmsl_uc_log_warning(uint8_t *tx_data, uint32_t size);
58extern void gmsl_uc_set_fatal_error(
void);
60#if (defined(GMSL_LOG_LEVEL) && (GMSL_LOG_LEVEL >= GMSL_LOG_LEVEL_ERR) && (GMSL_LOG_LEVEL <= GMSL_LOG_LEVEL_DEBUG))
61#define GMSL_LOG_ERROR(msg, ...) do {\
63 gmsl_uc_log_msg_buf_length = (uint32_t)snprintf((char*)&gmsl_uc_log_msg_buffer[0u], MAX_LOG_MSG_SIZE, (char *)(msg), ##__VA_ARGS__); \
65 gmsl_uc_log_error(gmsl_uc_log_msg_buffer, gmsl_uc_log_msg_buf_length); \
68#define GMSL_LOG_ERROR(msg, ...)
71#if (defined(GMSL_LOG_LEVEL) && (GMSL_LOG_LEVEL >= GMSL_LOG_LEVEL_WARNING) && (GMSL_LOG_LEVEL <= GMSL_LOG_LEVEL_DEBUG))
72#define GMSL_LOG_WARNING(msg, ...) do {\
74 gmsl_uc_log_msg_buf_length = (uint32_t)snprintf((char*)&gmsl_uc_log_msg_buffer[0u], MAX_LOG_MSG_SIZE, (char *)(msg), ##__VA_ARGS__); \
76 gmsl_uc_log_warning(gmsl_uc_log_msg_buffer, gmsl_uc_log_msg_buf_length); \
79#define GMSL_LOG_WARNING(msg, ...)
82#if (defined(GMSL_LOG_LEVEL) && (GMSL_LOG_LEVEL >= GMSL_LOG_LEVEL_INFO) && (GMSL_LOG_LEVEL <= GMSL_LOG_LEVEL_DEBUG))
83#define GMSL_LOG_INFO(msg, ...) do {\
85 gmsl_uc_log_msg_buf_length = (uint32_t)snprintf((char*)&gmsl_uc_log_msg_buffer[0u], MAX_LOG_MSG_SIZE, (char *)(msg), ##__VA_ARGS__); \
87 gmsl_uc_log_info(gmsl_uc_log_msg_buffer, gmsl_uc_log_msg_buf_length); \
90#define GMSL_LOG_INFO(msg, ...)
93#if (defined(GMSL_LOG_LEVEL) && (GMSL_LOG_LEVEL >= GMSL_LOG_LEVEL_DEBUG) && (GMSL_LOG_LEVEL <= GMSL_LOG_LEVEL_DEBUG))
94#define GMSL_LOG_DEBUG(msg, ...) do {\
96 gmsl_uc_log_msg_buf_length = (uint32_t)snprintf((char*)&gmsl_uc_log_msg_buffer[0u], MAX_LOG_MSG_SIZE, (char *)(msg), ##__VA_ARGS__); \
98 gmsl_uc_log_debug(gmsl_uc_log_msg_buffer, gmsl_uc_log_msg_buf_length); \
101#define GMSL_LOG_DEBUG(msg, ...)
104#if (defined(GMSL_LOG_LEVEL) && (GMSL_LOG_LEVEL >= GMSL_LOG_LEVEL_INFO) && (GMSL_LOG_LEVEL <= GMSL_LOG_LEVEL_DEBUG))
105#define GMSL_LOG_DIAG(current_diag_err, dev_name_str, dev_addr, msg, ...) do {\
106 if(true == current_diag_err)\
108 gmsl_uc_log_msg_buf_length = (uint32_t)snprintf((char*)&gmsl_uc_log_msg_buffer[0u], MAX_LOG_MSG_SIZE, "[%s-0x%x]"msg, dev_name_str, dev_addr, ##__VA_ARGS__); \
109 gmsl_uc_log_error(gmsl_uc_log_msg_buffer, gmsl_uc_log_msg_buf_length); \
113 gmsl_uc_log_msg_buf_length = (uint32_t)snprintf((char*)&gmsl_uc_log_msg_buffer[0u], MAX_LOG_MSG_SIZE, "[%s-0x%x]"msg, dev_name_str, dev_addr, ##__VA_ARGS__); \
114 gmsl_uc_log_info(gmsl_uc_log_msg_buffer, gmsl_uc_log_msg_buf_length); \
118#define GMSL_LOG_DIAG(current_diag_err, dev_name_str, dev_addr, msg, ...) do {\
119 if(true == current_diag_err)\
121 gmsl_uc_log_msg_buf_length = (uint32_t)snprintf((char*)&gmsl_uc_log_msg_buffer[0u], MAX_LOG_MSG_SIZE, "[%s-0x%x]"msg, dev_name_str, dev_addr, ##__VA_ARGS__); \
122 gmsl_uc_log_error(gmsl_uc_log_msg_buffer, gmsl_uc_log_msg_buf_length); \
127#define GMSL_LOG_DEV_ERROR(dev_name_str, dev_addr, msg, ...)\
129 gmsl_uc_log_msg_buf_length = (uint32_t)snprintf((char*)&gmsl_uc_log_msg_buffer[0u], MAX_LOG_MSG_SIZE, "[%s-0x%x]"msg, dev_name_str, dev_addr, ##__VA_ARGS__);\
130 gmsl_uc_log_error(gmsl_uc_log_msg_buffer, gmsl_uc_log_msg_buf_length);\
133#define GMSL_LOG_DEV_INFO(dev_name_str, dev_addr, msg, ...)\
135 gmsl_uc_log_msg_buf_length = (uint32_t)snprintf((char*)&gmsl_uc_log_msg_buffer[0u], MAX_LOG_MSG_SIZE, "[%s-0x%x]"msg, dev_name_str, dev_addr, ##__VA_ARGS__);\
136 gmsl_uc_log_info(gmsl_uc_log_msg_buffer, gmsl_uc_log_msg_buf_length);\
139#define GMSL_DBG_ERROR() {\
140 GMSL_LOG_ERROR("Fatal error!");\
141 gmsl_uc_set_fatal_error();\
144#define GMSL_DBG_REQUIRE(cond, errMsg) {\
146 GMSL_LOG_ERROR("Precondition error: " errMsg);\
147 gmsl_uc_set_fatal_error();\
154#define GMSL_LOG_ERROR(msg, ...)
155#define GMSL_LOG_WARNING(msg, ...)
156#define GMSL_LOG_INFO(msg, ...)
157#define GMSL_LOG_DEBUG(msg, ...)
159#define GMSL_LOG_DIAG(current_diag_err, dev_name_str, dev_addr, msg, ...)
160#define GMSL_LOG_DEV_ERROR(dev_name_str, dev_addr, msg, ...)
161#define GMSL_LOG_DEV_INFO(dev_name_str, dev_addr, msg, ...)
162#define GMSL_DBG_REQUIRE(cond, errMsg)
163#define GMSL_DBG_ERROR()
#define MAX_LOG_MSG_SIZE
Definition gmsl_dbg.h:42