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;
