Merge branch '2022-04-01-Kconfig-migrations-and-cleanups' into next
[platform/kernel/u-boot.git] / include / log.h
index feb0204..8f35c10 100644 (file)
@@ -98,6 +98,8 @@ enum log_category_t {
        LOGC_ACPI,
        /** @LOGC_BOOT: Related to boot process / boot image processing */
        LOGC_BOOT,
+       /** @LOGC_EVENT: Related to event and event handling */
+       LOGC_EVENT,
        /** @LOGC_COUNT: Number of log categories */
        LOGC_COUNT,
        /** @LOGC_END: Sentinel value for lists of log categories */
@@ -174,6 +176,10 @@ int _log_buffer(enum log_category_t cat, enum log_level_t level,
  */
 #if CONFIG_IS_ENABLED(LOG)
 #define _LOG_MAX_LEVEL CONFIG_VAL(LOG_MAX_LEVEL)
+#else
+#define _LOG_MAX_LEVEL LOGL_INFO
+#endif
+
 #define log_emer(_fmt...)      log(LOG_CATEGORY, LOGL_EMERG, ##_fmt)
 #define log_alert(_fmt...)     log(LOG_CATEGORY, LOGL_ALERT, ##_fmt)
 #define log_crit(_fmt...)      log(LOG_CATEGORY, LOGL_CRIT, ##_fmt)
@@ -185,34 +191,19 @@ int _log_buffer(enum log_category_t cat, enum log_level_t level,
 #define log_content(_fmt...)   log(LOG_CATEGORY, LOGL_DEBUG_CONTENT, ##_fmt)
 #define log_io(_fmt...)                log(LOG_CATEGORY, LOGL_DEBUG_IO, ##_fmt)
 #define log_cont(_fmt...)      log(LOGC_CONT, LOGL_CONT, ##_fmt)
-#else
-#define _LOG_MAX_LEVEL LOGL_INFO
-#define log_emerg(_fmt, ...)   printf(_fmt, ##__VA_ARGS__)
-#define log_alert(_fmt, ...)   printf(_fmt, ##__VA_ARGS__)
-#define log_crit(_fmt, ...)    printf(_fmt, ##__VA_ARGS__)
-#define log_err(_fmt, ...)     printf(_fmt, ##__VA_ARGS__)
-#define log_warning(_fmt, ...) printf(_fmt, ##__VA_ARGS__)
-#define log_notice(_fmt, ...)  printf(_fmt, ##__VA_ARGS__)
-#define log_info(_fmt, ...)    printf(_fmt, ##__VA_ARGS__)
-#define log_cont(_fmt, ...)    printf(_fmt, ##__VA_ARGS__)
-#define log_debug(_fmt, ...)   debug(_fmt, ##__VA_ARGS__)
-#define log_content(_fmt...)   log_nop(LOG_CATEGORY, \
-                                       LOGL_DEBUG_CONTENT, ##_fmt)
-#define log_io(_fmt...)                log_nop(LOG_CATEGORY, LOGL_DEBUG_IO, ##_fmt)
-#endif
 
-#if CONFIG_IS_ENABLED(LOG)
 #ifdef LOG_DEBUG
 #define _LOG_DEBUG     LOGL_FORCE_DEBUG
 #else
 #define _LOG_DEBUG     0
 #endif
 
+#if CONFIG_IS_ENABLED(LOG)
+
 /* Emit a log record if the level is less that the maximum */
 #define log(_cat, _level, _fmt, _args...) ({ \
        int _l = _level; \
-       if (CONFIG_IS_ENABLED(LOG) && \
-           (_LOG_DEBUG != 0 || _l <= _LOG_MAX_LEVEL)) \
+       if (_LOG_DEBUG != 0 || _l <= _LOG_MAX_LEVEL) \
                _log((enum log_category_t)(_cat), \
                     (enum log_level_t)(_l | _LOG_DEBUG), __FILE__, \
                     __LINE__, __func__, \
@@ -229,7 +220,14 @@ int _log_buffer(enum log_category_t cat, enum log_level_t level,
                            _width, _count, _linelen); \
        })
 #else
-#define log(_cat, _level, _fmt, _args...)
+
+/* Note: _LOG_DEBUG != 0 avoids a warning with clang */
+#define log(_cat, _level, _fmt, _args...) ({ \
+       int _l = _level; \
+       if (_LOG_DEBUG != 0 || _l <= LOGL_INFO || \
+           (_DEBUG && _l == LOGL_DEBUG)) \
+               printf(_fmt, ##_args); \
+       })
 
 #define log_buffer(_cat, _level, _addr, _data, _width, _count, _linelen)  ({ \
        int _l = _level; \
@@ -664,7 +662,7 @@ int log_remove_filter(const char *drv_name, int filter_num);
  *
  * @drv: Driver of device to enable
  * @enable: true to enable, false to disable
- * @return 0 if OK, -ENOENT if the driver was not found
+ * Return: 0 if OK, -ENOENT if the driver was not found
  */
 int log_device_set_enable(struct log_driver *drv, bool enable);