]> git.kernelconcepts.de Git - karo-tx-uboot.git/blobdiff - common/serial.c
Merge with git://git.kernel.org/pub/scm/boot/u-boot/galak/u-boot.git#device_tree
[karo-tx-uboot.git] / common / serial.c
index 38057d21f6cafc0e026dc2e693d85b6becd76a34..605d4e34be0a681d8d3eb535e3d067188e1c6205 100644 (file)
@@ -42,7 +42,19 @@ struct serial_device *default_serial_console (void)
        return &serial_scc_device;
 #elif defined(CONFIG_405GP) || defined(CONFIG_405CR) || defined(CONFIG_440) \
    || defined(CONFIG_405EP) || defined(CONFIG_MPC5xxx)
-#if defined(CONFIG_UART1_CONSOLE)
+#if defined(CONFIG_CONS_INDEX) && defined(CFG_NS16550_SERIAL)
+#if (CONFIG_CONS_INDEX==1)
+       return &eserial1_device;
+#elif (CONFIG_CONS_INDEX==2)
+       return &eserial2_device;
+#elif (CONFIG_CONS_INDEX==3)
+       return &eserial3_device;
+#elif (CONFIG_CONS_INDEX==4)
+       return &eserial4_device;
+#else
+#error "Bad CONFIG_CONS_INDEX."
+#endif
+#elif defined(CONFIG_UART1_CONSOLE)
                return &serial1_device;
 #else
                return &serial0_device;
@@ -84,6 +96,20 @@ void serial_initialize (void)
        serial_register(&serial1_device);
 #endif
 
+#if defined(CFG_NS16550_SERIAL)
+#if defined(CFG_NS16550_COM1)
+       serial_register(&eserial1_device);
+#endif
+#if defined(CFG_NS16550_COM2)
+       serial_register(&eserial2_device);
+#endif
+#if defined(CFG_NS16550_COM3)
+       serial_register(&eserial3_device);
+#endif
+#if defined(CFG_NS16550_COM4)
+       serial_register(&eserial4_device);
+#endif
+#endif /* CFG_NS16550_SERIAL */
        serial_assign (default_serial_console ()->name);
 }