Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c3faa9b7 authored by Russell King's avatar Russell King
Browse files

ARM: debug: provide 8250 debug uart phys/virt address configuration options



Move the definition of the UART register addresses out of the platform
specific header file into the Kconfig files.

Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent 4a003647
Loading
Loading
Loading
Loading
+59 −0
Original line number Diff line number Diff line
@@ -878,6 +878,65 @@ config DEBUG_UART_8250
		ARCH_IOP33X || ARCH_IXP4XX || ARCH_KIRKWOOD || \
		ARCH_LPC32XX || ARCH_MV78XX0 || ARCH_ORION5X || ARCH_RPC

config DEBUG_UART_PHYS
	hex "Physical base address of debug UART"
	default 0x01c28000 if DEBUG_SUNXI_UART0
	default 0x01c28400 if DEBUG_SUNXI_UART1
	default 0x03010fe0 if ARCH_RPC
	default 0x10124000 if DEBUG_RK3X_UART0
	default 0x10126000 if DEBUG_RK3X_UART1
	default 0x20060000 if DEBUG_RK29_UART0
	default 0x20064000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
	default 0x20068000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
	default 0x40090000 if ARCH_LPC32XX
	default 0x40100000 if DEBUG_PXA_UART1
	default 0x42000000 if ARCH_GEMINI
	default 0x7c0003f8 if FOOTBRIDGE
	default 0x90020000 if DEBUG_NSPIRE_CLASSIC_UART
	default 0xc8000000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
	default 0xc8000003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
	default 0xd0012000 if DEBUG_MVEBU_UART
	default 0xd4017000 if DEBUG_MMP_UART2
	default 0xd4018000 if DEBUG_MMP_UART3
	default 0xf0000be0 if ARCH_EBSA110
	default 0xf1012000 if DEBUG_MVEBU_UART_ALTERNATE
	default 0xf1012000 if ARCH_DOVE || ARCH_KIRKWOOD || ARCH_MV78XX0 || \
				ARCH_ORION5X
	default 0xfe800000 if ARCH_IOP32X
	default 0xffd82340 if ARCH_IOP13XX
	default 0xfffff700 if ARCH_IOP33X
	depends on DEBUG_UART_8250

config DEBUG_UART_VIRT
	hex "Virtual base address of debug UART"
	default 0xe0010fe0 if ARCH_RPC
	default 0xf0000be0 if ARCH_EBSA110
	default 0xf1c28000 if DEBUG_SUNXI_UART0
	default 0xf1c28400 if DEBUG_SUNXI_UART1
	default 0xf2100000 if DEBUG_PXA_UART1
	default 0xf4090000 if ARCH_LPC32XX
	default 0xf4200000 if ARCH_GEMINI
	default 0xfd012000 if ARCH_MV78XX0
	default 0xfde12000 if ARCH_DOVE
	default 0xfe012000 if ARCH_ORION5X
	default 0xfe017000 if DEBUG_MMP_UART2
	default 0xfe018000 if DEBUG_MMP_UART3
	default 0xfe800000 if ARCH_IOP32X
	default 0xfeb24000 if DEBUG_RK3X_UART0
	default 0xfeb26000 if DEBUG_RK3X_UART1
	default 0xfec12000 if DEBUG_MVEBU_UART || DEBUG_MVEBU_UART_ALTERNATE
	default 0xfed60000 if DEBUG_RK29_UART0
	default 0xfed64000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
	default 0xfed68000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
	default 0xfed12000 if ARCH_KIRKWOOD
	default 0xfee003f8 if FOOTBRIDGE
	default 0xfee20000 if DEBUG_NSPIRE_CLASSIC_UART
	default 0xfee82340 if ARCH_IOP13XX
	default 0xfef00000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
	default 0xfef00003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
	default 0xfefff700 if ARCH_IOP33X
	depends on DEBUG_UART_8250

config DEBUG_UART_8250_SHIFT
	int "Register offset shift for the 8250 debug UART"
	depends on DEBUG_UART_8250
+8 −1
Original line number Diff line number Diff line
/*
 * arch/arm/include/asm/hardware/debug-8250.S
 *
 *  Copyright (C) 1994-1999 Russell King
 *  Copyright (C) 1994-2013 Russell King
 *
 * 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
@@ -9,6 +9,13 @@
 */
#include <linux/serial_reg.h>

#ifdef CONFIG_DEBUG_UART_PHYS
		.macro	addruart, rp, rv, tmp
		ldr	\rp, =CONFIG_DEBUG_UART_PHYS
		ldr	\rv, =CONFIG_DEBUG_UART_VIRT
		.endm
#endif

#ifndef UART_SHIFT
#define UART_SHIFT CONFIG_DEBUG_UART_8250_SHIFT
#endif
+0 −16
Original line number Diff line number Diff line
@@ -10,20 +10,4 @@
 * it under the terms of the GNU General Public License version 2 as
 * 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
#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
	.endm

#include <asm/hardware/debug-8250.S>
+1 −3
Original line number Diff line number Diff line
@@ -8,7 +8,7 @@
 * published by the Free Software Foundation.
 *
 */

#ifdef CONFIG_DEBUG_NSPIRE_CX_UART
#define NSPIRE_EARLY_UART_PHYS_BASE	   0x90020000
#define NSPIRE_EARLY_UART_VIRT_BASE	   0xfee20000

@@ -17,8 +17,6 @@
	ldr \rv, =(NSPIRE_EARLY_UART_VIRT_BASE)		@ virtual base address
.endm


#ifdef CONFIG_DEBUG_NSPIRE_CX_UART
#include <asm/hardware/debug-pl01x.S>
#endif

+0 −19
Original line number Diff line number Diff line
@@ -10,23 +10,4 @@
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
*/

#if defined(CONFIG_DEBUG_PXA_UART1)
#define PXA_UART_REG_PHYS_BASE	0x40100000
#define PXA_UART_REG_VIRT_BASE	0xf2100000
#elif defined(CONFIG_DEBUG_MMP_UART2)
#define PXA_UART_REG_PHYS_BASE	0xd4017000
#define PXA_UART_REG_VIRT_BASE	0xfe017000
#elif defined(CONFIG_DEBUG_MMP_UART3)
#define PXA_UART_REG_PHYS_BASE	0xd4018000
#define PXA_UART_REG_VIRT_BASE	0xfe018000
#else
#error "Select uart for DEBUG_LL"
#endif

	.macro	addruart, rp, rv, tmp
	ldr	\rp, =PXA_UART_REG_PHYS_BASE
	ldr	\rv, =PXA_UART_REG_VIRT_BASE
	.endm

#include <asm/hardware/debug-8250.S>
Loading