summaryrefslogtreecommitdiffstats
path: root/src/arch
diff options
context:
space:
mode:
Diffstat (limited to 'src/arch')
-rw-r--r--src/arch/i386/core/video_subr.c9
-rw-r--r--src/arch/i386/firmware/pcbios/bios_console.c8
-rw-r--r--src/arch/i386/interface/vmware/vmconsole.c8
3 files changed, 25 insertions, 0 deletions
diff --git a/src/arch/i386/core/video_subr.c b/src/arch/i386/core/video_subr.c
index 6885ad9af..7dd99e712 100644
--- a/src/arch/i386/core/video_subr.c
+++ b/src/arch/i386/core/video_subr.c
@@ -11,6 +11,14 @@
#include <ipxe/console.h>
#include <ipxe/init.h>
#include "vga.h"
+#include <config/console.h>
+
+/* Set default console usage if applicable */
+#if ! ( defined ( CONSOLE_DIRECT_VGA ) && \
+ CONSOLE_EXPLICIT ( CONSOLE_DIRECT_VGA ) )
+#undef CONSOLE_DIRECT_VGA
+#define CONSOLE_DIRECT_VGA CONSOLE_USAGE_ALL
+#endif
struct console_driver vga_console __console_driver;
@@ -97,6 +105,7 @@ static void vga_putc(int byte)
struct console_driver vga_console __console_driver = {
.putchar = vga_putc,
.disabled = 1,
+ .usage = CONSOLE_DIRECT_VGA,
};
struct init_fn video_init_fn __init_fn ( INIT_EARLY ) = {
diff --git a/src/arch/i386/firmware/pcbios/bios_console.c b/src/arch/i386/firmware/pcbios/bios_console.c
index e489971f1..8a8795d77 100644
--- a/src/arch/i386/firmware/pcbios/bios_console.c
+++ b/src/arch/i386/firmware/pcbios/bios_console.c
@@ -23,6 +23,7 @@ FILE_LICENCE ( GPL2_OR_LATER );
#include <ipxe/console.h>
#include <ipxe/ansiesc.h>
#include <ipxe/keymap.h>
+#include <config/console.h>
#define ATTR_BOLD 0x08
@@ -48,6 +49,12 @@ FILE_LICENCE ( GPL2_OR_LATER );
#define ATTR_DEFAULT ATTR_FCOL_WHITE
+/* Set default console usage if applicable */
+#if ! ( defined ( CONSOLE_PCBIOS ) && CONSOLE_EXPLICIT ( CONSOLE_PCBIOS ) )
+#undef CONSOLE_PCBIOS
+#define CONSOLE_PCBIOS CONSOLE_USAGE_ALL
+#endif
+
/** Current character attribute */
static unsigned int bios_attr = ATTR_DEFAULT;
@@ -319,4 +326,5 @@ struct console_driver bios_console __console_driver = {
.putchar = bios_putchar,
.getchar = bios_getchar,
.iskey = bios_iskey,
+ .usage = CONSOLE_PCBIOS,
};
diff --git a/src/arch/i386/interface/vmware/vmconsole.c b/src/arch/i386/interface/vmware/vmconsole.c
index 930c088d7..3096e5b53 100644
--- a/src/arch/i386/interface/vmware/vmconsole.c
+++ b/src/arch/i386/interface/vmware/vmconsole.c
@@ -29,10 +29,17 @@ FILE_LICENCE ( GPL2_OR_LATER );
#include <ipxe/lineconsole.h>
#include <ipxe/init.h>
#include <ipxe/guestrpc.h>
+#include <config/console.h>
/** VMware logfile console buffer size */
#define VMCONSOLE_BUFSIZE 128
+/* Set default console usage if applicable */
+#if ! ( defined ( CONSOLE_VMWARE ) && CONSOLE_EXPLICIT ( CONSOLE_VMWARE ) )
+#undef CONSOLE_VMWARE
+#define CONSOLE_VMWARE CONSOLE_USAGE_ALL
+#endif
+
/** VMware logfile console GuestRPC channel */
static int vmconsole_channel;
@@ -87,6 +94,7 @@ static void vmconsole_putchar ( int character ) {
struct console_driver vmconsole __console_driver = {
.putchar = vmconsole_putchar,
.disabled = 1,
+ .usage = CONSOLE_VMWARE,
};
/**