瀏覽代碼

qcacmn: Add several QDF logging APIs

For use by various QDF features, add the following convenience logging
APIs. These APIs mirror logging helpers used by other components.

	* qdf_alert
	* qdf_err
	* qdf_warn
	* qdf_info
	* qdf_vtrace_msg

Change-Id: I0e9194eeaf34ffca2b2130c4a7e62300e2e41ecc
CRs-Fixed: 2144969
Dustin Brown 7 年之前
父節點
當前提交
013400c3e1
共有 3 個文件被更改,包括 42 次插入4 次删除
  1. 33 4
      qdf/inc/qdf_types.h
  2. 2 0
      qdf/linux/src/i_qdf_trace.h
  3. 7 0
      qdf/linux/src/qdf_trace.c

+ 33 - 4
qdf/inc/qdf_types.h

@@ -42,6 +42,7 @@
 
 /* Include Files */
 #include <i_qdf_types.h>
+#include <stdarg.h>
 
 /* Preprocessor definitions and constants */
 #define QDF_MAX_SGLIST 4
@@ -543,17 +544,45 @@ enum tQDF_GLOBAL_CON_MODE {
  */
 void __printf(3, 4) qdf_trace_msg(QDF_MODULE_ID module, QDF_TRACE_LEVEL level,
 		   char *str_format, ...);
+/**
+ * qdf_vtrace_msg() - the va_list version of qdf_trace_msg
+ * @module: the calling module's Id
+ * @level: the logging level to log using
+ * @str_format: the log format string
+ * @val: the va_list containing the values to format according to str_format
+ *
+ * Return: None
+ */
+void qdf_vtrace_msg(QDF_MODULE_ID module, QDF_TRACE_LEVEL level,
+		    char *str_format, va_list val);
 
 #ifdef CONFIG_MCL
 #define qdf_print(args...) \
 	QDF_TRACE(QDF_MODULE_ID_QDF, QDF_TRACE_LEVEL_ERROR, ## args)
 
-#define qdf_debug(args...) \
-	QDF_TRACE(QDF_MODULE_ID_QDF, QDF_TRACE_LEVEL_DEBUG, ## args)
+#define qdf_logfl(level, format, args...) \
+	QDF_TRACE(QDF_MODULE_ID_QDF, level, FL(format), ## args)
+
+#define qdf_alert(format, args...) \
+	qdf_logfl(QDF_TRACE_LEVEL_FATAL, format, ## args)
+#define qdf_err(format, args...) \
+	qdf_logfl(QDF_TRACE_LEVEL_ERROR, format, ## args)
+#define qdf_warn(format, args...) \
+	qdf_logfl(QDF_TRACE_LEVEL_WARN, format, ## args)
+#define qdf_info(format, args...) \
+	qdf_logfl(QDF_TRACE_LEVEL_INFO, format, ## args)
+#define qdf_debug(format, args...) \
+	qdf_logfl(QDF_TRACE_LEVEL_DEBUG, format, ## args)
+
+#else /* CONFIG_MCL */
 
-#else
-#define qdf_debug printk
 #define qdf_print printk
+#define qdf_alert printk
+#define qdf_err printk
+#define qdf_warn printk
+#define qdf_info printk
+#define qdf_debug printk
+
 #endif /* CONFIG_MCL */
 
 #define qdf_vprint    __qdf_vprint

+ 2 - 0
qdf/linux/src/i_qdf_trace.h

@@ -56,6 +56,7 @@
  */
 #if defined(WLAN_DEBUG) || defined(DEBUG)
 #define QDF_TRACE qdf_trace_msg
+#define QDF_VTRACE qdf_vtrace_msg
 #define QDF_TRACE_HEX_DUMP qdf_trace_hex_dump
 #define QDF_TRACE_RATE_LIMITED(rate, module, level, format, ...)\
 	do {\
@@ -68,6 +69,7 @@
 	} while (0)
 #else
 #define QDF_TRACE(arg ...)
+#define QDF_VTRACE(arg ...)
 #define QDF_TRACE_HEX_DUMP(arg ...)
 #define QDF_TRACE_RATE_LIMITED(arg ...)
 #endif

+ 7 - 0
qdf/linux/src/qdf_trace.c

@@ -321,6 +321,13 @@ void qdf_trace_msg(QDF_MODULE_ID module, QDF_TRACE_LEVEL level,
 }
 EXPORT_SYMBOL(qdf_trace_msg);
 
+void qdf_vtrace_msg(QDF_MODULE_ID module, QDF_TRACE_LEVEL level,
+		    char *str_format, va_list val)
+{
+	qdf_trace_msg_cmn(qdf_pidx, module, level, str_format, val);
+}
+EXPORT_SYMBOL(qdf_vtrace_msg);
+
 #define ROW_SIZE 16
 /* Buffer size = data bytes(2 hex chars plus space) + NULL */
 #define BUFFER_SIZE ((ROW_SIZE * 3) + 1)