1 /* 2 * function prototpyes for early printk 3 * 4 * Copyright 2007-2009 Analog Devices Inc. 5 * 6 * Licensed under the GPL-2 or later. 7 */ 8 9 #ifndef __ASM_EARLY_PRINTK_H__ 10 #define __ASM_EARLY_PRINTK_H__ 11 12 #ifdef CONFIG_EARLY_PRINTK 13 /* For those that don't include it already */ 14 #include <linux/console.h> 15 16 extern int setup_early_printk(char *); 17 extern void enable_shadow_console(void); 18 extern int shadow_console_enabled(void); 19 extern void mark_shadow_error(void); 20 extern void early_shadow_reg(unsigned long reg, unsigned int n); 21 extern void early_shadow_write(struct console *con, const char *s, 22 unsigned int n) __attribute__((nonnull(2))); 23 #define early_shadow_puts(str) early_shadow_write(NULL, str, strlen(str)) 24 #define early_shadow_stamp() \ 25 do { \ 26 early_shadow_puts(__FILE__ " : " __stringify(__LINE__) " ["); \ 27 early_shadow_puts(__func__); \ 28 early_shadow_puts("]\n"); \ 29 } while (0) 30 #else 31 #define setup_early_printk(fmt) do { } while (0) 32 #define enable_shadow_console(fmt) do { } while (0) 33 #define early_shadow_stamp() do { } while (0) 34 #endif /* CONFIG_EARLY_PRINTK */ 35 36 #endif /* __ASM_EARLY_PRINTK_H__ */ 37