diff --git a/drivers/serial/serial_imx.c b/drivers/serial/serial_imx.c
index b9ca748..d37ec29 100644
--- a/drivers/serial/serial_imx.c
+++ b/drivers/serial/serial_imx.c
@@ -19,6 +19,8 @@
 
 #include <common.h>
 #include <asm/arch/imx-regs.h>
+#include <serial.h>
+#include <linux/compiler.h>
 
 #if defined CONFIG_IMX_SERIAL1
 #define UART_BASE IMX_UART1_BASE
@@ -50,7 +52,7 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
-void serial_setbrg (void)
+static void imx_serial_setbrg(void)
 {
 	serial_init();
 }
@@ -62,7 +64,7 @@
  * are always 8 data bits, no parity, 1 stop bit, no start bits.
  *
  */
-int serial_init (void)
+static int imx_serial_init(void)
 {
 	volatile struct imx_serial* base = (struct imx_serial *)UART_BASE;
 	unsigned int ufcr_rfdiv;
@@ -163,7 +165,7 @@
  * otherwise. When the function is successful, the character read is
  * written into its argument c.
  */
-int serial_getc (void)
+static int imx_serial_getc(void)
 {
 	volatile struct imx_serial* base = (struct imx_serial *)UART_BASE;
 	unsigned char ch;
@@ -185,7 +187,7 @@
 /*
  * Output a single byte to the serial port.
  */
-void serial_putc (const char c)
+static void imx_serial_putc(const char c)
 {
 	volatile struct imx_serial* base = (struct imx_serial *)UART_BASE;
 
@@ -202,7 +204,7 @@
 /*
  * Test whether a character is in the RX buffer
  */
-int serial_tstc (void)
+static int imx_serial_tstc(void)
 {
 	volatile struct imx_serial* base = (struct imx_serial *)UART_BASE;
 
@@ -212,10 +214,62 @@
 	return 1;
 }
 
-void
-serial_puts (const char *s)
+static void imx_serial_puts(const char *s)
 {
 	while (*s) {
 		serial_putc (*s++);
 	}
 }
+
+#ifdef CONFIG_SERIAL_MULTI
+static struct serial_device imx_serial_drv = {
+	.name	= "imx_serial",
+	.start	= imx_serial_init,
+	.stop	= NULL,
+	.setbrg	= imx_serial_setbrg,
+	.putc	= imx_serial_putc,
+	.puts	= imx_serial_puts,
+	.getc	= imx_serial_getc,
+	.tstc	= imx_serial_tstc,
+};
+
+void imx_serial_initialize(void)
+{
+	serial_register(&imx_serial_drv);
+}
+
+__weak struct serial_device *default_serial_console(void)
+{
+	return &imx_serial_drv;
+}
+#else
+int serial_init(void)
+{
+	return imx_serial_init();
+}
+
+void serial_setbrg(void)
+{
+	imx_serial_setbrg();
+}
+
+void serial_putc(const char c)
+{
+	imx_serial_putc(c);
+}
+
+void serial_puts(const char *s)
+{
+	imx_serial_puts(s);
+}
+
+int serial_getc(void)
+{
+	return imx_serial_getc();
+}
+
+int serial_tstc(void)
+{
+	return imx_serial_tstc();
+}
+#endif
