CBMEM CONSOLE: Add code using the new console driver.
[coreboot.git] / src / console / console.c
index 3178562bb342fb8185fec001c5d22e2ebed28aac..8f60f04d4caebcadcb95a5991cf42f94ba28b75a 100644 (file)
 #include <arch/hlt.h>
 #include <arch/io.h>
 
-#if CONFIG_CONSOLE_NE2K
-#include <console/ne2k.h>
-#endif
-
 #ifndef __PRE_RAM__
 #include <string.h>
 #include <pc80/mc146818rtc.h>
@@ -44,21 +40,21 @@ void console_init(void)
        }
 }
 
-static void __console_tx_byte(unsigned char byte)
+void console_tx_flush(void)
 {
        struct console_driver *driver;
        for(driver = console_drivers; driver < econsole_drivers; driver++) {
-               driver->tx_byte(byte);
+               if (!driver->tx_flush)
+                       continue;
+               driver->tx_flush();
        }
 }
 
-void console_tx_flush(void)
+static void __console_tx_byte(unsigned char byte)
 {
        struct console_driver *driver;
        for(driver = console_drivers; driver < econsole_drivers; driver++) {
-               if (!driver->tx_flush)
-                       continue;
-               driver->tx_flush();
+               driver->tx_byte(byte);
        }
 }
 
@@ -91,7 +87,7 @@ int console_tst_byte(void)
        return 0;
 }
 
-#else
+#else // __PRE_RAM__   ^^^ NOT defined   vvv defined
 
 void console_init(void)
 {
@@ -99,8 +95,17 @@ void console_init(void)
        enable_usbdebug(CONFIG_USBDEBUG_DEFAULT_PORT);
        early_usbdebug_init();
 #endif
+#if CONFIG_CONSOLE_SERIAL8250
+       uart_init();
+#endif
+#if CONFIG_DRIVERS_OXFORD_OXPCIE && CONFIG_CONSOLE_SERIAL8250MEM
+       oxford_init();
+#endif
 #if CONFIG_CONSOLE_NE2K
        ne2k_init(CONFIG_CONSOLE_NE2K_IO_PORT);
+#endif
+#if CONFIG_CONSOLE_CBMEM
+       cbmemc_init();
 #endif
        static const char console_test[] =
                "\n\ncoreboot-"