powerpc/legacy_serial: Support MVME5100 UARTS with shifted registers
authorStephen Chivers <schivers@csc.com>
Sat, 19 Apr 2014 23:43:10 +0000 (09:43 +1000)
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>
Mon, 28 Apr 2014 07:36:25 +0000 (17:36 +1000)
commit13ae40370f62cd73f90aca34feb44bac83f41075
tree207e035d047b2101dde5c0a9ea7ecfbcc44de6dc
parent147c05168fc86e824ccd1c0a02b40843e3cbca88
powerpc/legacy_serial: Support MVME5100 UARTS with shifted registers

This patch adds support to legacy serial for
UARTS with shifted registers.

The MVME5100 Single Board Computer is a PowerPC platform
that has 16550 style UARTS with register addresses that are
16 bytes apart (shifted by 4).

Commit  309257484cc1a592e8ac5fbdd8cd661be2b80bf8
"powerpc: Cleanup udbg_16550 and add support for LPC PIO-only UARTs"
added support to udbg_16550 for shifted registers by adding a "stride"
parameter to the initialisation operations for Programmed IO and
Memory Mapped IO.

As a consequence it is now possible to use the services of legacy serial
to provide early serial console messages for the MVME5100.

An added benefit of this is that the serial console will always be
"ttyS0" irrespective of whether the computer is fitted with extra
PCI 8250 interface boards or not.

I have tested this patch using the four PowerPC platforms available to me:

MVME5100 - shifted registers,
SAM440EP - unshifted registers,
MPC8349 - unshifted registers,
MVME4100 - unshifted registers.

Signed-off-by: Stephen Chivers <schivers@csc.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
arch/powerpc/kernel/legacy_serial.c
arch/powerpc/platforms/embedded6xx/Kconfig