[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1432645607-29343-1-git-send-email-kuleshovmail@gmail.com>
Date:	Tue, 26 May 2015 19:06:47 +0600
From:	Alexander Kuleshov <kuleshovmail@...il.com>
To:	Thomas Gleixner <tglx@...utronix.de>,
	Ingo Molnar <mingo@...hat.com>,
	"H. Peter Anvin" <hpa@...or.com>
Cc:	Alexander Kuleshov <kuleshovmail@...il.com>,
	Andy Shevchenko <andriy.shevchenko@...ux.intel.com>,
	LKML <linux-kernel@...r.kernel.org>,
	Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
	Borislav Petkov <bp@...e.de>,
	Mark Rustad <mark.d.rustad@...el.com>,
	Yinghai Lu <yinghai@...nel.org>
Subject: [PATCH v8 0/3] x86/earlyprintk: setup serial earlyprintk as early as possible
The early_printk function is usable only after the setup_early_printk will
be executed. We pass 'earlyprintk' through the kernel command line. So, it
means that earlyprintk will be usable only after the 'parse_early_param'
will be executed. We have usable earlyprintk only during early boot, kernel
decompression and after call of the 'parse_early_param'. This patchset makes
serial earlyprintk usable before the call of the 'parse_early_param'.
Patchset was tested for both x86 and x86_64 architectures with the qemu.
These patchset provides following changes:
1. Move handling of the builtin command line to the separate function
from the setup_arch. Now we can call it from the arch/x86/kernel/head{32,64}.c,
and find 'earlyprintk' kernel command line paramter there.
2. Provide setup_serial_console function to setup serial earlyprintk in the
arch/x86/kernel/head{32,64}.c
v8:
* Fixed warning with the definition of the setup_early_serial_console
in the arch/x86/include/asm/setup.h
v7:
* Move setup_early_serial_console to the the arch/x86/include/setup.h
* Add ifdefs to prevent setup_serial_console if CONFIG_EARLY_PRINTK
is not set.
v6:
* Style fixes.
* Call of the suetp_builtin_cmdline moved to the separate patch.
v5:
* Call setup_builtin_cmdline instead of setup_cmdline
v4:
* Move setup_early_serial_console from the include/linux/printk.h
to the arch/x86/include/asm/serial.h, because this function is only
for x86 now.
v3:
* Call setup_cmdline before setup_early_printk;
* setup_early_printk call wrapped with the setup_early_serial_console which
checks that 'serial' given to the earlyprintk command line option. This
prevents call of the setup_early_printk with the given pciserial/dbgp/efi,
because they are using early_ioremap.
v2:
* Comment added before the setup_early_printk call;
* Added information about testing to the commit message.
Alexander Kuleshov (3):
  x86/setup: introduce setup_bultin_cmdline
  x86/setup: handle builtin command line as early as possible
  x86/earlyprintk: setup earlyprintk as early as possible
 arch/x86/include/asm/setup.h   |  8 ++++++++
 arch/x86/kernel/early_printk.c | 24 ++++++++++++++++++++++++
 arch/x86/kernel/head32.c       |  7 +++++++
 arch/x86/kernel/head64.c       |  7 +++++++
 arch/x86/kernel/setup.c        | 33 ++++++++++++++++++---------------
 5 files changed, 64 insertions(+), 15 deletions(-)
--
2.4.0.350.g9532ead
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/
Powered by blists - more mailing lists