From 0364618fe86a7e3ad9b9f79105c66cbefdc64ab6 Mon Sep 17 00:00:00 2001 From: Myles Watson Date: Fri, 16 Oct 2009 19:29:45 +0000 Subject: [PATCH] Change console code to emit SPEW with DEFAULT_CONSOLE_LOGLEVEL==8. Make MAXIMUM_CONSOLE_LOGLEVEL >= DEFAULT_CONSOLE_LOGLEVEL. Signed-off-by: Myles Watson Acked-by: Uwe Hermann Acked-by: Stefan Reinauer git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4794 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1 --- src/arch/i386/lib/console_print.c | 10 +-- src/arch/i386/lib/console_printk.c | 18 ++-- src/arch/i386/lib/printk_init.c | 2 +- src/console/Kconfig | 136 +++++++++++++++++------------ src/console/console.c | 8 -- src/console/printk.c | 2 +- src/include/console/console.h | 18 ++-- src/include/console/loglevel.h | 12 --- 8 files changed, 103 insertions(+), 103 deletions(-) diff --git a/src/arch/i386/lib/console_print.c b/src/arch/i386/lib/console_print.c index adb26c0e1..93886cc34 100644 --- a/src/arch/i386/lib/console_print.c +++ b/src/arch/i386/lib/console_print.c @@ -11,14 +11,14 @@ static void __console_tx_nibble(unsigned nibble) static void __console_tx_char(int loglevel, unsigned char byte) { - if (ASM_CONSOLE_LOGLEVEL > loglevel) { + if (ASM_CONSOLE_LOGLEVEL >= loglevel) { uart_tx_byte(byte); } } static void __console_tx_hex8(int loglevel, unsigned char value) { - if (ASM_CONSOLE_LOGLEVEL > loglevel) { + if (ASM_CONSOLE_LOGLEVEL >= loglevel) { __console_tx_nibble((value >> 4U) & 0x0fU); __console_tx_nibble(value & 0x0fU); } @@ -26,7 +26,7 @@ static void __console_tx_hex8(int loglevel, unsigned char value) static void __console_tx_hex16(int loglevel, unsigned short value) { - if (ASM_CONSOLE_LOGLEVEL > loglevel) { + if (ASM_CONSOLE_LOGLEVEL >= loglevel) { __console_tx_nibble((value >> 12U) & 0x0fU); __console_tx_nibble((value >> 8U) & 0x0fU); __console_tx_nibble((value >> 4U) & 0x0fU); @@ -36,7 +36,7 @@ static void __console_tx_hex16(int loglevel, unsigned short value) static void __console_tx_hex32(int loglevel, unsigned int value) { - if (ASM_CONSOLE_LOGLEVEL > loglevel) { + if (ASM_CONSOLE_LOGLEVEL >= loglevel) { __console_tx_nibble((value >> 28U) & 0x0fU); __console_tx_nibble((value >> 24U) & 0x0fU); __console_tx_nibble((value >> 20U) & 0x0fU); @@ -50,7 +50,7 @@ static void __console_tx_hex32(int loglevel, unsigned int value) static void __console_tx_string(int loglevel, const char *str) { - if (ASM_CONSOLE_LOGLEVEL > loglevel) { + if (ASM_CONSOLE_LOGLEVEL >= loglevel) { unsigned char ch; while((ch = *str++) != '\0') { __console_tx_byte(ch); diff --git a/src/arch/i386/lib/console_printk.c b/src/arch/i386/lib/console_printk.c index a3c409c5c..694ec9d63 100644 --- a/src/arch/i386/lib/console_printk.c +++ b/src/arch/i386/lib/console_printk.c @@ -11,39 +11,39 @@ extern int do_printk(int msg_level, const char *fmt, ...); #define printk_debug(fmt, arg...) do_printk(BIOS_DEBUG ,fmt, ##arg) #define printk_spew(fmt, arg...) do_printk(BIOS_SPEW ,fmt, ##arg) -#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL <= BIOS_EMERG +#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL < BIOS_EMERG #undef printk_emerg #define printk_emerg(fmt, arg...) do_printk(BIOS_EMERG , "", ##arg) #endif -#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL <= BIOS_ALERT +#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL < BIOS_ALERT #undef printk_alert #define printk_alert(fmt, arg...) do_printk(BIOS_EMERG , "", ##arg) #endif -#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL <= BIOS_CRIT +#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL < BIOS_CRIT #undef printk_crit #define printk_crit(fmt, arg...) do_printk(BIOS_EMERG , "", ##arg) #endif -#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL <= BIOS_ERR +#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL < BIOS_ERR #undef printk_err #define printk_err(fmt, arg...) do_printk(BIOS_EMERG , "", ##arg) #endif -#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL <= BIOS_WARNING +#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL < BIOS_WARNING #undef printk_warning #define printk_warning(fmt, arg...) do_printk(BIOS_EMERG , "", ##arg) #endif -#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL <= BIOS_NOTICE +#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL < BIOS_NOTICE #undef printk_notice #define printk_notice(fmt, arg...) do_printk(BIOS_EMERG , "", ##arg) #endif -#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL <= BIOS_INFO +#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL < BIOS_INFO #undef printk_info #define printk_info(fmt, arg...) do_printk(BIOS_EMERG , "", ##arg) #endif -#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL <= BIOS_DEBUG +#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL < BIOS_DEBUG #undef printk_debug #define printk_debug(fmt, arg...) do_printk(BIOS_EMERG , "", ##arg) #endif -#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL <= BIOS_SPEW +#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL < BIOS_SPEW #undef printk_spew #define printk_spew(fmt, arg...) do_printk(BIOS_EMERG , "", ##arg) #endif diff --git a/src/arch/i386/lib/printk_init.c b/src/arch/i386/lib/printk_init.c index 4b2693058..6163acc2a 100644 --- a/src/arch/i386/lib/printk_init.c +++ b/src/arch/i386/lib/printk_init.c @@ -34,7 +34,7 @@ int do_printk(int msg_level, const char *fmt, ...) va_list args; int i; - if (msg_level >= console_loglevel) { + if (msg_level > console_loglevel) { return 0; } diff --git a/src/console/Kconfig b/src/console/Kconfig index dc11e28cb..bbf4f9dda 100644 --- a/src/console/Kconfig +++ b/src/console/Kconfig @@ -79,45 +79,45 @@ config CONSOLE_VGA_ONBOARD_AT_FIRST If not selected, the last adapter found will be used. choice - prompt "Maximum console log level" - default MAXIMUM_CONSOLE_LOGLEVEL_8 + prompt "Maximum console log level" + default MAXIMUM_CONSOLE_LOGLEVEL_8 config MAXIMUM_CONSOLE_LOGLEVEL_8 - bool "8: SPEW" - help - Way too many details. + bool "8: SPEW" + help + Way too many details. config MAXIMUM_CONSOLE_LOGLEVEL_7 - bool "7: DEBUG" - help - Debug-level messages. + bool "7: DEBUG" + help + Debug-level messages. config MAXIMUM_CONSOLE_LOGLEVEL_6 - bool "6: INFO" - help - Informational messages. + bool "6: INFO" + help + Informational messages. config MAXIMUM_CONSOLE_LOGLEVEL_5 - bool "5: NOTICE" - help - Normal but significant conditions. + bool "5: NOTICE" + help + Normal but significant conditions. config MAXIMUM_CONSOLE_LOGLEVEL_4 - bool "4: WARNING" - help - Warning conditions. + bool "4: WARNING" + help + Warning conditions. config MAXIMUM_CONSOLE_LOGLEVEL_3 - bool "3: ERR" - help - Error conditions. + bool "3: ERR" + help + Error conditions. config MAXIMUM_CONSOLE_LOGLEVEL_2 - bool "2: CRIT" - help - Critical conditions. + bool "2: CRIT" + help + Critical conditions. config MAXIMUM_CONSOLE_LOGLEVEL_1 - bool "1: ALERT" - help - Action must be taken immediately. + bool "1: ALERT" + help + Action must be taken immediately. config MAXIMUM_CONSOLE_LOGLEVEL_0 - bool "0: EMERG" - help - System is unusable. + bool "0: EMERG" + help + System is unusable. endchoice @@ -136,45 +136,65 @@ config MAXIMUM_CONSOLE_LOGLEVEL Map the log level config names to an integer. choice - prompt "Default console log level" - default DEFAULT_CONSOLE_LOGLEVEL_8 + prompt "Default console log level" + default DEFAULT_CONSOLE_LOGLEVEL_8 config DEFAULT_CONSOLE_LOGLEVEL_8 - bool "8: SPEW" - help - Way too many details. + bool "8: SPEW" + depends on (MAXIMUM_CONSOLE_LOGLEVEL_8) + help + Way too many details. config DEFAULT_CONSOLE_LOGLEVEL_7 - bool "7: DEBUG" - help - Debug-level messages. + bool "7: DEBUG" + depends on (MAXIMUM_CONSOLE_LOGLEVEL_8 || MAXIMUM_CONSOLE_LOGLEVEL_7) + help + Debug-level messages. config DEFAULT_CONSOLE_LOGLEVEL_6 - bool "6: INFO" - help - Informational messages. + bool "6: INFO" + depends on (MAXIMUM_CONSOLE_LOGLEVEL_8 || MAXIMUM_CONSOLE_LOGLEVEL_7 ||\ + MAXIMUM_CONSOLE_LOGLEVEL_6) + help + Informational messages. config DEFAULT_CONSOLE_LOGLEVEL_5 - bool "5: NOTICE" - help - Normal but significant conditions. + bool "5: NOTICE" + depends on (MAXIMUM_CONSOLE_LOGLEVEL_8 || MAXIMUM_CONSOLE_LOGLEVEL_7 ||\ + MAXIMUM_CONSOLE_LOGLEVEL_6 || MAXIMUM_CONSOLE_LOGLEVEL_5) + help + Normal but significant conditions. config DEFAULT_CONSOLE_LOGLEVEL_4 - bool "4: WARNING" - help - Warning conditions. + bool "4: WARNING" + depends on (MAXIMUM_CONSOLE_LOGLEVEL_8 || MAXIMUM_CONSOLE_LOGLEVEL_7 ||\ + MAXIMUM_CONSOLE_LOGLEVEL_6 || MAXIMUM_CONSOLE_LOGLEVEL_5 ||\ + MAXIMUM_CONSOLE_LOGLEVEL_4) + help + Warning conditions. config DEFAULT_CONSOLE_LOGLEVEL_3 - bool "3: ERR" - help - Error conditions. + bool "3: ERR" + depends on (MAXIMUM_CONSOLE_LOGLEVEL_8 || MAXIMUM_CONSOLE_LOGLEVEL_7 ||\ + MAXIMUM_CONSOLE_LOGLEVEL_6 || MAXIMUM_CONSOLE_LOGLEVEL_5 ||\ + MAXIMUM_CONSOLE_LOGLEVEL_4 || MAXIMUM_CONSOLE_LOGLEVEL_3) + help + Error conditions. config DEFAULT_CONSOLE_LOGLEVEL_2 - bool "2: CRIT" - help - Critical conditions. + bool "2: CRIT" + depends on (MAXIMUM_CONSOLE_LOGLEVEL_8 || MAXIMUM_CONSOLE_LOGLEVEL_7 ||\ + MAXIMUM_CONSOLE_LOGLEVEL_6 || MAXIMUM_CONSOLE_LOGLEVEL_5 ||\ + MAXIMUM_CONSOLE_LOGLEVEL_4 || MAXIMUM_CONSOLE_LOGLEVEL_3 ||\ + MAXIMUM_CONSOLE_LOGLEVEL_2) + help + Critical conditions. config DEFAULT_CONSOLE_LOGLEVEL_1 - bool "1: ALERT" - help - Action must be taken immediately. + bool "1: ALERT" + depends on (MAXIMUM_CONSOLE_LOGLEVEL_8 || MAXIMUM_CONSOLE_LOGLEVEL_7 ||\ + MAXIMUM_CONSOLE_LOGLEVEL_6 || MAXIMUM_CONSOLE_LOGLEVEL_5 ||\ + MAXIMUM_CONSOLE_LOGLEVEL_4 || MAXIMUM_CONSOLE_LOGLEVEL_3 ||\ + MAXIMUM_CONSOLE_LOGLEVEL_2 || MAXIMUM_CONSOLE_LOGLEVEL_1) + help + Action must be taken immediately. config DEFAULT_CONSOLE_LOGLEVEL_0 - bool "0: EMERG" - help - System is unusable. + bool "0: EMERG" + help + System is unusable. endchoice diff --git a/src/console/console.c b/src/console/console.c index 008130fb6..c176bc5d0 100644 --- a/src/console/console.c +++ b/src/console/console.c @@ -81,11 +81,3 @@ void post_code(uint8_t value) outb(value, 0x80); #endif } - -/* Report a fatal error */ -void __attribute__((noreturn)) die(const char *msg) -{ - printk_emerg("%s", msg); - post_code(0xff); - while (1); /* Halt */ -} diff --git a/src/console/printk.c b/src/console/printk.c index 0485a001d..f4157a7b0 100644 --- a/src/console/printk.c +++ b/src/console/printk.c @@ -32,7 +32,7 @@ int do_printk(int msg_level, const char *fmt, ...) va_list args; int i; - if (msg_level >= console_loglevel) { + if (msg_level > console_loglevel) { return 0; } diff --git a/src/include/console/console.h b/src/include/console/console.h index 4bebdadb0..43c8a47fc 100644 --- a/src/include/console/console.h +++ b/src/include/console/console.h @@ -41,39 +41,39 @@ int do_printk(int msg_level, const char *fmt, ...) __attribute__((format(printf, #define printk_debug(fmt, arg...) do_printk(BIOS_DEBUG ,fmt, ##arg) #define printk_spew(fmt, arg...) do_printk(BIOS_SPEW ,fmt, ##arg) -#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL <= BIOS_EMERG +#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL < BIOS_EMERG #undef printk_emerg #define printk_emerg(fmt, arg...) do {} while(0) #endif -#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL <= BIOS_ALERT +#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL < BIOS_ALERT #undef printk_alert #define printk_alert(fmt, arg...) do {} while(0) #endif -#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL <= BIOS_CRIT +#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL < BIOS_CRIT #undef printk_crit #define printk_crit(fmt, arg...) do {} while(0) #endif -#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL <= BIOS_ERR +#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL < BIOS_ERR #undef printk_err #define printk_err(fmt, arg...) do {} while(0) #endif -#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL <= BIOS_WARNING +#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL < BIOS_WARNING #undef printk_warning #define printk_warning(fmt, arg...) do {} while(0) #endif -#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL <= BIOS_NOTICE +#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL < BIOS_NOTICE #undef printk_notice #define printk_notice(fmt, arg...) do {} while(0) #endif -#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL <= BIOS_INFO +#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL < BIOS_INFO #undef printk_info #define printk_info(fmt, arg...) do {} while(0) #endif -#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL <= BIOS_DEBUG +#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL < BIOS_DEBUG #undef printk_debug #define printk_debug(fmt, arg...) do {} while(0) #endif -#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL <= BIOS_SPEW +#if CONFIG_MAXIMUM_CONSOLE_LOGLEVEL < BIOS_SPEW #undef printk_spew #define printk_spew(fmt, arg...) do {} while(0) #endif diff --git a/src/include/console/loglevel.h b/src/include/console/loglevel.h index a765df2b6..8e6a7c486 100644 --- a/src/include/console/loglevel.h +++ b/src/include/console/loglevel.h @@ -3,21 +3,9 @@ /* Safe for inclusion in assembly */ -#ifndef CONFIG_MAXIMUM_CONSOLE_LOGLEVEL -#define CONFIG_MAXIMUM_CONSOLE_LOGLEVEL 8 -#endif - -#ifndef CONFIG_DEFAULT_CONSOLE_LOGLEVEL -#define CONFIG_DEFAULT_CONSOLE_LOGLEVEL 8 /* anything MORE serious than BIOS_SPEW */ -#endif - #ifndef ASM_CONSOLE_LOGLEVEL -#if (CONFIG_DEFAULT_CONSOLE_LOGLEVEL <= CONFIG_MAXIMUM_CONSOLE_LOGLEVEL) -#define ASM_CONSOLE_LOGLEVEL CONFIG_DEFAULT_CONSOLE_LOGLEVEL -#else #define ASM_CONSOLE_LOGLEVEL CONFIG_MAXIMUM_CONSOLE_LOGLEVEL #endif -#endif #define BIOS_EMERG 0 /* system is unusable */ #define BIOS_ALERT 1 /* action must be taken immediately */ -- 2.25.1