1 /* Public domain. */ 2 3 #ifndef _LINUX_PRINTK_H 4 #define _LINUX_PRINTK_H 5 6 #include <sys/types.h> 7 #include <sys/systm.h> 8 #include <sys/stdarg.h> 9 10 #define KERN_INFO "" 11 #define KERN_WARNING "" 12 #define KERN_NOTICE "" 13 #define KERN_DEBUG "" 14 #define KERN_CRIT "" 15 #define KERN_ERR "" 16 17 #ifndef pr_fmt 18 #define pr_fmt(fmt) fmt 19 #endif 20 21 #define printk_once(fmt, arg...) ({ \ 22 static int __warned; \ 23 if (!__warned) { \ 24 printf(fmt, ## arg); \ 25 __warned = 1; \ 26 } \ 27 }) 28 29 #define printk(fmt, arg...) printf(fmt, ## arg) 30 #define pr_warn(fmt, arg...) printf(pr_fmt(fmt), ## arg) 31 #define pr_warn_once(fmt, arg...) printk_once(pr_fmt(fmt), ## arg) 32 #define pr_notice(fmt, arg...) printf(pr_fmt(fmt), ## arg) 33 #define pr_crit(fmt, arg...) printf(pr_fmt(fmt), ## arg) 34 #define pr_err(fmt, arg...) printf(pr_fmt(fmt), ## arg) 35 #define pr_cont(fmt, arg...) printf(pr_fmt(fmt), ## arg) 36 37 #ifdef DRMDEBUG 38 #define pr_info(fmt, arg...) printf(pr_fmt(fmt), ## arg) 39 #define pr_info_once(fmt, arg...) printk_once(pr_fmt(fmt), ## arg) 40 #define pr_debug(fmt, arg...) printf(pr_fmt(fmt), ## arg) 41 #else 42 #define pr_info(fmt, arg...) do { } while(0) 43 #define pr_info_once(fmt, arg...) do { } while(0) 44 #define pr_debug(fmt, arg...) do { } while(0) 45 #endif 46 47 enum { 48 DUMP_PREFIX_NONE, 49 DUMP_PREFIX_ADDRESS, 50 DUMP_PREFIX_OFFSET 51 }; 52 53 void print_hex_dump(const char *, const char *, int, int, int, 54 const void *, size_t, bool); 55 56 struct va_format { 57 const char *fmt; 58 va_list *va; 59 }; 60 61 #endif 62