log: Add control over log formatting
It is useful to be able to control the output format of log records on the console. As a starting point, add definitions for controlling which elements of the log record are displayed. Use function and message as the default, since these are the most useful fields. Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
f941c8d76c
commit
3b73e8d067
@ -307,6 +307,7 @@ int log_init(void)
|
||||
}
|
||||
gd->flags |= GD_FLG_LOG_READY;
|
||||
gd->default_log_level = LOGL_INFO;
|
||||
gd->log_fmt = LOGF_DEFAULT;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@ -119,6 +119,7 @@ typedef struct global_data {
|
||||
int log_drop_count; /* Number of dropped log messages */
|
||||
int default_log_level; /* For devices with no filters */
|
||||
struct list_head log_head; /* List of struct log_device */
|
||||
int log_fmt; /* Mask containing log format info */
|
||||
#endif
|
||||
} gd_t;
|
||||
#endif
|
||||
|
@ -291,6 +291,20 @@ const char *log_get_level_name(enum log_level_t level);
|
||||
*/
|
||||
enum log_level_t log_get_level_by_name(const char *name);
|
||||
|
||||
/* Log format flags (bit numbers) for gd->log_fmt. See log_fmt_chars */
|
||||
enum log_fmt {
|
||||
LOGF_CAT = 0,
|
||||
LOGF_LEVEL,
|
||||
LOGF_FILE,
|
||||
LOGF_LINE,
|
||||
LOGF_FUNC,
|
||||
LOGF_MSG,
|
||||
|
||||
LOGF_COUNT,
|
||||
LOGF_DEFAULT = (1 << LOGF_FUNC) | (1 << LOGF_MSG),
|
||||
LOGF_ALL = 0x3f,
|
||||
};
|
||||
|
||||
/* Handle the 'log test' command */
|
||||
int do_log_test(cmd_tbl_t *cmdtp, int flag, int argc, char *const argv[]);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user