Commit 4a003647 authored by Russell King's avatar Russell King

ARM: debug: provide 8250 debug uart register shift configuration option

Move the definition of the UART register shift out of the platform
specific header file into the Kconfig files.
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent 7610b607
...@@ -275,6 +275,7 @@ choice ...@@ -275,6 +275,7 @@ choice
config DEBUG_MMP_UART2 config DEBUG_MMP_UART2
bool "Kernel low-level debugging message via MMP UART2" bool "Kernel low-level debugging message via MMP UART2"
depends on ARCH_MMP depends on ARCH_MMP
select DEBUG_UART_8250
help help
Say Y here if you want kernel low-level debugging support Say Y here if you want kernel low-level debugging support
on MMP UART2. on MMP UART2.
...@@ -282,6 +283,7 @@ choice ...@@ -282,6 +283,7 @@ choice
config DEBUG_MMP_UART3 config DEBUG_MMP_UART3
bool "Kernel low-level debugging message via MMP UART3" bool "Kernel low-level debugging message via MMP UART3"
depends on ARCH_MMP depends on ARCH_MMP
select DEBUG_UART_8250
help help
Say Y here if you want kernel low-level debugging support Say Y here if you want kernel low-level debugging support
on MMP UART3. on MMP UART3.
...@@ -326,6 +328,7 @@ choice ...@@ -326,6 +328,7 @@ choice
config DEBUG_MVEBU_UART config DEBUG_MVEBU_UART
bool "Kernel low-level debugging messages via MVEBU UART (old bootloaders)" bool "Kernel low-level debugging messages via MVEBU UART (old bootloaders)"
depends on ARCH_MVEBU depends on ARCH_MVEBU
select DEBUG_UART_8250
help help
Say Y here if you want kernel low-level debugging support Say Y here if you want kernel low-level debugging support
on MVEBU based platforms. on MVEBU based platforms.
...@@ -344,6 +347,7 @@ choice ...@@ -344,6 +347,7 @@ choice
config DEBUG_MVEBU_UART_ALTERNATE config DEBUG_MVEBU_UART_ALTERNATE
bool "Kernel low-level debugging messages via MVEBU UART (new bootloaders)" bool "Kernel low-level debugging messages via MVEBU UART (new bootloaders)"
depends on ARCH_MVEBU depends on ARCH_MVEBU
select DEBUG_UART_8250
help help
Say Y here if you want kernel low-level debugging support Say Y here if you want kernel low-level debugging support
on MVEBU based platforms. on MVEBU based platforms.
...@@ -365,6 +369,7 @@ choice ...@@ -365,6 +369,7 @@ choice
config DEBUG_NSPIRE_CLASSIC_UART config DEBUG_NSPIRE_CLASSIC_UART
bool "Kernel low-level debugging via TI-NSPIRE 8250 UART" bool "Kernel low-level debugging via TI-NSPIRE 8250 UART"
depends on ARCH_NSPIRE depends on ARCH_NSPIRE
select DEBUG_UART_8250
help help
Say Y here if you want kernel low-level debugging support Say Y here if you want kernel low-level debugging support
on TI-NSPIRE classic models. on TI-NSPIRE classic models.
...@@ -453,6 +458,7 @@ choice ...@@ -453,6 +458,7 @@ choice
config DEBUG_PXA_UART1 config DEBUG_PXA_UART1
depends on ARCH_PXA depends on ARCH_PXA
bool "Use PXA UART1 for low-level debug" bool "Use PXA UART1 for low-level debug"
select DEBUG_UART_8250
help help
Say Y here if you want kernel low-level debugging support Say Y here if you want kernel low-level debugging support
on PXA UART1. on PXA UART1.
...@@ -477,6 +483,7 @@ choice ...@@ -477,6 +483,7 @@ choice
bool "Kernel low-level debugging messages via Rockchip RK29 UART0" bool "Kernel low-level debugging messages via Rockchip RK29 UART0"
depends on ARCH_ROCKCHIP depends on ARCH_ROCKCHIP
select DEBUG_ROCKCHIP_UART select DEBUG_ROCKCHIP_UART
select DEBUG_UART_8250
help help
Say Y here if you want kernel low-level debugging support Say Y here if you want kernel low-level debugging support
on Rockchip based platforms. on Rockchip based platforms.
...@@ -485,6 +492,7 @@ choice ...@@ -485,6 +492,7 @@ choice
bool "Kernel low-level debugging messages via Rockchip RK29 UART1" bool "Kernel low-level debugging messages via Rockchip RK29 UART1"
depends on ARCH_ROCKCHIP depends on ARCH_ROCKCHIP
select DEBUG_ROCKCHIP_UART select DEBUG_ROCKCHIP_UART
select DEBUG_UART_8250
help help
Say Y here if you want kernel low-level debugging support Say Y here if you want kernel low-level debugging support
on Rockchip based platforms. on Rockchip based platforms.
...@@ -493,6 +501,7 @@ choice ...@@ -493,6 +501,7 @@ choice
bool "Kernel low-level debugging messages via Rockchip RK29 UART2" bool "Kernel low-level debugging messages via Rockchip RK29 UART2"
depends on ARCH_ROCKCHIP depends on ARCH_ROCKCHIP
select DEBUG_ROCKCHIP_UART select DEBUG_ROCKCHIP_UART
select DEBUG_UART_8250
help help
Say Y here if you want kernel low-level debugging support Say Y here if you want kernel low-level debugging support
on Rockchip based platforms. on Rockchip based platforms.
...@@ -501,6 +510,7 @@ choice ...@@ -501,6 +510,7 @@ choice
bool "Kernel low-level debugging messages via Rockchip RK3X UART0" bool "Kernel low-level debugging messages via Rockchip RK3X UART0"
depends on ARCH_ROCKCHIP depends on ARCH_ROCKCHIP
select DEBUG_ROCKCHIP_UART select DEBUG_ROCKCHIP_UART
select DEBUG_UART_8250
help help
Say Y here if you want kernel low-level debugging support Say Y here if you want kernel low-level debugging support
on Rockchip based platforms. on Rockchip based platforms.
...@@ -509,6 +519,7 @@ choice ...@@ -509,6 +519,7 @@ choice
bool "Kernel low-level debugging messages via Rockchip RK3X UART1" bool "Kernel low-level debugging messages via Rockchip RK3X UART1"
depends on ARCH_ROCKCHIP depends on ARCH_ROCKCHIP
select DEBUG_ROCKCHIP_UART select DEBUG_ROCKCHIP_UART
select DEBUG_UART_8250
help help
Say Y here if you want kernel low-level debugging support Say Y here if you want kernel low-level debugging support
on Rockchip based platforms. on Rockchip based platforms.
...@@ -517,6 +528,7 @@ choice ...@@ -517,6 +528,7 @@ choice
bool "Kernel low-level debugging messages via Rockchip RK3X UART2" bool "Kernel low-level debugging messages via Rockchip RK3X UART2"
depends on ARCH_ROCKCHIP depends on ARCH_ROCKCHIP
select DEBUG_ROCKCHIP_UART select DEBUG_ROCKCHIP_UART
select DEBUG_UART_8250
help help
Say Y here if you want kernel low-level debugging support Say Y here if you want kernel low-level debugging support
on Rockchip based platforms. on Rockchip based platforms.
...@@ -525,6 +537,7 @@ choice ...@@ -525,6 +537,7 @@ choice
bool "Kernel low-level debugging messages via Rockchip RK3X UART3" bool "Kernel low-level debugging messages via Rockchip RK3X UART3"
depends on ARCH_ROCKCHIP depends on ARCH_ROCKCHIP
select DEBUG_ROCKCHIP_UART select DEBUG_ROCKCHIP_UART
select DEBUG_UART_8250
help help
Say Y here if you want kernel low-level debugging support Say Y here if you want kernel low-level debugging support
on Rockchip based platforms. on Rockchip based platforms.
...@@ -587,6 +600,7 @@ choice ...@@ -587,6 +600,7 @@ choice
config DEBUG_SUNXI_UART0 config DEBUG_SUNXI_UART0
bool "Kernel low-level debugging messages via sunXi UART0" bool "Kernel low-level debugging messages via sunXi UART0"
depends on ARCH_SUNXI depends on ARCH_SUNXI
select DEBUG_UART_8250
help help
Say Y here if you want kernel low-level debugging support Say Y here if you want kernel low-level debugging support
on Allwinner A1X based platforms on the UART0. on Allwinner A1X based platforms on the UART0.
...@@ -594,6 +608,7 @@ choice ...@@ -594,6 +608,7 @@ choice
config DEBUG_SUNXI_UART1 config DEBUG_SUNXI_UART1
bool "Kernel low-level debugging messages via sunXi UART1" bool "Kernel low-level debugging messages via sunXi UART1"
depends on ARCH_SUNXI depends on ARCH_SUNXI
select DEBUG_UART_8250
help help
Say Y here if you want kernel low-level debugging support Say Y here if you want kernel low-level debugging support
on Allwinner A1X based platforms on the UART1. on Allwinner A1X based platforms on the UART1.
...@@ -857,8 +872,17 @@ config DEBUG_LL_INCLUDE ...@@ -857,8 +872,17 @@ config DEBUG_LL_INCLUDE
default "mach/debug-macro.S" default "mach/debug-macro.S"
config DEBUG_UART_8250 config DEBUG_UART_8250
def_bool ARCH_EBSA110 || (FOOTBRIDGE && !DEBUG_DC21285_PORT) || \ def_bool ARCH_DOVE || ARCH_EBSA110 || \
ARCH_GEMINI || ARCH_RPC (FOOTBRIDGE && !DEBUG_DC21285_PORT) || \
ARCH_GEMINI || ARCH_IOP13XX || ARCH_IOP32X || \
ARCH_IOP33X || ARCH_IXP4XX || ARCH_KIRKWOOD || \
ARCH_LPC32XX || ARCH_MV78XX0 || ARCH_ORION5X || ARCH_RPC
config DEBUG_UART_8250_SHIFT
int "Register offset shift for the 8250 debug UART"
depends on DEBUG_UART_8250
default 0 if FOOTBRIDGE || ARCH_IOP32X
default 2
config DEBUG_UART_8250_FLOW_CONTROL config DEBUG_UART_8250_FLOW_CONTROL
bool "Enable flow control for 8250 UART" bool "Enable flow control for 8250 UART"
......
...@@ -9,6 +9,10 @@ ...@@ -9,6 +9,10 @@
*/ */
#include <linux/serial_reg.h> #include <linux/serial_reg.h>
#ifndef UART_SHIFT
#define UART_SHIFT CONFIG_DEBUG_UART_8250_SHIFT
#endif
.macro senduart,rd,rx .macro senduart,rd,rx
strb \rd, [\rx, #UART_TX << UART_SHIFT] strb \rd, [\rx, #UART_TX << UART_SHIFT]
.endm .endm
......
...@@ -26,5 +26,4 @@ ...@@ -26,5 +26,4 @@
orr \rv, \rv, #0x00012000 orr \rv, \rv, #0x00012000
.endm .endm
#define UART_SHIFT 2
#include <asm/hardware/debug-8250.S> #include <asm/hardware/debug-8250.S>
...@@ -23,6 +23,5 @@ ...@@ -23,6 +23,5 @@
#endif #endif
#ifdef CONFIG_DEBUG_NSPIRE_CLASSIC_UART #ifdef CONFIG_DEBUG_NSPIRE_CLASSIC_UART
#define UART_SHIFT 2
#include <asm/hardware/debug-8250.S> #include <asm/hardware/debug-8250.S>
#endif #endif
...@@ -29,5 +29,4 @@ ...@@ -29,5 +29,4 @@
ldr \rv, =PXA_UART_REG_VIRT_BASE ldr \rv, =PXA_UART_REG_VIRT_BASE
.endm .endm
#define UART_SHIFT 2
#include <asm/hardware/debug-8250.S> #include <asm/hardware/debug-8250.S>
...@@ -38,5 +38,4 @@ ...@@ -38,5 +38,4 @@
ldr \rv, =ROCKCHIP_UART_DEBUG_VIRT_BASE ldr \rv, =ROCKCHIP_UART_DEBUG_VIRT_BASE
.endm .endm
#define UART_SHIFT 2
#include <asm/hardware/debug-8250.S> #include <asm/hardware/debug-8250.S>
...@@ -23,5 +23,4 @@ ...@@ -23,5 +23,4 @@
ldr \rv, =SUNXI_UART_DEBUG_VIRT_BASE ldr \rv, =SUNXI_UART_DEBUG_VIRT_BASE
.endm .endm
#define UART_SHIFT 2
#include <asm/hardware/debug-8250.S> #include <asm/hardware/debug-8250.S>
...@@ -15,5 +15,4 @@ ...@@ -15,5 +15,4 @@
orr \rv, \rv, #0x00012000 orr \rv, \rv, #0x00012000
.endm .endm
#define UART_SHIFT 2
#include <asm/hardware/debug-8250.S> #include <asm/hardware/debug-8250.S>
...@@ -17,5 +17,4 @@ ...@@ -17,5 +17,4 @@
mov \rp, \rv mov \rp, \rv
.endm .endm
#define UART_SHIFT 2
#include <asm/hardware/debug-8250.S> #include <asm/hardware/debug-8250.S>
...@@ -22,7 +22,6 @@ ...@@ -22,7 +22,6 @@
orr \rp, \rp, #0x7c000000 @ physical orr \rp, \rp, #0x7c000000 @ physical
.endm .endm
#define UART_SHIFT 0
#include <asm/hardware/debug-8250.S> #include <asm/hardware/debug-8250.S>
#else #else
......
...@@ -16,5 +16,4 @@ ...@@ -16,5 +16,4 @@
ldr \rv, =IO_ADDRESS(GEMINI_UART_BASE) @ virtual ldr \rv, =IO_ADDRESS(GEMINI_UART_BASE) @ virtual
.endm .endm
#define UART_SHIFT 2
#include <asm/hardware/debug-8250.S> #include <asm/hardware/debug-8250.S>
...@@ -20,5 +20,4 @@ ...@@ -20,5 +20,4 @@
orr \rp, \rp, #0x00d80000 orr \rp, \rp, #0x00d80000
.endm .endm
#define UART_SHIFT 2
#include <asm/hardware/debug-8250.S> #include <asm/hardware/debug-8250.S>
...@@ -17,5 +17,4 @@ ...@@ -17,5 +17,4 @@
mov \rv, \rp mov \rv, \rp
.endm .endm
#define UART_SHIFT 0
#include <asm/hardware/debug-8250.S> #include <asm/hardware/debug-8250.S>
...@@ -18,5 +18,4 @@ ...@@ -18,5 +18,4 @@
orr \rp, #0xff000000 @ physical orr \rp, #0xff000000 @ physical
.endm .endm
#define UART_SHIFT 2
#include <asm/hardware/debug-8250.S> #include <asm/hardware/debug-8250.S>
...@@ -22,5 +22,4 @@ ...@@ -22,5 +22,4 @@
orr \rp, \rp, #0xc8000000 @ physical orr \rp, \rp, #0xc8000000 @ physical
.endm .endm
#define UART_SHIFT 2
#include <asm/hardware/debug-8250.S> #include <asm/hardware/debug-8250.S>
...@@ -15,5 +15,4 @@ ...@@ -15,5 +15,4 @@
orr \rv, \rv, #0x00012000 orr \rv, \rv, #0x00012000
.endm .endm
#define UART_SHIFT 2
#include <asm/hardware/debug-8250.S> #include <asm/hardware/debug-8250.S>
...@@ -25,5 +25,4 @@ ...@@ -25,5 +25,4 @@
ldrne \rv, =0xF4090000 ldrne \rv, =0xF4090000
.endm .endm
#define UART_SHIFT 2
#include <asm/hardware/debug-8250.S> #include <asm/hardware/debug-8250.S>
...@@ -15,5 +15,4 @@ ...@@ -15,5 +15,4 @@
orr \rv, \rv, #0x00012000 orr \rv, \rv, #0x00012000
.endm .endm
#define UART_SHIFT 2
#include <asm/hardware/debug-8250.S> #include <asm/hardware/debug-8250.S>
...@@ -17,5 +17,4 @@ ...@@ -17,5 +17,4 @@
orr \rv, \rv, #0x00012000 orr \rv, \rv, #0x00012000
.endm .endm
#define UART_SHIFT 2
#include <asm/hardware/debug-8250.S> #include <asm/hardware/debug-8250.S>
...@@ -18,5 +18,4 @@ ...@@ -18,5 +18,4 @@
orr \rp, \rp, #0x03000000 @ physical orr \rp, \rp, #0x03000000 @ physical
.endm .endm
#define UART_SHIFT 2
#include <asm/hardware/debug-8250.S> #include <asm/hardware/debug-8250.S>
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment