diff options
author | Michael Brown | 2005-04-08 17:01:17 +0200 |
---|---|---|
committer | Michael Brown | 2005-04-08 17:01:17 +0200 |
commit | 0ff80b477dcff0726ebdbed95e8a93971e59e82b (patch) | |
tree | 860b7150212a07c24a9529ea072f3fb12700974c /src/core/config.c | |
parent | Merged this file into HEAD (diff) | |
download | ipxe-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.c | 49 |
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 + |