On 2/16/07, Gerd Hoffmann <[EMAIL PROTECTED]> wrote:
The console subsystem already has an idea of a boot console, using the CON_BOOT flag. The implementation has some flaws though. The major problem is that presence of a boot console makes register_console() ignore any other console devices (unless explicitly specified on the kernel command line). This patch fixes the console selection code to *not* consider a boot console a full-featured one, so the first "normal" console registering will become the default boot console instead. This way the unregister call for the boot console in register_console() actually triggers and the handover from the boot console to the real console device works smoothly. The patch also changes the x86 early_printk code to use this. The early console is simply tagged as boot console, the disable_early_printk() call is gone as it isn't needed any more.
just notice console handover patch got into mainline 5/8. for early_uart_console, I have some ideas: 1. merged that into early_serial_console in arch/x86_64/kernel/early_printk.c, and move early_printk.c to kernel/, --- make it understand earlyprintk=uart,io,0x3f8,9600n8 earlyprintk=uart,mmio,0xff5e0000,115200n8 in addition to vga, ttyS, serial 2. or make early_uart_console to be another CON_BOOT, and get rid of late_initcall(early_uart_console_switch). actually with late_initcall early_uart_console_switch instead of console handover, we will lose char output from serial drv init to late_initcall stage. in this case, we need to EARLY_SERIAL_CONSOLE to select early_serial_console or early_uart_console for x86_64 platform. YH - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/