aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm')
-rw-r--r--arch/arm/Kconfig.debug17
-rw-r--r--arch/arm/mach-zynq/common.c6
-rw-r--r--arch/arm/mach-zynq/include/mach/zynq_soc.h16
3 files changed, 31 insertions, 8 deletions
diff --git a/arch/arm/Kconfig.debug b/arch/arm/Kconfig.debug
index b0f3857b3a4c..7754d51f2b19 100644
--- a/arch/arm/Kconfig.debug
+++ b/arch/arm/Kconfig.debug
@@ -132,6 +132,23 @@ choice
132 their output to UART1 serial port on DaVinci TNETV107X 132 their output to UART1 serial port on DaVinci TNETV107X
133 devices. 133 devices.
134 134
135 config DEBUG_ZYNQ_UART0
136 bool "Kernel low-level debugging on Xilinx Zynq using UART0"
137 depends on ARCH_ZYNQ
138 help
139 Say Y here if you want the debug print routines to direct
140 their output to UART0 on the Zynq platform.
141
142 config DEBUG_ZYNQ_UART1
143 bool "Kernel low-level debugging on Xilinx Zynq using UART1"
144 depends on ARCH_ZYNQ
145 help
146 Say Y here if you want the debug print routines to direct
147 their output to UART1 on the Zynq platform.
148
149 If you have a ZC702 board and want early boot messages to
150 appear on the USB serial adaptor, select this option.
151
135 config DEBUG_DC21285_PORT 152 config DEBUG_DC21285_PORT
136 bool "Kernel low-level debugging messages via footbridge serial port" 153 bool "Kernel low-level debugging messages via footbridge serial port"
137 depends on FOOTBRIDGE 154 depends on FOOTBRIDGE
diff --git a/arch/arm/mach-zynq/common.c b/arch/arm/mach-zynq/common.c
index 6f058258b491..f0eef848c0d0 100644
--- a/arch/arm/mach-zynq/common.c
+++ b/arch/arm/mach-zynq/common.c
@@ -85,9 +85,9 @@ static struct map_desc io_desc[] __initdata = {
85 85
86#ifdef CONFIG_DEBUG_LL 86#ifdef CONFIG_DEBUG_LL
87 { 87 {
88 .virtual = UART0_VIRT, 88 .virtual = LL_UART_VADDR,
89 .pfn = __phys_to_pfn(UART0_PHYS), 89 .pfn = __phys_to_pfn(LL_UART_PADDR),
90 .length = UART0_SIZE, 90 .length = UART_SIZE,
91 .type = MT_DEVICE, 91 .type = MT_DEVICE,
92 }, 92 },
93#endif 93#endif
diff --git a/arch/arm/mach-zynq/include/mach/zynq_soc.h b/arch/arm/mach-zynq/include/mach/zynq_soc.h
index 1b8bf0ecbcb0..5ebbd8e6eeee 100644
--- a/arch/arm/mach-zynq/include/mach/zynq_soc.h
+++ b/arch/arm/mach-zynq/include/mach/zynq_soc.h
@@ -25,8 +25,9 @@
25 * address that is known to work. 25 * address that is known to work.
26 */ 26 */
27#define UART0_PHYS 0xE0000000 27#define UART0_PHYS 0xE0000000
28#define UART0_SIZE SZ_4K 28#define UART1_PHYS 0xE0001000
29#define UART0_VIRT 0xF0001000 29#define UART_SIZE SZ_4K
30#define UART_VIRT 0xF0001000
30 31
31#define TTC0_PHYS 0xF8001000 32#define TTC0_PHYS 0xF8001000
32#define TTC0_SIZE SZ_4K 33#define TTC0_SIZE SZ_4K
@@ -36,12 +37,17 @@
36#define SCU_PERIPH_SIZE SZ_8K 37#define SCU_PERIPH_SIZE SZ_8K
37#define SCU_PERIPH_VIRT (TTC0_VIRT - SCU_PERIPH_SIZE) 38#define SCU_PERIPH_VIRT (TTC0_VIRT - SCU_PERIPH_SIZE)
38 39
40#if IS_ENABLED(CONFIG_DEBUG_ZYNQ_UART1)
41# define LL_UART_PADDR UART1_PHYS
42#else
43# define LL_UART_PADDR UART0_PHYS
44#endif
45
46#define LL_UART_VADDR UART_VIRT
47
39/* The following are intended for the devices that are mapped early */ 48/* The following are intended for the devices that are mapped early */
40 49
41#define TTC0_BASE IOMEM(TTC0_VIRT) 50#define TTC0_BASE IOMEM(TTC0_VIRT)
42#define SCU_PERIPH_BASE IOMEM(SCU_PERIPH_VIRT) 51#define SCU_PERIPH_BASE IOMEM(SCU_PERIPH_VIRT)
43 52
44#define LL_UART_PADDR UART0_PHYS
45#define LL_UART_VADDR UART0_VIRT
46
47#endif 53#endif