From fa97bdf92709adaaf8b9a5164a895e262a4fcf60 Mon Sep 17 00:00:00 2001 From: Pekka Enberg Date: Sun, 11 Jul 2010 11:06:57 +0300 Subject: x86, setup: Early-boot serial I/O support This patch adds serial I/O support to the real-mode setup (very early boot) printf(). It's useful for debugging boot code when running Linux under KVM, for example. The actual code was lifted from early printk. Cc: Cyrill Gorcunov Cc: Ingo Molnar Cc: Yinghai Lu Signed-off-by: Pekka Enberg LKML-Reference: <1278835617-11368-1-git-send-email-penberg@cs.helsinki.fi> Signed-off-by: H. Peter Anvin --- arch/x86/boot/main.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'arch/x86/boot/main.c') diff --git a/arch/x86/boot/main.c b/arch/x86/boot/main.c index 140172b895bd..4ef1a33e8572 100644 --- a/arch/x86/boot/main.c +++ b/arch/x86/boot/main.c @@ -130,6 +130,9 @@ void main(void) /* First, copy the boot header into the "zeropage" */ copy_boot_params(); + /* Initialize the early-boot console */ + console_init(); + /* End of heap check */ init_heap(); -- cgit v1.2.1 From 8fee13a48e4879fba57725f6d9513df4bfa8e9f3 Mon Sep 17 00:00:00 2001 From: Yinghai Lu Date: Mon, 2 Aug 2010 16:21:22 -0700 Subject: x86, setup: enable early console output from the decompressor This enables the decompressor output to be seen on the serial console. Most of the code is shared with the regular boot code. We could add printf to the decompressor if needed, but currently there is no sufficiently compelling user. -v2: define BOOT_BOOT_H to avoid include boot.h -v3: early_serial_base need to be static in misc.c ? -v4: create seperate string.c printf.c cmdline.c early_serial_console.c after hpa's patch that allow global variables in compressed/misc stage -v5: remove printf.c related Signed-off-by: Yinghai Lu Signed-off-by: H. Peter Anvin --- arch/x86/boot/main.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'arch/x86/boot/main.c') diff --git a/arch/x86/boot/main.c b/arch/x86/boot/main.c index 4ef1a33e8572..40358c8905be 100644 --- a/arch/x86/boot/main.c +++ b/arch/x86/boot/main.c @@ -132,6 +132,8 @@ void main(void) /* Initialize the early-boot console */ console_init(); + if (cmdline_find_option_bool("debug")) + puts("early console in setup code\n"); /* End of heap check */ init_heap(); @@ -171,10 +173,6 @@ void main(void) /* Set the video mode */ set_video(); - /* Parse command line for 'quiet' and pass it to decompressor. */ - if (cmdline_find_option_bool("quiet")) - boot_params.hdr.loadflags |= QUIET_FLAG; - /* Do the last things and invoke protected mode */ go_to_protected_mode(); } -- cgit v1.2.1