This adds UART0 as found on the Armada 1500 to the lowlevel debug of mach-mvebu. Unfortunately, default register base addresses for Armada 370/XP switched from 0xd000000 to 0xf100000. So, we finally end up in three different lowlevel setups:
(a) Armada 1500 (possibly also Armada 1000, or MV88DE3xxx in general) (b) Armada 370/XP with new bootloader mapping at 0xf1000000 and the other Orion SoCs (Dove, Kirkwood, Orion5x, MV78xx0) (c) Armada 370/XP with old bootloader mapping at 0xd0000000 Now, mach-mvebu has been a Armada 370/XP-only playground for a while but with great work of Thomas, Gregory, and the others we have moved almost all drivers to DT. I suggest to clean-up a little and find some meaningful names for the DEBUG_ Kconfigs. Signed-off-by: Sebastian Hesselbarth <sebastian.hesselba...@gmail.com> --- Cc: Russell King <li...@arm.linux.org.uk> Cc: Jason Cooper <ja...@lakedaemon.net> Cc: Andrew Lunn <and...@lunn.ch> Cc: Gregory Clement <gregory.clem...@free-electrons.com> Cc: Thomas Petazzoni <thomas.petazz...@free-electrons.com> Cc: Arnd Bergmann <a...@arndb.de> Cc: linux-arm-ker...@lists.infradead.org Cc: linux-kernel@vger.kernel.org --- arch/arm/include/debug/mvebu.S | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/arch/arm/include/debug/mvebu.S b/arch/arm/include/debug/mvebu.S index 6517311..ca41c02 100644 --- a/arch/arm/include/debug/mvebu.S +++ b/arch/arm/include/debug/mvebu.S @@ -11,19 +11,25 @@ * published by the Free Software Foundation. */ -#ifdef CONFIG_DEBUG_MVEBU_UART_ALTERNATE -#define ARMADA_370_XP_REGS_PHYS_BASE 0xf1000000 -#else -#define ARMADA_370_XP_REGS_PHYS_BASE 0xd0000000 +#if defined(CONFIG_MACH_ARMADA_1500) +#define MVEBU_REGS_PHYS_BASE 0xf7f80000 +#define MVEBU_REGS_VIRT_BASE 0xf7f80000 +#define MVEBU_UART0_OFFSET 0x00049000 +#elif defined(CONFIG_DEBUG_MVEBU_UART) +#define MVEBU_REGS_PHYS_BASE 0xd0000000 +#define MVEBU_REGS_VIRT_BASE 0xfec00000 +#define MVEBU_UART0_OFFSET 0x00012000 +#else /* CONFIG_DEBUG_MVEBU_UART_ALTERNATE */ +#define MVEBU_REGS_PHYS_BASE 0xf1000000 +#define MVEBU_REGS_VIRT_BASE 0xfec00000 +#define MVEBU_UART0_OFFSET 0x00012000 #endif -#define ARMADA_370_XP_REGS_VIRT_BASE 0xfec00000 - .macro addruart, rp, rv, tmp - ldr \rp, =ARMADA_370_XP_REGS_PHYS_BASE - ldr \rv, =ARMADA_370_XP_REGS_VIRT_BASE - orr \rp, \rp, #0x00012000 - orr \rv, \rv, #0x00012000 + ldr \rp, =MVEBU_REGS_PHYS_BASE + ldr \rv, =MVEBU_REGS_VIRT_BASE + orr \rp, \rp, #MVEBU_UART0_OFFSET + orr \rv, \rv, #MVEBU_UART0_OFFSET .endm #define UART_SHIFT 2 -- 1.7.10.4 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/