From: Stephen Warren <swarren@xxxxxxxxxx> Now that we have a way to provide uncompress.h in a multi-platform zImage, re-instate mvebu's uncompress.h. This was originally removed as part of commit 387798b "ARM: initial multiplatform support". Note that actually enabling this via DEBUG_LL still entails the restrictions outlined for that option. Cc: Gregory CLEMENT <gregory.clement@xxxxxxxxxxxxxxxxxx> Cc: Thomas Petazzoni <thomas.petazzoni@xxxxxxxxxxxxxxxxxx> Cc: Lior Amsalem <alior@xxxxxxxxxxx> Cc: Andrew Lunn <andrew@xxxxxxx> Cc: Yehuda Yitschak <yehuday@xxxxxxxxxxx> Signed-off-by: Stephen Warren <swarren@xxxxxxxxxx> --- arch/arm/Kconfig.debug | 3 +- arch/arm/include/debug/mvebu-uncompress.h | 43 +++++++++++++++++++++++++++++ 2 files changed, 45 insertions(+), 1 deletions(-) create mode 100644 arch/arm/include/debug/mvebu-uncompress.h diff --git a/arch/arm/Kconfig.debug b/arch/arm/Kconfig.debug index 0daec3d..af34a43 100644 --- a/arch/arm/Kconfig.debug +++ b/arch/arm/Kconfig.debug @@ -423,8 +423,9 @@ config DEBUG_LL_INCLUDE config UNCOMPRESS_INCLUDE string default "debug/icedcc-uncompress.h" if DEBUG_ICEDCC + default "debug/mvebu-uncompress.h" if DEBUG_MVEBU_UART default "debug/none-uncompress.h" if ARCH_MULTIPLATFORM || \ - DEBUG_HIGHBANK_UART || DEBUG_MVEBU_UART || \ + DEBUG_HIGHBANK_UART || \ DEBUG_PICOXCELL_UART || DEBUG_SOCFPGA_UART || \ DEBUG_VEXPRESS_UART0_DETECT || DEBUG_VEXPRESS_UART0_CA9 || \ DEBUG_VEXPRESS_UART0_RS1 diff --git a/arch/arm/include/debug/mvebu-uncompress.h b/arch/arm/include/debug/mvebu-uncompress.h new file mode 100644 index 0000000..df3bd6b --- /dev/null +++ b/arch/arm/include/debug/mvebu-uncompress.h @@ -0,0 +1,43 @@ +/* + * Marvell Armada SoC kernel uncompression UART routines + * + * Copyright (C) 2012 Marvell + * + * Lior Amsalem <alior@xxxxxxxxxxx> + * + * This file is licensed under the terms of the GNU General Public + * License version 2. This program is licensed "as is" without any + * warranty of any kind, whether express or implied. + */ + +#define ARMADA_370_XP_REGS_PHYS_BASE 0xd0000000 + +#define UART_THR ((volatile unsigned char *)(ARMADA_370_XP_REGS_PHYS_BASE\ + + 0x12000)) +#define UART_LSR ((volatile unsigned char *)(ARMADA_370_XP_REGS_PHYS_BASE\ + + 0x12014)) + +#define LSR_THRE 0x20 + +static void putc(const char c) +{ + int i; + + for (i = 0; i < 0x1000; i++) { + /* Transmit fifo not full? */ + if (*UART_LSR & LSR_THRE) + break; + } + + *UART_THR = c; +} + +static void flush(void) +{ +} + +/* + * nothing to do + */ +#define arch_decomp_setup() +#define arch_decomp_wdog() -- 1.7.0.4 -- To unsubscribe from this list: send the line "unsubscribe linux-tegra" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html