diff --git a/drivers/serial/serial.c b/drivers/serial/serial.c
index 5bbf3aeb4456faaa9f154d9fcb2b4338e868c770..d648a73f4113c19257f58284bbe4a4e613e5b40b 100644
--- a/drivers/serial/serial.c
+++ b/drivers/serial/serial.c
@@ -273,6 +273,13 @@ void serial_puts(const char *s)
 	get_current()->puts(s);
 }
 
+void default_serial_puts(const char *s)
+{
+	struct serial_device *dev = get_current();
+	while (*s)
+		dev->putc(*s++);
+}
+
 #if CONFIG_POST & CONFIG_SYS_POST_UART
 static const int bauds[] = CONFIG_SYS_BAUDRATE_TABLE;
 
diff --git a/include/serial.h b/include/serial.h
index a8d23f519dd2e10c7f90038a556143aac93510da..14f863ed20ec73f67ed2df791ad2ad4b904b689c 100644
--- a/include/serial.h
+++ b/include/serial.h
@@ -20,6 +20,8 @@ struct serial_device {
 	struct serial_device	*next;
 };
 
+void default_serial_puts(const char *s);
+
 extern struct serial_device serial_smc_device;
 extern struct serial_device serial_scc_device;
 extern struct serial_device *default_serial_console(void);