diff options
-rw-r--r-- | arch/arm/Kconfig.debug | 13 | ||||
-rw-r--r-- | arch/arm/include/debug/digicolor.S | 35 |
2 files changed, 46 insertions, 2 deletions
diff --git a/arch/arm/Kconfig.debug b/arch/arm/Kconfig.debug index 453ae2feaeee..b6a073de1559 100644 --- a/arch/arm/Kconfig.debug +++ b/arch/arm/Kconfig.debug | |||
@@ -247,6 +247,13 @@ choice | |||
247 | Say Y here if you want the debug print routines to direct | 247 | Say Y here if you want the debug print routines to direct |
248 | their output to the serial port in the DC21285 (Footbridge). | 248 | their output to the serial port in the DC21285 (Footbridge). |
249 | 249 | ||
250 | config DEBUG_DIGICOLOR_UA0 | ||
251 | bool "Kernel low-level debugging messages via Digicolor UA0" | ||
252 | depends on ARCH_DIGICOLOR | ||
253 | help | ||
254 | Say Y here if you want the debug print routines to direct | ||
255 | their output to the UA0 serial port in the CX92755. | ||
256 | |||
250 | config DEBUG_FOOTBRIDGE_COM1 | 257 | config DEBUG_FOOTBRIDGE_COM1 |
251 | bool "Kernel low-level debugging messages via footbridge 8250 at PCI COM1" | 258 | bool "Kernel low-level debugging messages via footbridge 8250 at PCI COM1" |
252 | depends on FOOTBRIDGE | 259 | depends on FOOTBRIDGE |
@@ -1255,6 +1262,7 @@ config DEBUG_LL_INCLUDE | |||
1255 | default "debug/vt8500.S" if DEBUG_VT8500_UART0 | 1262 | default "debug/vt8500.S" if DEBUG_VT8500_UART0 |
1256 | default "debug/zynq.S" if DEBUG_ZYNQ_UART0 || DEBUG_ZYNQ_UART1 | 1263 | default "debug/zynq.S" if DEBUG_ZYNQ_UART0 || DEBUG_ZYNQ_UART1 |
1257 | default "debug/bcm63xx.S" if DEBUG_UART_BCM63XX | 1264 | default "debug/bcm63xx.S" if DEBUG_UART_BCM63XX |
1265 | default "debug/digicolor.S" if DEBUG_DIGICOLOR_UA0 | ||
1258 | default "mach/debug-macro.S" | 1266 | default "mach/debug-macro.S" |
1259 | 1267 | ||
1260 | # Compatibility options for PL01x | 1268 | # Compatibility options for PL01x |
@@ -1377,7 +1385,7 @@ config DEBUG_UART_PHYS | |||
1377 | DEBUG_RMOBILE_SCIFA0 || DEBUG_RMOBILE_SCIFA1 || \ | 1385 | DEBUG_RMOBILE_SCIFA0 || DEBUG_RMOBILE_SCIFA1 || \ |
1378 | DEBUG_RMOBILE_SCIFA4 || DEBUG_S3C24XX_UART || \ | 1386 | DEBUG_RMOBILE_SCIFA4 || DEBUG_S3C24XX_UART || \ |
1379 | DEBUG_UART_BCM63XX || DEBUG_ASM9260_UART || \ | 1387 | DEBUG_UART_BCM63XX || DEBUG_ASM9260_UART || \ |
1380 | DEBUG_SIRFSOC_UART | 1388 | DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0 |
1381 | 1389 | ||
1382 | config DEBUG_UART_VIRT | 1390 | config DEBUG_UART_VIRT |
1383 | hex "Virtual base address of debug UART" | 1391 | hex "Virtual base address of debug UART" |
@@ -1460,7 +1468,8 @@ config DEBUG_UART_VIRT | |||
1460 | depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \ | 1468 | depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \ |
1461 | DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \ | 1469 | DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \ |
1462 | DEBUG_MSM_UART || DEBUG_QCOM_UARTDM || DEBUG_S3C24XX_UART || \ | 1470 | DEBUG_MSM_UART || DEBUG_QCOM_UARTDM || DEBUG_S3C24XX_UART || \ |
1463 | DEBUG_UART_BCM63XX || DEBUG_ASM9260_UART || DEBUG_SIRFSOC_UART | 1471 | DEBUG_UART_BCM63XX || DEBUG_ASM9260_UART || \ |
1472 | DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0 | ||
1464 | 1473 | ||
1465 | config DEBUG_UART_8250_SHIFT | 1474 | config DEBUG_UART_8250_SHIFT |
1466 | int "Register offset shift for the 8250 debug UART" | 1475 | int "Register offset shift for the 8250 debug UART" |
diff --git a/arch/arm/include/debug/digicolor.S b/arch/arm/include/debug/digicolor.S new file mode 100644 index 000000000000..c9517150766a --- /dev/null +++ b/arch/arm/include/debug/digicolor.S | |||
@@ -0,0 +1,35 @@ | |||
1 | /* | ||
2 | * Debugging macro include header for Conexant Digicolor USART | ||
3 | * | ||
4 | * Copyright (C) 2014 Paradox Innovation Ltd. | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License version 2 as | ||
8 | * published by the Free Software Foundation. | ||
9 | * | ||
10 | */ | ||
11 | |||
12 | #define UA0_STATUS 0x0742 | ||
13 | #define UA0_EMI_REC 0x0744 | ||
14 | |||
15 | #define UA0_STATUS_TX_READY 0x40 | ||
16 | |||
17 | #ifdef CONFIG_DEBUG_UART_PHYS | ||
18 | .macro addruart, rp, rv, tmp | ||
19 | ldr \rp, =CONFIG_DEBUG_UART_PHYS | ||
20 | ldr \rv, =CONFIG_DEBUG_UART_VIRT | ||
21 | .endm | ||
22 | #endif | ||
23 | |||
24 | .macro senduart,rd,rx | ||
25 | strb \rd, [\rx, #UA0_EMI_REC] | ||
26 | .endm | ||
27 | |||
28 | .macro waituart,rd,rx | ||
29 | .endm | ||
30 | |||
31 | .macro busyuart,rd,rx | ||
32 | 1001: ldrb \rd, [\rx, #UA0_STATUS] | ||
33 | tst \rd, #UA0_STATUS_TX_READY | ||
34 | beq 1001b | ||
35 | .endm | ||