#ifndef __KERNEL_PRINTK__ #define __KERNEL_PRINTK__ #include #include #include #define KERN_EMERG #define KERN_ALERT #define KERN_CRIT #define KERN_ERR #define KERN_WARNING #define KERN_NOTICE #define KERN_INFO #define KERN_DEBUG #define KERN_CONT #define printk(fmt, ...) \ printf(fmt, ##__VA_ARGS__) /* * Dummy printk for disabled debugging statements to use whilst maintaining * gcc's format checking. */ #define no_printk(fmt, ...) \ ({ \ if (0) \ printk(fmt, ##__VA_ARGS__); \ 0; \ }) #ifndef pr_fmt #define pr_fmt(fmt) fmt #endif #define pr_emerg(fmt, ...) \ ({ \ CONFIG_LOGLEVEL > 0 ? log_emerg(fmt, ##__VA_ARGS__) : 0; \ }) #define pr_alert(fmt, ...) \ ({ \ CONFIG_LOGLEVEL > 1 ? log_alert(fmt, ##__VA_ARGS__) : 0; \ }) #define pr_crit(fmt, ...) \ ({ \ CONFIG_LOGLEVEL > 2 ? log_crit(fmt, ##__VA_ARGS__) : 0; \ }) #define pr_err(fmt, ...) \ ({ \ 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, ...) \ ({ \ CONFIG_LOGLEVEL > 5 ? log_notice(fmt, ##__VA_ARGS__) : 0; \ }) #define pr_info(fmt, ...) \ ({ \ 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__) #endif #define printk_once(fmt, ...) \ printk(fmt, ##__VA_ARGS__) #endif