From: Milton Miller Date: Sun, 10 Jun 2007 04:32:43 +0000 (+1000) Subject: [POWERPC] Fix console output getting dropped on platforms without udbg_putc X-Git-Tag: v2.6.22-rc5~33^2 X-Git-Url: http://www.pilppa.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=220ddc0847ebd42d18ee78c7e1c2f4c2e3be637d;p=linux-2.6-omap-h63xx.git [POWERPC] Fix console output getting dropped on platforms without udbg_putc Previously, registering this early console would just result in dropping early buffered printk output until a udbg_putc was registered. However, commit 69331af79cf29e26d1231152a172a1a10c2df511 clears the CON_PRINTBUFFER flag on the main console when a CON_BOOT (early) console has been registered, resulting in the buffered messages never being displayed to the user. This fixes the problem by making sure we don't register udbg_console on platforms that don't implement udbg_putc. Signed-off-by: Milton Miller Acked-by: Mark A. Greer Signed-off-by: Paul Mackerras --- diff --git a/arch/powerpc/kernel/udbg.c b/arch/powerpc/kernel/udbg.c index 87703df8750..cbca1df8bc6 100644 --- a/arch/powerpc/kernel/udbg.c +++ b/arch/powerpc/kernel/udbg.c @@ -151,12 +151,18 @@ static struct console udbg_console = { static int early_console_initialized; -/* called by setup_system */ +/* + * Called by setup_system after ppc_md->probe and ppc_md->early_init. + * Call it again after setting udbg_putc in ppc_md->setup_arch. + */ void register_early_udbg_console(void) { if (early_console_initialized) return; + if (!udbg_putc) + return; + if (strstr(boot_command_line, "udbg-immortal")) { printk(KERN_INFO "early console immortal !\n"); udbg_console.flags &= ~CON_BOOT;