diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2013-02-04 15:48:51 +0100 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2013-02-04 15:48:51 +0100 |
commit | 22e254480982a45b44b425a25f3262b72da4ed0d (patch) | |
tree | 83256d0ad6ccdfe0f368283b823b855dc5ad0b2e /include | |
parent | db63bd8e10abf033e0a49932e2319a76b0fa9c1b (diff) | |
parent | a81c6a9f16db267aad65f13ced0e25b91cbca179 (diff) | |
download | barebox-22e254480982a45b44b425a25f3262b72da4ed0d.tar.gz barebox-22e254480982a45b44b425a25f3262b72da4ed0d.tar.xz |
Merge branch 'for-next/compile-log-level'
Conflicts:
drivers/usb/host/ehci-hcd.c
Diffstat (limited to 'include')
-rw-r--r-- | include/common.h | 17 | ||||
-rw-r--r-- | include/driver.h | 29 | ||||
-rw-r--r-- | include/linux/mtd/mtd.h | 2 | ||||
-rw-r--r-- | include/printk.h | 72 |
4 files changed, 74 insertions, 46 deletions
diff --git a/include/common.h b/include/common.h index 2c707f730e..56347df2c4 100644 --- a/include/common.h +++ b/include/common.h @@ -29,6 +29,7 @@ #include <linux/kernel.h> #include <linux/stddef.h> #include <asm/common.h> +#include <printk.h> /* * sanity check. The Linux Kernel defines only one of __LITTLE_ENDIAN and @@ -48,22 +49,6 @@ #error "None of __LITTLE_ENDIAN and __BIG_ENDIAN are defined" #endif -#define pr_info(fmt, arg...) printf(fmt, ##arg) -#define pr_notice(fmt, arg...) printf(fmt, ##arg) -#define pr_err(fmt, arg...) printf(fmt, ##arg) -#define pr_warning(fmt, arg...) printf(fmt, ##arg) -#define pr_crit(fmt, arg...) printf(fmt, ##arg) -#define pr_alert(fmt, arg...) printf(fmt, ##arg) -#define pr_emerg(fmt, arg...) printf(fmt, ##arg) - -#ifdef DEBUG -#define pr_debug(fmt, arg...) printf(fmt, ##arg) -#else -#define pr_debug(fmt, arg...) do {} while(0) -#endif - -#define debug(fmt, arg...) pr_debug(fmt, ##arg) - #define BUG() do { \ printf("BUG: failure at %s:%d/%s()!\n", __FILE__, __LINE__, __FUNCTION__); \ panic("BUG!"); \ diff --git a/include/driver.h b/include/driver.h index 7ad0374f81..31f5d69848 100644 --- a/include/driver.h +++ b/include/driver.h @@ -358,35 +358,6 @@ static inline int dev_close_default(struct device_d *dev, struct filep *f) return 0; } -/* debugging and troubleshooting/diagnostic helpers. */ - -int dev_printf(const struct device_d *dev, const char *format, ...) - __attribute__ ((format(__printf__, 2, 3))); - - -#define dev_emerg(dev, format, arg...) \ - dev_printf((dev) , format , ## arg) -#define dev_alert(dev, format, arg...) \ - dev_printf((dev) , format , ## arg) -#define dev_crit(dev, format, arg...) \ - dev_printf((dev) , format , ## arg) -#define dev_err(dev, format, arg...) \ - dev_printf(dev , format , ## arg) -#define dev_warn(dev, format, arg...) \ - dev_printf((dev) , format , ## arg) -#define dev_notice(dev, format, arg...) \ - dev_printf((dev) , format , ## arg) -#define dev_info(dev, format, arg...) \ - dev_printf((dev) , format , ## arg) - -#if defined(DEBUG) -#define dev_dbg(dev, format, arg...) \ - dev_printf((dev) , format , ## arg) -#else -#define dev_dbg(dev, format, arg...) \ - ({ if (0) dev_printf((dev), format, ##arg); 0; }) -#endif - struct bus_type { char *name; int (*match)(struct device_d *dev, struct driver_d *drv); diff --git a/include/linux/mtd/mtd.h b/include/linux/mtd/mtd.h index be8ad71df4..cb8b3bcaef 100644 --- a/include/linux/mtd/mtd.h +++ b/include/linux/mtd/mtd.h @@ -265,7 +265,7 @@ int mtd_block_isbad(struct mtd_info *mtd, loff_t ofs); #define MTD_DEBUG(n, args...) \ do { \ if (n <= CONFIG_MTD_DEBUG_VERBOSE) \ - printk(KERN_INFO args); \ + pr_info( args); \ } while(0) #else /* CONFIG_MTD_DEBUG */ #define MTD_DEBUG(n, args...) do { } while(0) diff --git a/include/printk.h b/include/printk.h new file mode 100644 index 0000000000..1d45616f54 --- /dev/null +++ b/include/printk.h @@ -0,0 +1,72 @@ +#ifndef __PRINTK_H +#define __PRINTK_H + +#define MSG_EMERG 0 /* system is unusable */ +#define MSG_ALERT 1 /* action must be taken immediately */ +#define MSG_CRIT 2 /* critical conditions */ +#define MSG_ERR 3 /* error conditions */ +#define MSG_WARNING 4 /* warning conditions */ +#define MSG_NOTICE 5 /* normal but significant condition */ +#define MSG_INFO 6 /* informational */ +#define MSG_DEBUG 7 /* debug-level messages */ + +#ifdef DEBUG +#define LOGLEVEL MSG_DEBUG +#else +#define LOGLEVEL CONFIG_COMPILE_LOGLEVEL +#endif + +/* debugging and troubleshooting/diagnostic helpers. */ + +int dev_printf(const struct device_d *dev, const char *format, ...) + __attribute__ ((format(__printf__, 2, 3))); + +#define __dev_printf(level, dev, format, args...) \ + ({ \ + int ret = 0; \ + if (level <= LOGLEVEL) \ + ret = dev_printf(dev, format, ##args); \ + ret; \ + }) + + +#define dev_emerg(dev, format, arg...) \ + __dev_printf(0, (dev) , format , ## arg) +#define dev_alert(dev, format, arg...) \ + __dev_printf(1, (dev) , format , ## arg) +#define dev_crit(dev, format, arg...) \ + __dev_printf(2, (dev) , format , ## arg) +#define dev_err(dev, format, arg...) \ + __dev_printf(3, (dev) , format , ## arg) +#define dev_warn(dev, format, arg...) \ + __dev_printf(4, (dev) , format , ## arg) +#define dev_notice(dev, format, arg...) \ + __dev_printf(5, (dev) , format , ## arg) +#define dev_info(dev, format, arg...) \ + __dev_printf(6, (dev) , format , ## arg) +#define dev_dbg(dev, format, arg...) \ + __dev_printf(7, (dev) , format , ## arg) + +#define __pr_printk(level, format, args...) \ + ({ \ + int ret = 0; \ + if (level <= LOGLEVEL) \ + ret = printk(format, ##args); \ + ret; \ + }) + +#ifndef pr_fmt +#define pr_fmt(fmt) fmt +#endif + +#define pr_emerg(fmt, arg...) __pr_printk(0, pr_fmt(fmt), ##arg) +#define pr_alert(fmt, arg...) __pr_printk(1, pr_fmt(fmt), ##arg) +#define pr_crit(fmt, arg...) __pr_printk(2, pr_fmt(fmt), ##arg) +#define pr_warning(fmt, arg...) __pr_printk(3, pr_fmt(fmt), ##arg) +#define pr_err(fmt, arg...) __pr_printk(4, pr_fmt(fmt), ##arg) +#define pr_notice(fmt, arg...) __pr_printk(5, pr_fmt(fmt), ##arg) +#define pr_info(fmt, arg...) __pr_printk(6, pr_fmt(fmt), ##arg) +#define pr_debug(fmt, arg...) __pr_printk(7, pr_fmt(fmt), ##arg) +#define debug(fmt, arg...) __pr_printk(7, pr_fmt(fmt), ##arg) + +#endif |