diff options
author | Olof Johansson <olof@lixom.net> | 2014-05-26 17:52:23 -0400 |
---|---|---|
committer | Olof Johansson <olof@lixom.net> | 2014-05-26 17:52:23 -0400 |
commit | 4fd09120443a47ea1876ecce494205420b94d201 (patch) | |
tree | e8194ee966c0ea64937b8ea3f6ac18652b8e0555 /arch/arm/include | |
parent | e469d6ba0ac0b75f6cd762fc497d35dec0d11fc2 (diff) | |
parent | eb28d0bb857f01ff972f8b359c962eef9ecf1b64 (diff) |
Merge tag 'zynq-cleanup-for-3.16' of git://git.xilinx.com/linux-xlnx into next/soc
Merge "Xilinx Zynq changes for v3.16" from Michal Simek:
arm: Xilinx Zynq cleanup patches for v3.16
- Add support for BIG Endian
- Add SOC_BUS support
- Sort Kconfig options
- Fix early console
* tag 'zynq-cleanup-for-3.16' of git://git.xilinx.com/linux-xlnx:
ARM: zynq: Enable big-endian
ARM: zynq: Fix uart0 early console virtual address
clocksource: cadence_ttc: Use readl/writel_relaxed instead of __raw
ARM: zynq: Sort Kconfig options
ARM: zynq: Add support for SOC_BUS
Signed-off-by: Olof Johansson <olof@lixom.net>
Diffstat (limited to 'arch/arm/include')
-rw-r--r-- | arch/arm/include/debug/zynq.S | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/arch/arm/include/debug/zynq.S b/arch/arm/include/debug/zynq.S index 0b762fafa758..bd13dedbdeff 100644 --- a/arch/arm/include/debug/zynq.S +++ b/arch/arm/include/debug/zynq.S | |||
@@ -20,18 +20,18 @@ | |||
20 | #define UART_SR_TXEMPTY 0x00000008 /* TX FIFO empty */ | 20 | #define UART_SR_TXEMPTY 0x00000008 /* TX FIFO empty */ |
21 | 21 | ||
22 | #define UART0_PHYS 0xE0000000 | 22 | #define UART0_PHYS 0xE0000000 |
23 | #define UART0_VIRT 0xF0000000 | ||
23 | #define UART1_PHYS 0xE0001000 | 24 | #define UART1_PHYS 0xE0001000 |
24 | #define UART_SIZE SZ_4K | 25 | #define UART1_VIRT 0xF0001000 |
25 | #define UART_VIRT 0xF0001000 | ||
26 | 26 | ||
27 | #if IS_ENABLED(CONFIG_DEBUG_ZYNQ_UART1) | 27 | #if IS_ENABLED(CONFIG_DEBUG_ZYNQ_UART1) |
28 | # define LL_UART_PADDR UART1_PHYS | 28 | # define LL_UART_PADDR UART1_PHYS |
29 | # define LL_UART_VADDR UART1_VIRT | ||
29 | #else | 30 | #else |
30 | # define LL_UART_PADDR UART0_PHYS | 31 | # define LL_UART_PADDR UART0_PHYS |
32 | # define LL_UART_VADDR UART0_VIRT | ||
31 | #endif | 33 | #endif |
32 | 34 | ||
33 | #define LL_UART_VADDR UART_VIRT | ||
34 | |||
35 | .macro addruart, rp, rv, tmp | 35 | .macro addruart, rp, rv, tmp |
36 | ldr \rp, =LL_UART_PADDR @ physical | 36 | ldr \rp, =LL_UART_PADDR @ physical |
37 | ldr \rv, =LL_UART_VADDR @ virtual | 37 | ldr \rv, =LL_UART_VADDR @ virtual |
@@ -43,12 +43,14 @@ | |||
43 | 43 | ||
44 | .macro waituart,rd,rx | 44 | .macro waituart,rd,rx |
45 | 1001: ldr \rd, [\rx, #UART_SR_OFFSET] | 45 | 1001: ldr \rd, [\rx, #UART_SR_OFFSET] |
46 | ARM_BE8( rev \rd, \rd ) | ||
46 | tst \rd, #UART_SR_TXEMPTY | 47 | tst \rd, #UART_SR_TXEMPTY |
47 | beq 1001b | 48 | beq 1001b |
48 | .endm | 49 | .endm |
49 | 50 | ||
50 | .macro busyuart,rd,rx | 51 | .macro busyuart,rd,rx |
51 | 1002: ldr \rd, [\rx, #UART_SR_OFFSET] @ get status register | 52 | 1002: ldr \rd, [\rx, #UART_SR_OFFSET] @ get status register |
53 | ARM_BE8( rev \rd, \rd ) | ||
52 | tst \rd, #UART_SR_TXFULL @ | 54 | tst \rd, #UART_SR_TXFULL @ |
53 | bne 1002b @ wait if FIFO is full | 55 | bne 1002b @ wait if FIFO is full |
54 | .endm | 56 | .endm |