diff --git a/board/prodrive/p3mx/serial.c b/board/prodrive/p3mx/serial.c
index e1af37e..d3591b4 100644
--- a/board/prodrive/p3mx/serial.c
+++ b/board/prodrive/p3mx/serial.c
@@ -35,6 +35,9 @@
 
 #include <common.h>
 #include <command.h>
+#include <serial.h>
+#include <linux/compiler.h>
+
 #include "../../Marvell/include/memory.h"
 #include "serial.h"
 
@@ -42,14 +45,14 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
-int serial_init (void)
+static int p3mx_serial_init(void)
 {
 	mpsc_init (gd->baudrate);
 
 	return (0);
 }
 
-void serial_putc (const char c)
+static void p3mx_serial_putc(const char c)
 {
 	if (c == '\n')
 		mpsc_putchar ('\r');
@@ -57,28 +60,81 @@
 	mpsc_putchar (c);
 }
 
-int serial_getc (void)
+static int p3mx_serial_getc(void)
 {
 	return mpsc_getchar ();
 }
 
-int serial_tstc (void)
+static int p3mx_serial_tstc(void)
 {
 	return mpsc_test_char ();
 }
 
-void serial_setbrg (void)
+static void p3mx_serial_setbrg(void)
 {
 	galbrg_set_baudrate (CONFIG_MPSC_PORT, gd->baudrate);
 }
 
 
-void serial_puts (const char *s)
+static void p3mx_serial_puts(const char *s)
 {
 	while (*s) {
 		serial_putc (*s++);
 	}
 }
+
+#ifdef CONFIG_SERIAL_MULTI
+static struct serial_device p3mx_serial_drv = {
+	.name	= "p3mx_serial",
+	.start	= p3mx_serial_init,
+	.stop	= NULL,
+	.setbrg	= p3mx_serial_setbrg,
+	.putc	= p3mx_serial_putc,
+	.puts	= p3mx_serial_puts,
+	.getc	= p3mx_serial_getc,
+	.tstc	= p3mx_serial_tstc,
+};
+
+void p3mx_serial_initialize(void)
+{
+	serial_register(&p3mx_serial_drv);
+}
+
+__weak struct serial_device *default_serial_console(void)
+{
+	return &p3mx_serial_drv;
+}
+#else
+int serial_init(void)
+{
+	return p3mx_serial_init();
+}
+
+void serial_setbrg(void)
+{
+	p3mx_serial_setbrg();
+}
+
+void serial_putc(const char c)
+{
+	p3mx_serial_putc(c);
+}
+
+void serial_puts(const char *s)
+{
+	p3mx_serial_puts(s);
+}
+
+int serial_getc(void)
+{
+	return p3mx_serial_getc();
+}
+
+int serial_tstc(void)
+{
+	return p3mx_serial_tstc();
+}
+#endif
 
 #if defined(CONFIG_CMD_KGDB)
 void kgdb_serial_init (void)
diff --git a/common/serial.c b/common/serial.c
index e4b566e..5129837 100644
--- a/common/serial.c
+++ b/common/serial.c
@@ -69,6 +69,7 @@
 serial_initfunc(evb64260_serial_initialize);
 serial_initfunc(ml2_serial_initialize);
 serial_initfunc(sconsole_serial_initialize);
+serial_initfunc(p3mx_serial_initialize);
 
 void serial_register(struct serial_device *dev)
 {
@@ -116,6 +117,7 @@
 	evb64260_serial_initialize();
 	ml2_serial_initialize();
 	sconsole_serial_initialize();
+	p3mx_serial_initialize();
 
 	serial_assign(default_serial_console()->name);
 }
