summaryrefslogtreecommitdiffstats
path: root/src/core/config.c
diff options
context:
space:
mode:
authorMichael Brown2005-04-08 17:01:17 +0200
committerMichael Brown2005-04-08 17:01:17 +0200
commit0ff80b477dcff0726ebdbed95e8a93971e59e82b (patch)
tree860b7150212a07c24a9529ea072f3fb12700974c /src/core/config.c
parentMerged this file into HEAD (diff)
downloadipxe-0ff80b477dcff0726ebdbed95e8a93971e59e82b.tar.gz
ipxe-0ff80b477dcff0726ebdbed95e8a93971e59e82b.tar.xz
ipxe-0ff80b477dcff0726ebdbed95e8a93971e59e82b.zip
Merged mcb30-realmode-redesign back to HEAD
Diffstat (limited to 'src/core/config.c')
-rw-r--r--src/core/config.c49
1 files changed, 49 insertions, 0 deletions
diff --git a/src/core/config.c b/src/core/config.c
index 180b0669..d85ca242 100644
--- a/src/core/config.c
+++ b/src/core/config.c
@@ -7,6 +7,7 @@
#include "etherboot.h"
#include "nic.h"
+#include "console.h"
#ifdef BUILD_SERIAL
#include ".buildserial.h"
#define xstr(s) str(s)
@@ -104,6 +105,9 @@ void print_config(void)
"DNS "
#endif
"\n");
+#ifdef KEEP_IT_REAL
+ printf( "Keeping It Real [EXPERIMENTAL]\n" );
+#endif
}
static const char *driver_name[] = {
@@ -159,3 +163,48 @@ void disable(struct dev *dev)
dev->disable = 0;
}
}
+
+
+/*
+ * Drag in all requested console types
+ *
+ * At least one of the CONSOLE_xxx has to be set. CONSOLE_DUAL sets
+ * both CONSOLE_FIRMWARE and CONSOLE_SERIAL for legacy compatibility.
+ * If no CONSOLE_xxx is set, CONSOLE_FIRMWARE is assumed.
+ */
+
+#ifdef CONSOLE_CRT
+#define CONSOLE_FIRMWARE
+#endif
+
+#ifdef CONSOLE_DUAL
+#undef CONSOLE_FIRMWARE
+#define CONSOLE_FIRMWARE
+#undef CONSOLE_SERIAL
+#define CONSOLE_SERIAL
+#endif
+
+#if !defined(CONSOLE_FIRMWARE) && !defined(CONSOLE_SERIAL)
+#define CONSOLE_FIRMWARE
+#endif
+
+#ifdef CONSOLE_FIRMWARE
+REQUIRE_OBJECT ( bios_console );
+#endif
+
+#ifdef CONSOLE_SERIAL
+REQUIRE_OBJECT ( serial );
+#endif
+
+#ifdef CONSOLE_DIRECT_VGA
+REQUIRE_OBJECT ( video_subr );
+#endif
+
+#ifdef CONSOLE_BTEXT
+REQUIRE_OBJECT ( btext );
+#endif
+
+#ifdef CONSOLE_PC_KBD
+REQUIRE_OBJECT ( pc_kbd );
+#endif
+