Commit 6b2672bf authored by Andrew Morton's avatar Andrew Morton Committed by Linus Torvalds

[PATCH] ia32 early printk

From: Andi Kleen <ak@muc.de>

Implement VGA and serial early printk on x86.  We just include the x86_64
version.
parent cf4389cb
......@@ -310,6 +310,23 @@ running once the system is up.
dtc3181e= [HW,SCSI]
earlyprintk= [x86, x86_64]
earlyprintk=vga
earlyprintk=serial[,ttySn[,baudrate]]
Append ,keep to not disable it when the real console
takes over.
Only vga or serial at a time, not both.
Currently only ttyS0 and ttyS1 are supported.
Interaction with the standard serial driver is not
very good.
The VGA output is eventually overwritten by the real
console.
eata= [HW,SCSI]
eda= [HW,PS2]
......
......@@ -1177,6 +1177,9 @@ config DEBUG_KERNEL
Say Y here if you are developing drivers or trying to debug and
identify kernel problems.
config EARLY_PRINTK
default y
config DEBUG_STACKOVERFLOW
bool "Check for stack overflows"
depends on DEBUG_KERNEL
......
......@@ -31,6 +31,7 @@ obj-y += sysenter.o vsyscall.o
obj-$(CONFIG_ACPI_SRAT) += srat.o
obj-$(CONFIG_HPET_TIMER) += time_hpet.o
obj-$(CONFIG_EFI) += efi.o efi_stub.o
obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
EXTRA_AFLAGS := -traditional
......
#include "../../x86_64/kernel/early_printk.c"
......@@ -1118,6 +1118,18 @@ void __init setup_arch(char **cmdline_p)
#endif
paging_init();
#ifdef CONFIG_EARLY_PRINTK
{
char *s = strstr(*cmdline_p, "earlyprintk=");
if (s) {
extern void setup_early_printk(char *);
setup_early_printk(s+12);
printk("early console enabled\n");
}
}
#endif
dmi_scan_machine();
#ifdef CONFIG_X86_GENERICARCH
......
......@@ -7,7 +7,11 @@
/* Simple VGA output */
#ifdef __i386__
#define VGABASE (__PAGE_OFFSET + 0xb8000UL)
#else
#define VGABASE 0xffffffff800b8000UL
#endif
#define MAX_YPOS 25
#define MAX_XPOS 80
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment