Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
early_printk.h
Go to the documentation of this file.
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__ */