qcacmn: Add per-level logging wrapper APIs

Depending on platform limitations and the intended audience of a
particular WLAN driver build, it would be useful to be able to compile
out specific logging level logs completely. To that end, introduce
per-level logging wrappers, which can be compiled in or out by the build
configuration.

Change-Id: Ie062ada403f8a31aebcde691396987ad9e5352b5
CRs-Fixed: 2205888
This commit is contained in:
Dustin Brown
2018-03-14 13:47:22 -07:00
committed by nshrivas
parent 9a94c9a29d
commit 385b73090f
2 changed files with 63 additions and 13 deletions

View File

@@ -101,6 +101,64 @@
#define QDF_TRACE_HEX_DUMP qdf_trace_hex_dump
#endif /* CONFIG_MCL */
#define __QDF_TRACE_FL(log_level, module_id, format, args...) \
QDF_TRACE(module_id, log_level, FL(format), ## args)
#define __QDF_TRACE_RL(log_level, module_id, format, args...) \
QDF_TRACE_RATE_LIMITED(module_id, log_level, FL(format), ## args)
static inline void __qdf_trace_noop(QDF_MODULE_ID module, char *format, ...) { }
#ifdef WLAN_LOG_FATAL
#define QDF_TRACE_FATAL(params...) \
__QDF_TRACE_FL(QDF_TRACE_LEVEL_FATAL, ## params)
#define QDF_TRACE_FATAL_RL(params...) \
__QDF_TRACE_RL(QDF_TRACE_LEVEL_FATAL, ## params)
#else
#define QDF_TRACE_FATAL(params...) __qdf_trace_noop(params)
#define QDF_TRACE_FATAL_RL(params...) __qdf_trace_noop(params)
#endif
#ifdef WLAN_LOG_ERROR
#define QDF_TRACE_ERROR(params...) \
__QDF_TRACE_FL(QDF_TRACE_LEVEL_ERROR, ## params)
#define QDF_TRACE_ERROR_RL(params...) \
__QDF_TRACE_RL(QDF_TRACE_LEVEL_ERROR, ## params)
#else
#define QDF_TRACE_ERROR(params...) __qdf_trace_noop(params)
#define QDF_TRACE_ERROR_RL(params...) __qdf_trace_noop(params)
#endif
#ifdef WLAN_LOG_WARN
#define QDF_TRACE_WARN(params...) \
__QDF_TRACE_FL(QDF_TRACE_LEVEL_WARN, ## params)
#define QDF_TRACE_WARN_RL(params...) \
__QDF_TRACE_RL(QDF_TRACE_LEVEL_WARN, ## params)
#else
#define QDF_TRACE_WARN(params...) __qdf_trace_noop(params)
#define QDF_TRACE_WARN_RL(params...) __qdf_trace_noop(params)
#endif
#ifdef WLAN_LOG_INFO
#define QDF_TRACE_INFO(params...) \
__QDF_TRACE_FL(QDF_TRACE_LEVEL_INFO, ## params)
#define QDF_TRACE_INFO_RL(params...) \
__QDF_TRACE_RL(QDF_TRACE_LEVEL_INFO, ## params)
#else
#define QDF_TRACE_INFO(params...) __qdf_trace_noop(params)
#define QDF_TRACE_INFO_RL(params...) __qdf_trace_noop(params)
#endif
#ifdef WLAN_LOG_DEBUG
#define QDF_TRACE_DEBUG(params...) \
__QDF_TRACE_FL(QDF_TRACE_LEVEL_DEBUG, ## params)
#define QDF_TRACE_DEBUG_RL(params...) \
__QDF_TRACE_RL(QDF_TRACE_LEVEL_DEBUG, ## params)
#else
#define QDF_TRACE_DEBUG(params...) __qdf_trace_noop(params)
#define QDF_TRACE_DEBUG_RL(params...) __qdf_trace_noop(params)
#endif
#define QDF_ENABLE_TRACING
#define qdf_scnprintf scnprintf