From mboxrd@z Thu Jan 1 00:00:00 1970 From: linux@rempel-privat.de (Oleksij Rempel) Date: Wed, 05 Nov 2014 08:13:35 +0100 Subject: [PATCH v3 2/2] ARM: add lolevel debug support for asm9260 In-Reply-To: References: <20141102203438.GW3698@titan.lakedaemon.net> <1415024052-12351-1-git-send-email-linux@rempel-privat.de> <1415024052-12351-3-git-send-email-linux@rempel-privat.de> Message-ID: <5459CE1F.7080200@rempel-privat.de> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Should i resend complete patchset, or it is enough to send only updated patch? Am 03.11.2014 um 15:46 schrieb Rob Herring: > On Mon, Nov 3, 2014 at 10:14 PM, Oleksij Rempel wrote: >> Since there is no public documentation, this patch also provide register >> offsets for different UART units on this SoC. >> >> Signed-off-by: Oleksij Rempel >> --- >> arch/arm/Kconfig.debug | 31 ++++++++++++++++++++++++++++--- >> arch/arm/include/debug/asm9260.S | 31 +++++++++++++++++++++++++++++++ >> 2 files changed, 59 insertions(+), 3 deletions(-) >> create mode 100644 arch/arm/include/debug/asm9260.S >> >> diff --git a/arch/arm/Kconfig.debug b/arch/arm/Kconfig.debug >> index d8f6a2e..66c29db 100644 >> --- a/arch/arm/Kconfig.debug >> +++ b/arch/arm/Kconfig.debug >> @@ -93,6 +93,27 @@ choice >> prompt "Kernel low-level debugging port" >> depends on DEBUG_LL >> >> + config DEBUG_ASM9260_UART >> + bool "Kernel low-level debugging via asm9260 UART" >> + depends on MACH_ASM9260 >> + help >> + Say Y here if you want the debug print routines to direct >> + their output to an UART or USART port on asm9260 based >> + machines. >> + >> + DEBUG_UART_PHYS | DEBUG_UART_VIRT >> + >> + 0x80000000 | 0xf0000000 | UART0 >> + 0x80004000 | 0xf0004000 | UART1 >> + 0x80008000 | 0xf0008000 | UART2 >> + 0x8000c000 | 0xf000c000 | UART3 >> + 0x80010000 | 0xf0010000 | UART4 >> + 0x80014000 | 0xf0014000 | UART5 >> + 0x80018000 | 0xf0018000 | UART6 >> + 0x8001c000 | 0xf001c000 | UART7 >> + 0x80020000 | 0xf0020000 | UART8 >> + 0x80024000 | 0xf0024000 | UART9 >> + >> config AT91_DEBUG_LL_DBGU0 >> bool "Kernel low-level debugging on rm9200, 9260/9g20, 9261/9g10 and 9rl" >> depends on HAVE_AT91_DBGU0 >> @@ -1042,6 +1063,7 @@ config DEBUG_STI_UART >> config DEBUG_LL_INCLUDE >> string >> default "debug/8250.S" if DEBUG_LL_UART_8250 || DEBUG_UART_8250 >> + default "debug/asm9260.S" if DEBUG_ASM9260_UART >> default "debug/clps711x.S" if DEBUG_CLPS711X_UART1 || DEBUG_CLPS711X_UART2 >> default "debug/meson.S" if DEBUG_MESON_UARTAO >> default "debug/pl01x.S" if DEBUG_LL_UART_PL01X || DEBUG_UART_PL01X >> @@ -1135,6 +1157,7 @@ config DEBUG_UART_PHYS >> default 0x78000000 if DEBUG_CNS3XXX >> default 0x7c0003f8 if FOOTBRIDGE >> default 0x78000000 if DEBUG_CNS3XXX >> + default 0x80010000 if DEBUG_ASM9260_UART >> default 0x80070000 if DEBUG_IMX23_UART >> default 0x80074000 if DEBUG_IMX28_UART >> default 0x80230000 if DEBUG_PICOXCELL_UART >> @@ -1171,13 +1194,14 @@ config DEBUG_UART_PHYS >> DEBUG_LL_UART_EFM32 || \ >> DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \ >> DEBUG_MSM_UART || DEBUG_QCOM_UARTDM || DEBUG_S3C24XX_UART || \ >> - DEBUG_UART_BCM63XX >> + DEBUG_UART_BCM63XX || DEBUG_ASM9260_UART >> >> config DEBUG_UART_VIRT >> hex "Virtual base address of debug UART" >> default 0xe0010fe0 if ARCH_RPC >> default 0xe1000000 if DEBUG_MSM_UART >> default 0xf0000be0 if ARCH_EBSA110 >> + default 0xf0010000 if DEBUG_ASM9260_UART >> default 0xf01fb000 if DEBUG_NOMADIK_UART >> default 0xf0201000 if DEBUG_BCM2835 >> default 0xf1000300 if DEBUG_BCM_5301X >> @@ -1244,7 +1268,7 @@ config DEBUG_UART_VIRT >> depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \ >> DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \ >> DEBUG_MSM_UART || DEBUG_QCOM_UARTDM || DEBUG_S3C24XX_UART || \ >> - DEBUG_UART_BCM63XX >> + DEBUG_UART_BCM63XX || DEBUG_ASM9260_UART >> >> config DEBUG_UART_8250_SHIFT >> int "Register offset shift for the 8250 debug UART" >> @@ -1286,7 +1310,8 @@ config DEBUG_UNCOMPRESS >> config UNCOMPRESS_INCLUDE >> string >> default "debug/uncompress.h" if ARCH_MULTIPLATFORM || ARCH_MSM || \ >> - PLAT_SAMSUNG || ARCH_EFM32 >> + PLAT_SAMSUNG || ARCH_EFM32 || \ >> + MACH_ASM9260 > > This should not be needed as multi-platform is enabled. > >> default "mach/uncompress.h" >> >> config EARLY_PRINTK >> diff --git a/arch/arm/include/debug/asm9260.S b/arch/arm/include/debug/asm9260.S >> new file mode 100644 >> index 0000000..c70d51f >> --- /dev/null >> +++ b/arch/arm/include/debug/asm9260.S >> @@ -0,0 +1,31 @@ >> +/* arch/arm/mach-imx/include/mach/debug-macro.S > > Wrong filename. Just remove this. > >> + * >> + * Debugging macro include header >> + * >> + * Copyright (C) 1994-1999 Russell King >> + * Moved from linux/arch/arm/kernel/debug.S by Ben Dooks >> + * Modified for ASM9260 by Oleksij Remepl >> + * >> + * This program is free software; you can redistribute it and/or modify >> + * it under the terms of the GNU General Public License version 2 as >> + * published by the Free Software Foundation. >> + * >> + */ >> + >> + .macro addruart, rp, rv, tmp >> + ldr \rp, = CONFIG_DEBUG_UART_PHYS >> + ldr \rv, = CONFIG_DEBUG_UART_VIRT >> + .endm >> + >> + .macro waituart,rd,rx >> + .endm >> + >> + .macro senduart,rd,rx >> + str \rd, [\rx, #0x50] @ TXDATA >> + .endm >> + >> + .macro busyuart,rd,rx >> +1002: ldr \rd, [\rx, #0x60] @ STAT >> + tst \rd, #1 << 27 @ TXEMPTY >> + beq 1002b @ wait until transmit done >> + .endm >> -- >> 1.9.1 >> -- Regards, Oleksij -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 213 bytes Desc: OpenPGP digital signature URL: