Ronald G. Minnich (rminnich@gmail.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/3188
-gerrit
commit e093b075359576f1220daa7433525ddf6074a723 Author: Ronald G. Minnich rminnich@gmail.com Date: Fri May 3 18:25:27 2013 +0200
Get rid of MAXIMUM_CONSOLE_LOGLEVEL; compile all messages into the coreboot binary.
This option has never had much if any use. It solved a problem over 10 years ago that resulted from an argument over the value or lack thereof of including all the debug strings in a coreboot image. The answer is in: it's a good idea to maintain the capabilty to print all messages, for many reasons.
This option is also misleading people, as in a recent discussion, to believe that log messges are controlled at build time in a way they are not. For the record, from this day forward, we can print messages at all log levels and the default log level is set at boot time, as directed by DEFAULT_CONSOLE_LOGLEVEL. You can set the default to 0 at build time and if you are having trouble override it in CMOS and get more messages.
Besides, a quick glance shows it's always set to max (9 in this case) in the very few cases (1) in which it is set.
Change-Id: I60c4cdaf4dcd318b841a6d6c70546417c5626f21 Signed-off-by: Ronald G. Minnich rminnich@gmail.com --- documentation/LinuxBIOS-AMD64.tex | 5 --- src/console/Kconfig | 79 ---------------------------------- src/include/console/console.h | 10 +---- src/mainboard/msi/ms9652_fam10/Kconfig | 4 -- util/abuild/abuild | 2 - 5 files changed, 2 insertions(+), 98 deletions(-)
diff --git a/documentation/LinuxBIOS-AMD64.tex b/documentation/LinuxBIOS-AMD64.tex index 19a6f59..5847dab 100644 --- a/documentation/LinuxBIOS-AMD64.tex +++ b/documentation/LinuxBIOS-AMD64.tex @@ -408,11 +408,6 @@ machine. Use new \textit{chip_configure} method for configuring (nonpci) devices. Set to \texttt{1} for all AMD64 mainboards.
-\item \begin{verbatim}CONFIG_MAXIMUM_CONSOLE_LOGLEVEL\end{verbatim} - -Errors or log messages up to this level can be printed. Default is -\texttt{8}, minimum is \texttt{0}, maximum is \texttt{10}. - \item \begin{verbatim}CONFIG_DEFAULT_CONSOLE_LOGLEVEL\end{verbatim}
Console will log at this level unless changed. Default is \texttt{7}, diff --git a/src/console/Kconfig b/src/console/Kconfig index 6251589..a613477 100644 --- a/src/console/Kconfig +++ b/src/console/Kconfig @@ -250,119 +250,40 @@ config CONSOLE_CAR_BUFFER_SIZE in the DCACHE based RAM to keep console output before it can be saved in a CBMEM buffer. 3K bytes should be enough even for the BIOS_SPEW level. - - -choice - prompt "Maximum console log level" - default MAXIMUM_CONSOLE_LOGLEVEL_8 - -config MAXIMUM_CONSOLE_LOGLEVEL_8 - bool "8: SPEW" - help - Way too many details. -config MAXIMUM_CONSOLE_LOGLEVEL_7 - bool "7: DEBUG" - help - Debug-level messages. -config MAXIMUM_CONSOLE_LOGLEVEL_6 - bool "6: INFO" - help - Informational messages. -config MAXIMUM_CONSOLE_LOGLEVEL_5 - bool "5: NOTICE" - help - Normal but significant conditions. -config MAXIMUM_CONSOLE_LOGLEVEL_4 - bool "4: WARNING" - help - Warning conditions. -config MAXIMUM_CONSOLE_LOGLEVEL_3 - bool "3: ERR" - help - Error conditions. -config MAXIMUM_CONSOLE_LOGLEVEL_2 - bool "2: CRIT" - help - Critical conditions. -config MAXIMUM_CONSOLE_LOGLEVEL_1 - bool "1: ALERT" - help - Action must be taken immediately. -config MAXIMUM_CONSOLE_LOGLEVEL_0 - bool "0: EMERG" - help - System is unusable. - -endchoice - -config MAXIMUM_CONSOLE_LOGLEVEL - int - default 0 if MAXIMUM_CONSOLE_LOGLEVEL_0 - default 1 if MAXIMUM_CONSOLE_LOGLEVEL_1 - default 2 if MAXIMUM_CONSOLE_LOGLEVEL_2 - default 3 if MAXIMUM_CONSOLE_LOGLEVEL_3 - default 4 if MAXIMUM_CONSOLE_LOGLEVEL_4 - default 5 if MAXIMUM_CONSOLE_LOGLEVEL_5 - default 6 if MAXIMUM_CONSOLE_LOGLEVEL_6 - default 7 if MAXIMUM_CONSOLE_LOGLEVEL_7 - default 8 if MAXIMUM_CONSOLE_LOGLEVEL_8 - help - Map the log level config names to an integer. - choice prompt "Default console log level" default DEFAULT_CONSOLE_LOGLEVEL_8
config DEFAULT_CONSOLE_LOGLEVEL_8 bool "8: SPEW" - depends on (MAXIMUM_CONSOLE_LOGLEVEL_8) help Way too many details. config DEFAULT_CONSOLE_LOGLEVEL_7 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" - 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" - 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" - 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" - 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" - 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" - 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 diff --git a/src/include/console/console.h b/src/include/console/console.h index d320093..031c25d 100644 --- a/src/include/console/console.h +++ b/src/include/console/console.h @@ -104,20 +104,14 @@ static inline void printk(int LEVEL, const char *fmt, ...) {
#define printk(LEVEL, fmt, args...) \ do { \ - if (CONFIG_MAXIMUM_CONSOLE_LOGLEVEL >= LEVEL) { \ - do_printk(LEVEL, fmt, ##args); \ - } \ + do_printk(LEVEL, fmt, ##args); \ } while(0)
#else
#define printk(LEVEL, fmt, args...) \ do { \ - if (CONFIG_MAXIMUM_CONSOLE_LOGLEVEL >= LEVEL) { \ - do_printk(LEVEL, fmt, ##args); \ - } else { \ - do_printk(BIOS_NEVER, fmt, ##args); \ - } \ + do_printk(LEVEL, fmt, ##args); \ } while(0) #endif
diff --git a/src/mainboard/msi/ms9652_fam10/Kconfig b/src/mainboard/msi/ms9652_fam10/Kconfig index 852efd4..58cafa2 100644 --- a/src/mainboard/msi/ms9652_fam10/Kconfig +++ b/src/mainboard/msi/ms9652_fam10/Kconfig @@ -97,10 +97,6 @@ config DEFAULT_CONSOLE_LOGLEVEL int default 9
-config MAXIMUM_CONSOLE_LOGLEVEL - int - default 9 - config MAINBOARD_POWER_ON_AFTER_POWER_FAIL bool default y diff --git a/util/abuild/abuild b/util/abuild/abuild index 1c69eec..aad066c 100755 --- a/util/abuild/abuild +++ b/util/abuild/abuild @@ -596,8 +596,6 @@ while true ; do -C|--config) shift; configureonly=1;; -l|--loglevel) shift customizing="${customizing}, loglevel $1" - configoptions="${configoptions}CONFIG_MAXIMUM_CONSOLE_LOGLEVEL_$1=y\n" - configoptions="${configoptions}CONFIG_MAXIMUM_CONSOLE_LOGLEVEL=$1\n" configoptions="${configoptions}CONFIG_DEFAULT_CONSOLE_LOGLEVEL_$1=y\n" configoptions="${configoptions}CONFIG_DEFAULT_CONSOLE_LOGLEVEL=$1\n" shift;;