diff options
author | Kyösti Mälkki <kyosti.malkki@gmail.com> | 2014-03-06 16:55:05 +0200 |
---|---|---|
committer | Patrick Georgi <patrick@georgi-clan.de> | 2014-04-09 13:21:13 +0200 |
commit | b3356bbff42148094ada671d3a0a803f195542e6 (patch) | |
tree | b5c143699b1df19da71775279f08f51c924f4a66 /src | |
parent | 56ae13983bae2ba4214dd635c46afad7e7bc50c1 (diff) | |
download | coreboot-b3356bbff42148094ada671d3a0a803f195542e6.tar.xz |
console: Add printk helper for ChromeOS
Do not expose console_tx_flush() to ChromeOS as that function
is part of lower-level implementation.
Change-Id: I1e31662da88a60e83f8e5d307a4b53441c130aab
Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Reviewed-on: http://review.coreboot.org/5347
Tested-by: build bot (Jenkins)
Reviewed-by: Patrick Georgi <patrick@georgi-clan.de>
Diffstat (limited to 'src')
-rw-r--r-- | src/console/printk.c | 8 | ||||
-rw-r--r-- | src/include/console/console.h | 10 | ||||
-rw-r--r-- | src/vendorcode/google/chromeos/vboot_loader.c | 3 |
3 files changed, 19 insertions, 2 deletions
diff --git a/src/console/printk.c b/src/console/printk.c index fb1194e828..c61f63e6a6 100644 --- a/src/console/printk.c +++ b/src/console/printk.c @@ -40,3 +40,11 @@ int do_printk(int msg_level, const char *fmt, ...) return i; } + +#if CONFIG_CHROMEOS +void do_vtxprintf(const char *fmt, va_list args) +{ + vtxprintf(console_tx_byte, fmt, args); + console_tx_flush(); +} +#endif diff --git a/src/include/console/console.h b/src/include/console/console.h index aa5273fc9b..e7b4253c32 100644 --- a/src/include/console/console.h +++ b/src/include/console/console.h @@ -82,6 +82,16 @@ static inline void printk(int LEVEL, const char *fmt, ...) { #endif /* defined(__PRE_RAM__) && !CONFIG_EARLY_CONSOLE */ +#if CONFIG_CHROMEOS +/* FIXME: Collision of varargs with AMD headers without guard. */ +#include <console/vtxprintf.h> +#if !defined(__PRE_RAM__) || CONFIG_EARLY_CONSOLE +void do_vtxprintf(const char *fmt, va_list args); +#else +static inline void do_vtxprintf(const char *fmt, va_list args) {}; +#endif +#endif + #define print_emerg(STR) printk(BIOS_EMERG, "%s", (STR)) #define print_alert(STR) printk(BIOS_ALERT, "%s", (STR)) #define print_crit(STR) printk(BIOS_CRIT, "%s", (STR)) diff --git a/src/vendorcode/google/chromeos/vboot_loader.c b/src/vendorcode/google/chromeos/vboot_loader.c index 0c5220a82b..943ad176db 100644 --- a/src/vendorcode/google/chromeos/vboot_loader.c +++ b/src/vendorcode/google/chromeos/vboot_loader.c @@ -64,8 +64,7 @@ out: /* Helper routines for the vboot stub. */ static void log_msg(const char *fmt, va_list args) { - vtxprintf(console_tx_byte, fmt, args); - console_tx_flush(); + do_vtxprintf(fmt, args); } static void fatal_error(void) |