Kyösti Mälkki (kyosti.malkki@gmail.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/5332
-gerrit
commit f7511ab1c6acc5b5e0cb6833f0161e4f378ef148 Author: Kyösti Mälkki kyosti.malkki@gmail.com Date: Mon Jan 27 15:09:13 2014 +0200
console: Unify do_printk()
Change-Id: I6c50e47d9d2d0d1f42beee477e49b2a0054d1786 Signed-off-by: Kyösti Mälkki kyosti.malkki@gmail.com --- src/arch/armv7/early_console.c | 21 +-------------------- src/arch/x86/lib/romstage_console.c | 25 ------------------------- src/console/Makefile.inc | 8 +++----- src/console/printk.c | 6 ++++++ 4 files changed, 10 insertions(+), 50 deletions(-)
diff --git a/src/arch/armv7/early_console.c b/src/arch/armv7/early_console.c index 7614531..a85f554 100644 --- a/src/arch/armv7/early_console.c +++ b/src/arch/armv7/early_console.c @@ -20,7 +20,6 @@ #include <console/console.h> #include <console/cbmem_console.h> #include <console/uart.h> -#include <console/vtxprintf.h>
/* FIXME: need to make console driver more generic */ void console_tx_byte(unsigned char byte) @@ -36,27 +35,9 @@ void console_tx_byte(unsigned char byte) #endif }
-static void _console_tx_flush(void) +void console_tx_flush(void) { #if CONFIG_CONSOLE_SERIAL uart_tx_flush(); #endif } - -int do_printk(int msg_level, const char *fmt, ...) -{ - va_list args; - int i; - - if (msg_level > console_loglevel) { - return 0; - } - - va_start(args, fmt); - i = vtxprintf(console_tx_byte, fmt, args); - va_end(args); - - _console_tx_flush(); - - return i; -} diff --git a/src/arch/x86/lib/romstage_console.c b/src/arch/x86/lib/romstage_console.c index 8393d95..ec35ffe 100644 --- a/src/arch/x86/lib/romstage_console.c +++ b/src/arch/x86/lib/romstage_console.c @@ -17,14 +17,12 @@ * MA 02110-1301 USA */
-#include <smp/node.h> #include <console/console.h> #include <console/cbmem_console.h> #include <console/uart.h> #include <console/usb.h> #include <console/ne2k.h> #include <console/spkmodem.h> -#include <console/vtxprintf.h>
void console_tx_byte(unsigned char byte) { @@ -60,26 +58,3 @@ void console_tx_flush(void) usb_tx_flush(0); #endif } - -int do_printk(int msg_level, const char *fmt, ...) -{ - va_list args; - int i; - - if (msg_level > console_loglevel) { - return 0; - } - -#if CONFIG_SQUELCH_EARLY_SMP - if (!boot_cpu()) - return 0; -#endif - - va_start(args, fmt); - i = vtxprintf(console_tx_byte, fmt, args); - va_end(args); - - console_tx_flush(); - - return i; -} diff --git a/src/console/Makefile.inc b/src/console/Makefile.inc index f8bbf22..ef917da 100644 --- a/src/console/Makefile.inc +++ b/src/console/Makefile.inc @@ -1,19 +1,17 @@ -ramstage-y += printk.c +ramstage-y += vtxprintf.c printk.c vsprintf.c ramstage-y += init.c console.c -ramstage-y += vtxprintf.c -ramstage-y += vsprintf.c ramstage-y += post.c ramstage-y += die.c
smm-$(CONFIG_DEBUG_SMI) += vtxprintf.c printk.c smm-$(CONFIG_SMM_TSEG) += die.c
-romstage-$(CONFIG_EARLY_CONSOLE) += vtxprintf.c +romstage-$(CONFIG_EARLY_CONSOLE) += vtxprintf.c printk.c romstage-$(CONFIG_EARLY_CONSOLE) += init.c console.c romstage-y += post.c romstage-y += die.c
-bootblock-$(CONFIG_BOOTBLOCK_CONSOLE) += vtxprintf.c +bootblock-$(CONFIG_BOOTBLOCK_CONSOLE) += vtxprintf.c printk.c bootblock-$(CONFIG_BOOTBLOCK_CONSOLE) += init.c console.c bootblock-y += die.c
diff --git a/src/console/printk.c b/src/console/printk.c index e24c752..6c2e6e4 100644 --- a/src/console/printk.c +++ b/src/console/printk.c @@ -5,6 +5,7 @@ * */
+#include <smp/node.h> #include <smp/spinlock.h> #include <console/vtxprintf.h> #include <console/console.h> @@ -24,6 +25,11 @@ int do_printk(int msg_level, const char *fmt, ...) return 0; }
+#if CONFIG_SQUELCH_EARLY_SMP && defined(__PRE_RAM__) + if (!boot_cpu()) + return 0; +#endif + DISABLE_TRACE; spin_lock(&console_lock);