mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-24 21:54:01 +00:00
log: convert pr_*() to logging
In drivers we use a family of printing functions including pr_err() and pr_cont(). CONFIG_LOGLEVEL is used to control which of these lead to output via printf(). Our logging functions allow finer grained control of output. So replace printf() by the matching logging functions. The usage of CONFIG_LOGLEVEL remains unchanged. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
This commit is contained in:
parent
1afb9f2222
commit
e86ad666d0
2 changed files with 48 additions and 38 deletions
|
@ -6,7 +6,6 @@
|
|||
#include <asm/types.h>
|
||||
#include <asm-generic/bitsperlong.h>
|
||||
#include <linux/compiler.h>
|
||||
#include <linux/kernel.h>
|
||||
|
||||
#ifdef __KERNEL__
|
||||
#define BIT(nr) (1UL << (nr))
|
||||
|
@ -19,6 +18,9 @@
|
|||
#define BITS_TO_LONGS(nr) DIV_ROUND_UP(nr, BITS_PER_BYTE * sizeof(long))
|
||||
#endif
|
||||
|
||||
/* kernel.h includes log.h which include bitops.h */
|
||||
#include <linux/kernel.h>
|
||||
|
||||
/*
|
||||
* Create a contiguous bitmask starting at bit position @l and ending at
|
||||
* position @h. For example
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
#ifndef __KERNEL_PRINTK__
|
||||
#define __KERNEL_PRINTK__
|
||||
|
||||
#include <log.h>
|
||||
#include <stdio.h>
|
||||
#include <linux/compiler.h>
|
||||
|
||||
|
@ -28,49 +29,56 @@
|
|||
0; \
|
||||
})
|
||||
|
||||
#define __printk(level, fmt, ...) \
|
||||
({ \
|
||||
level < CONFIG_LOGLEVEL ? printk(fmt, ##__VA_ARGS__) : 0; \
|
||||
})
|
||||
|
||||
#ifndef pr_fmt
|
||||
#define pr_fmt(fmt) fmt
|
||||
#endif
|
||||
|
||||
#define pr_emerg(fmt, ...) \
|
||||
__printk(0, pr_fmt(fmt), ##__VA_ARGS__)
|
||||
({ \
|
||||
CONFIG_LOGLEVEL > 0 ? log_emerg(fmt, ##__VA_ARGS__) : 0; \
|
||||
})
|
||||
#define pr_alert(fmt, ...) \
|
||||
__printk(1, pr_fmt(fmt), ##__VA_ARGS__)
|
||||
({ \
|
||||
CONFIG_LOGLEVEL > 1 ? log_alert(fmt, ##__VA_ARGS__) : 0; \
|
||||
})
|
||||
#define pr_crit(fmt, ...) \
|
||||
__printk(2, pr_fmt(fmt), ##__VA_ARGS__)
|
||||
({ \
|
||||
CONFIG_LOGLEVEL > 2 ? log_crit(fmt, ##__VA_ARGS__) : 0; \
|
||||
})
|
||||
#define pr_err(fmt, ...) \
|
||||
__printk(3, pr_fmt(fmt), ##__VA_ARGS__)
|
||||
#define pr_warning(fmt, ...) \
|
||||
__printk(4, pr_fmt(fmt), ##__VA_ARGS__)
|
||||
#define pr_warn pr_warning
|
||||
({ \
|
||||
CONFIG_LOGLEVEL > 3 ? log_err(fmt, ##__VA_ARGS__) : 0; \
|
||||
})
|
||||
#define pr_warn(fmt, ...) \
|
||||
({ \
|
||||
CONFIG_LOGLEVEL > 4 ? log_warning(fmt, ##__VA_ARGS__) : 0; \
|
||||
})
|
||||
#define pr_notice(fmt, ...) \
|
||||
__printk(5, pr_fmt(fmt), ##__VA_ARGS__)
|
||||
({ \
|
||||
CONFIG_LOGLEVEL > 5 ? log_notice(fmt, ##__VA_ARGS__) : 0; \
|
||||
})
|
||||
#define pr_info(fmt, ...) \
|
||||
__printk(6, pr_fmt(fmt), ##__VA_ARGS__)
|
||||
({ \
|
||||
CONFIG_LOGLEVEL > 6 ? log_info(fmt, ##__VA_ARGS__) : 0; \
|
||||
})
|
||||
#define pr_debug(fmt, ...) \
|
||||
({ \
|
||||
CONFIG_LOGLEVEL > 7 ? log_debug(fmt, ##__VA_ARGS__) : 0; \
|
||||
})
|
||||
#define pr_devel(fmt, ...) \
|
||||
({ \
|
||||
CONFIG_LOGLEVEL > 7 ? log_debug(fmt, ##__VA_ARGS__) : 0; \
|
||||
})
|
||||
|
||||
#ifdef CONFIG_LOG
|
||||
#define pr_cont(fmt, ...) \
|
||||
({ \
|
||||
gd->logl_prev < CONFIG_LOGLEVEL ? \
|
||||
log_cont(fmt, ##__VA_ARGS__) : 0; \
|
||||
})
|
||||
#else
|
||||
#define pr_cont(fmt, ...) \
|
||||
printk(fmt, ##__VA_ARGS__)
|
||||
|
||||
/* pr_devel() should produce zero code unless DEBUG is defined */
|
||||
#ifdef DEBUG
|
||||
#define pr_devel(fmt, ...) \
|
||||
__printk(7, pr_fmt(fmt), ##__VA_ARGS__)
|
||||
#else
|
||||
#define pr_devel(fmt, ...) \
|
||||
no_printk(pr_fmt(fmt), ##__VA_ARGS__)
|
||||
#endif
|
||||
|
||||
#ifdef DEBUG
|
||||
#define pr_debug(fmt, ...) \
|
||||
__printk(7, pr_fmt(fmt), ##__VA_ARGS__)
|
||||
#else
|
||||
#define pr_debug(fmt, ...) \
|
||||
no_printk(pr_fmt(fmt), ##__VA_ARGS__)
|
||||
#endif
|
||||
|
||||
#define printk_once(fmt, ...) \
|
||||
|
|
Loading…
Reference in a new issue