summaryrefslogtreecommitdiff
path: root/common/serial.c
diff options
context:
space:
mode:
authorStefan Roese <sr@denx.de>2006-09-18 10:48:03 +0200
committerStefan Roese <sr@denx.de>2006-09-18 10:48:03 +0200
commit64cd52efd1dc51a4a5a0cf10efe5362fab27de29 (patch)
tree64e046a7d8b2f0106bc387dd032734ad963f4e68 /common/serial.c
parent899620c2d66d4eef3b2a0034d062e71d45d886c9 (diff)
parent854bc8da75709f13dab4cfa6e9094c0cb49b5c5a (diff)
downloadu-boot-imx-64cd52efd1dc51a4a5a0cf10efe5362fab27de29.zip
u-boot-imx-64cd52efd1dc51a4a5a0cf10efe5362fab27de29.tar.gz
u-boot-imx-64cd52efd1dc51a4a5a0cf10efe5362fab27de29.tar.bz2
Merge with /home/stefan/git/u-boot/denx
Diffstat (limited to 'common/serial.c')
-rw-r--r--common/serial.c28
1 files changed, 27 insertions, 1 deletions
diff --git a/common/serial.c b/common/serial.c
index 38057d2..605d4e3 100644
--- a/common/serial.c
+++ b/common/serial.c
@@ -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);
}