From: Rob Herring <robh@xxxxxxxxxx> This started out as an attempt to add arm64's earlyprintk support to ARM in order to get an earlier, runtime setup console on multi-platform kernels. The first issue was needing the fixmap support which conveniently Mark Salter was working on and is mostly in place now. Like many things on ARM and arm64 now, it then became where do I put the now common, shared code. After digging more into various early console/printk support, it turns out the 8250_early.c setup code was the best starting point. This is based on Mark Salter's fixmap support currently in linux-next. This is tested on arm64 and ARM with pl011 and 8250. The ARM support also requires fixmap and fixed mapping support which are not yet in place. I have some patches in my tree to support fixmap, but they need some more work. Fortunately, once fixmap is in place, it is just a Kconfig option to enable earlycon support on ARM. A git tree is available here[1]. Based on this series, I would like to add support for doing earlycon setup using DT. Rob [1] git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux.git earlycon Rob Herring (8): x86: move FIX_EARLYCON_MEM kconfig into x86 arm64: add FIXMAP_PAGE_NOCACHE definition arm64: enable FIX_EARLYCON_MEM kconfig tty/serial: add generic serial earlycon tty/serial: convert 8250 to generic earlycon tty/serial: pl011: add generic earlycon support tty/serial: add arm64 semihosting earlycon arm64: remove arch specific earlyprintk Documentation/kernel-parameters.txt | 6 +- arch/arm64/Kconfig | 3 + arch/arm64/Kconfig.debug | 9 -- arch/arm64/include/asm/fixmap.h | 3 +- arch/arm64/kernel/Makefile | 1 - arch/arm64/kernel/early_printk.c | 158 ----------------------------- arch/x86/Kconfig | 3 + drivers/tty/serial/8250/8250_early.c | 138 +++---------------------- drivers/tty/serial/8250/Kconfig | 5 - drivers/tty/serial/Kconfig | 24 ++++- drivers/tty/serial/Makefile | 3 + drivers/tty/serial/amba-pl011.c | 30 +++++- drivers/tty/serial/earlycon-arm-semihost.c | 44 ++++++++ drivers/tty/serial/earlycon.c | 148 +++++++++++++++++++++++++++ include/linux/serial_core.h | 16 +++ 15 files changed, 287 insertions(+), 304 deletions(-) delete mode 100644 arch/arm64/kernel/early_printk.c create mode 100644 drivers/tty/serial/earlycon-arm-semihost.c create mode 100644 drivers/tty/serial/earlycon.c -- 1.8.3.2 -- To unsubscribe from this list: send the line "unsubscribe linux-serial" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html