summaryrefslogtreecommitdiffstats
path: root/src/arch
diff options
context:
space:
mode:
authorMichael Brown2013-11-27 20:42:23 +0100
committerMichael Brown2013-11-28 06:55:43 +0100
commitc501c980e0c2a0bf63b88fab6beea249690d05a9 (patch)
tree0ea9cb9d11063f1a1837c04de0e2e0db7e65a845 /src/arch
parent[console] Allow console input and output to be disabled independently (diff)
downloadipxe-c501c980e0c2a0bf63b88fab6beea249690d05a9.tar.gz
ipxe-c501c980e0c2a0bf63b88fab6beea249690d05a9.tar.xz
ipxe-c501c980e0c2a0bf63b88fab6beea249690d05a9.zip
[console] Add concept of generic console configuration
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/arch')
-rw-r--r--src/arch/i386/image/bootsector.c4
-rw-r--r--src/arch/i386/image/pxe_image.c4
2 files changed, 8 insertions, 0 deletions
diff --git a/src/arch/i386/image/bootsector.c b/src/arch/i386/image/bootsector.c
index cb164fda9..9a089e6bb 100644
--- a/src/arch/i386/image/bootsector.c
+++ b/src/arch/i386/image/bootsector.c
@@ -30,6 +30,7 @@ FILE_LICENCE ( GPL2_OR_LATER );
#include <realmode.h>
#include <biosint.h>
#include <bootsector.h>
+#include <ipxe/console.h>
/** Vector for storing original INT 18 handler
*
@@ -60,6 +61,9 @@ int call_bootsector ( unsigned int segment, unsigned int offset,
unsigned int drive ) {
int discard_b, discard_D, discard_d;
+ /* Reset console, since boot sector will probably use it */
+ console_reset();
+
DBG ( "Booting from boot sector at %04x:%04x\n", segment, offset );
/* Hook INTs 18 and 19 to capture failure paths */
diff --git a/src/arch/i386/image/pxe_image.c b/src/arch/i386/image/pxe_image.c
index 4a7d874be..dc28f6082 100644
--- a/src/arch/i386/image/pxe_image.c
+++ b/src/arch/i386/image/pxe_image.c
@@ -33,6 +33,7 @@ FILE_LICENCE ( GPL2_OR_LATER );
#include <ipxe/segment.h>
#include <ipxe/netdevice.h>
#include <ipxe/features.h>
+#include <ipxe/console.h>
FEATURE ( FEATURE_IMAGE, "PXE", DHCP_EB_FEATURE_PXE, 1 );
@@ -74,6 +75,9 @@ static int pxe_exec ( struct image *image ) {
/* Set PXE command line */
pxe_cmdline = image->cmdline;
+ /* Reset console since PXE NBP will probably use it */
+ console_reset();
+
/* Start PXE NBP */
rc = pxe_start_nbp();