diff options
author | Josh Cartwright <josh.cartwright@ni.com> | 2012-11-19 11:16:01 -0500 |
---|---|---|
committer | Michal Simek <michal.simek@xilinx.com> | 2012-11-21 04:52:05 -0500 |
commit | 385f02b1696004461d89589e69ae7247081a74a2 (patch) | |
tree | e0dcb931d728fae053f01994d60288c73414a2f5 /arch/arm/mach-zynq | |
parent | 667f2988e2c11b25e79a46aff2f269696dbe8dc1 (diff) |
ARM: zynq: make use of debug_ll_io_init()
Convert low-level debugging routines to make use of debug_ll_io_init().
This is part of the preparation for ARCH_MULTIPLATFORM support for Zynq.
Signed-off-by: Josh Cartwright <josh.cartwright@ni.com>
Tested-by: Michal Simek <michal.simek@xilinx.com>
Diffstat (limited to 'arch/arm/mach-zynq')
-rw-r--r-- | arch/arm/mach-zynq/common.c | 25 | ||||
-rw-r--r-- | arch/arm/mach-zynq/include/mach/debug-macro.S | 36 |
2 files changed, 7 insertions, 54 deletions
diff --git a/arch/arm/mach-zynq/common.c b/arch/arm/mach-zynq/common.c index 2202f67c8a09..a2f48daa11ca 100644 --- a/arch/arm/mach-zynq/common.c +++ b/arch/arm/mach-zynq/common.c | |||
@@ -72,23 +72,11 @@ static void __init xilinx_irq_init(void) | |||
72 | * running include the GIC, UART and Timer Counter. | 72 | * running include the GIC, UART and Timer Counter. |
73 | */ | 73 | */ |
74 | 74 | ||
75 | static struct map_desc io_desc[] __initdata = { | 75 | static struct map_desc scu_desc __initdata = { |
76 | { | 76 | .virtual = SCU_PERIPH_VIRT, |
77 | .virtual = SCU_PERIPH_VIRT, | 77 | .pfn = __phys_to_pfn(SCU_PERIPH_PHYS), |
78 | .pfn = __phys_to_pfn(SCU_PERIPH_PHYS), | 78 | .length = SCU_PERIPH_SIZE, |
79 | .length = SCU_PERIPH_SIZE, | 79 | .type = MT_DEVICE, |
80 | .type = MT_DEVICE, | ||
81 | }, | ||
82 | |||
83 | #ifdef CONFIG_DEBUG_LL | ||
84 | { | ||
85 | .virtual = LL_UART_VADDR, | ||
86 | .pfn = __phys_to_pfn(LL_UART_PADDR), | ||
87 | .length = UART_SIZE, | ||
88 | .type = MT_DEVICE, | ||
89 | }, | ||
90 | #endif | ||
91 | |||
92 | }; | 80 | }; |
93 | 81 | ||
94 | static void __init xilinx_zynq_timer_init(void) | 82 | static void __init xilinx_zynq_timer_init(void) |
@@ -117,7 +105,8 @@ static struct sys_timer xttcpss_sys_timer = { | |||
117 | */ | 105 | */ |
118 | static void __init xilinx_map_io(void) | 106 | static void __init xilinx_map_io(void) |
119 | { | 107 | { |
120 | iotable_init(io_desc, ARRAY_SIZE(io_desc)); | 108 | debug_ll_io_init(); |
109 | iotable_init(&scu_desc, 1); | ||
121 | } | 110 | } |
122 | 111 | ||
123 | static const char *xilinx_dt_match[] = { | 112 | static const char *xilinx_dt_match[] = { |
diff --git a/arch/arm/mach-zynq/include/mach/debug-macro.S b/arch/arm/mach-zynq/include/mach/debug-macro.S deleted file mode 100644 index 3ab0be1f6191..000000000000 --- a/arch/arm/mach-zynq/include/mach/debug-macro.S +++ /dev/null | |||
@@ -1,36 +0,0 @@ | |||
1 | /* arch/arm/mach-zynq/include/mach/debug-macro.S | ||
2 | * | ||
3 | * Debugging macro include header | ||
4 | * | ||
5 | * Copyright (C) 2011 Xilinx | ||
6 | * | ||
7 | * This software is licensed under the terms of the GNU General Public | ||
8 | * License version 2, as published by the Free Software Foundation, and | ||
9 | * may be copied, distributed, and modified under those terms. | ||
10 | * | ||
11 | * This program is distributed in the hope that it will be useful, | ||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | * GNU General Public License for more details. | ||
15 | */ | ||
16 | |||
17 | #include <mach/zynq_soc.h> | ||
18 | #include <mach/uart.h> | ||
19 | |||
20 | .macro addruart, rp, rv, tmp | ||
21 | ldr \rp, =LL_UART_PADDR @ physical | ||
22 | ldr \rv, =LL_UART_VADDR @ virtual | ||
23 | .endm | ||
24 | |||
25 | .macro senduart,rd,rx | ||
26 | str \rd, [\rx, #UART_FIFO_OFFSET] @ TXDATA | ||
27 | .endm | ||
28 | |||
29 | .macro waituart,rd,rx | ||
30 | .endm | ||
31 | |||
32 | .macro busyuart,rd,rx | ||
33 | 1002: ldr \rd, [\rx, #UART_SR_OFFSET] @ get status register | ||
34 | tst \rd, #UART_SR_TXFULL @ | ||
35 | bne 1002b @ wait if FIFO is full | ||
36 | .endm | ||