X-Git-Url: http://git.cascardo.info/?p=cascardo%2Flinux.git;a=blobdiff_plain;f=kernel%2Fprintk%2Fprintk.c;h=d5e3973154739f9453926f28e71ec7e20ba753bb;hp=170d3a8040f4492c07e108d4edbe9929bb7865b9;hb=563873318d328d9bbab4b00dfd835ac7c7e28697;hpb=bfd8d3f23b51018388be0411ccbc2d56277fe294 diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c index 170d3a8040f4..d5e397315473 100644 --- a/kernel/printk/printk.c +++ b/kernel/printk/printk.c @@ -253,6 +253,17 @@ static int preferred_console = -1; int console_set_on_cmdline; EXPORT_SYMBOL(console_set_on_cmdline); +#ifdef CONFIG_OF +static bool of_specified_console; + +void console_set_by_of(void) +{ + of_specified_console = true; +} +#else +# define of_specified_console false +#endif + /* Flag: console code may call schedule() */ static int console_may_schedule; @@ -2642,7 +2653,7 @@ void register_console(struct console *newcon) * didn't select a console we take the first one * that registers here. */ - if (preferred_console < 0) { + if (preferred_console < 0 && !of_specified_console) { if (newcon->index < 0) newcon->index = 0; if (newcon->setup == NULL ||