console: Refactor printk() varargs prototypes
Change-Id: I816641c2223c3079ad9c95c1380d4b250898ef93
Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Reviewed-on: https://review.coreboot.org/c/31491
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Julius Werner <jwerner@chromium.org>
diff --git a/src/console/printk.c b/src/console/printk.c
index 735876e..0a9d3bf 100644
--- a/src/console/printk.c
+++ b/src/console/printk.c
@@ -39,9 +39,8 @@
do_putchar(byte);
}
-int do_printk(int msg_level, const char *fmt, ...)
+int vprintk(int msg_level, const char *fmt, va_list args)
{
- va_list args;
int i;
if (IS_ENABLED(CONFIG_SQUELCH_EARLY_SMP) && ENV_CACHE_AS_RAM &&
@@ -60,9 +59,7 @@
spin_lock(&console_lock);
#endif
- va_start(args, fmt);
i = vtxprintf(wrap_putchar, fmt, args, NULL);
- va_end(args);
console_tx_flush();
@@ -78,12 +75,14 @@
return i;
}
-#if IS_ENABLED(CONFIG_VBOOT)
-void do_printk_va_list(int msg_level, const char *fmt, va_list args)
+int do_printk(int msg_level, const char *fmt, ...)
{
- if (!console_log_level(msg_level))
- return;
- vtxprintf(wrap_putchar, fmt, args, NULL);
- console_tx_flush();
+ va_list args;
+ int i;
+
+ va_start(args, fmt);
+ i = vprintk(msg_level, fmt, args);
+ va_end(args);
+
+ return i;
}
-#endif /* CONFIG_VBOOT */
diff --git a/src/include/console/console.h b/src/include/console/console.h
index 7ab61ea..33fe2df 100644
--- a/src/include/console/console.h
+++ b/src/include/console/console.h
@@ -19,6 +19,7 @@
#include <stdint.h>
#include <arch/cpu.h>
#include <console/post_codes.h>
+#include <console/vtxprintf.h>
#include <commonlib/loglevel.h>
#define RAM_DEBUG (IS_ENABLED(CONFIG_DEBUG_RAM_SETUP) ? BIOS_DEBUG : BIOS_NEVER)
@@ -56,8 +57,6 @@
#if __CONSOLE_ENABLE__
asmlinkage 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...) \
@@ -82,15 +81,10 @@
static inline void do_putchar(unsigned char byte) {}
#endif
-#if IS_ENABLED(CONFIG_VBOOT)
-/* FIXME: Collision of varargs with AMD headers without guard. */
-#include <console/vtxprintf.h>
-#if __CONSOLE_ENABLE__
-void do_printk_va_list(int msg_level, const char *fmt, va_list args);
-#else
-static inline void do_printk_va_list(int l, const char *fmt, va_list args) {}
-#endif
-#endif
+int vprintk(int msg_level, const char *fmt, va_list args);
+
+int do_printk(int msg_level, const char *fmt, ...)
+ __attribute__((format(printf, 2, 3)));
#endif /* !__ROMCC__ */
diff --git a/src/security/vboot/vboot_logic.c b/src/security/vboot/vboot_logic.c
index 00bbae6..8c3ba80 100644
--- a/src/security/vboot/vboot_logic.c
+++ b/src/security/vboot/vboot_logic.c
@@ -48,7 +48,7 @@
printk(BIOS_INFO, "VB2:%s() ", func);
va_start(args, fmt);
- do_printk_va_list(BIOS_INFO, fmt, args);
+ vprintk(BIOS_INFO, fmt, args);
va_end(args);
return;