Merge branch 'master' of git://www.denx.de/git/u-boot-mpc83xx
[oweals/u-boot.git] / common / devices.c
index bf7486ac44262d6b818b71555394c4ea691f41d6..ddf8f8ee2d9f8d9c220cb73198ee93a0b5335c87 100644 (file)
@@ -26,6 +26,7 @@
 #include <stdarg.h>
 #include <malloc.h>
 #include <devices.h>
+#include <serial.h>
 #ifdef CONFIG_LOGBUFFER
 #include <logbuff.h>
 #endif
@@ -33,6 +34,8 @@
 #include <i2c.h>
 #endif
 
+DECLARE_GLOBAL_DATA_PTR;
+
 list_t devlist = 0;
 device_t *stdio_devices[] = { NULL, NULL, NULL };
 char *stdio_names[MAX_FILES] = { "stdin", "stdout", "stderr" };
@@ -73,7 +76,7 @@ static void drv_system_init (void)
 
        strcpy (dev.name, "serial");
        dev.flags = DEV_FLAGS_OUTPUT | DEV_FLAGS_INPUT | DEV_FLAGS_SYSTEM;
-#if CONFIG_SERIAL_SOFTWARE_FIFO
+#ifdef CONFIG_SERIAL_SOFTWARE_FIFO
        dev.putc = serial_buffered_putc;
        dev.puts = serial_buffered_puts;
        dev.getc = serial_buffered_getc;
@@ -159,8 +162,6 @@ int device_deregister(char *devname)
 int devices_init (void)
 {
 #ifndef CONFIG_ARM     /* already relocated for current ARM implementation */
-       DECLARE_GLOBAL_DATA_PTR;
-
        ulong relocation_offset = gd->reloc_off;
        int i;
 
@@ -194,6 +195,15 @@ int devices_init (void)
        drv_logbuff_init ();
 #endif
        drv_system_init ();
+#ifdef CONFIG_SERIAL_MULTI
+       serial_devices_init ();
+#endif
+#ifdef CONFIG_USB_TTY
+       drv_usbtty_init ();
+#endif
+#ifdef CONFIG_NETCONSOLE
+       drv_nc_init ();
+#endif
 
        return (0);
 }