diff options
Diffstat (limited to 'src/include/console/console.h')
-rw-r--r-- | src/include/console/console.h | 31 |
1 files changed, 15 insertions, 16 deletions
diff --git a/src/include/console/console.h b/src/include/console/console.h index a15f608407..78426b24bf 100644 --- a/src/include/console/console.h +++ b/src/include/console/console.h @@ -21,10 +21,10 @@ #define CONSOLE_CONSOLE_H_ #include <stdint.h> +#include <rules.h> #include <console/post_codes.h> #ifndef __ROMCC__ -int console_log_level(int msg_level); void post_code(u8 value); #if CONFIG_CMOS_POST_EXTRA void post_log_extra(u32 value); @@ -40,32 +40,31 @@ void post_log_clear(void); void mainboard_post(u8 value); void __attribute__ ((noreturn)) die(const char *msg); -#if defined(__BOOT_BLOCK__) && !CONFIG_BOOTBLOCK_CONSOLE || \ - defined(__SMM__) && !CONFIG_DEBUG_SMI || \ - (defined(__PRE_RAM__) && !defined(__BOOT_BLOCK__)) && !CONFIG_EARLY_CONSOLE - -/* Do nothing. */ -static inline void printk(int LEVEL, const char *fmt, ...) {} -static inline void do_putchar(unsigned char byte) {} -static inline void console_init(void) {} - -#else +#define __CONSOLE_ENABLE__ \ + ((ENV_BOOTBLOCK && CONFIG_BOOTBLOCK_CONSOLE) || \ + (ENV_ROMSTAGE && CONFIG_EARLY_CONSOLE) || \ + ENV_RAMSTAGE || (ENV_SMM && CONFIG_DEBUG_SMI)) +#if __CONSOLE_ENABLE__ void console_init(void); +int console_log_level(int msg_level); int do_printk(int msg_level, const char *fmt, ...) __attribute__((format(printf, 2, 3))); void do_putchar(unsigned char byte); -#define printk(LEVEL, fmt, args...) \ - do { \ - do_printk(LEVEL, fmt, ##args); \ - } while(0) +#define printk(LEVEL, fmt, args...) \ + do { do_printk(LEVEL, fmt, ##args); } while(0) +#else +static inline void console_init(void) {} +static inline int console_log_level(int msg_level) { return 0; } +static inline void printk(int LEVEL, const char *fmt, ...) {} +static inline void do_putchar(unsigned char byte) {} #endif #if CONFIG_CHROMEOS /* FIXME: Collision of varargs with AMD headers without guard. */ #include <console/vtxprintf.h> -#if !defined(__PRE_RAM__) || CONFIG_EARLY_CONSOLE +#if __CONSOLE_ENABLE__ void do_vtxprintf(const char *fmt, va_list args); #else static inline void do_vtxprintf(const char *fmt, va_list args) {}; |