1 | /* SPDX-License-Identifier: GPL-2.0-only */ |
2 | /* arch/arm/include/debug/pl01x.S |
3 | * |
4 | * Debugging macro include header |
5 | * |
6 | * Copyright (C) 1994-1999 Russell King |
7 | * Moved from linux/arch/arm/kernel/debug.S by Ben Dooks |
8 | */ |
9 | #include <linux/amba/serial.h> |
10 | |
11 | #ifdef CONFIG_DEBUG_UART_PHYS |
12 | .macro addruart, rp, rv, tmp |
13 | ldr \rp, =CONFIG_DEBUG_UART_PHYS |
14 | ldr \rv, =CONFIG_DEBUG_UART_VIRT |
15 | .endm |
16 | #endif |
17 | |
18 | .macro senduart,rd,rx |
19 | strb \rd, [\rx, #UART01x_DR] |
20 | .endm |
21 | |
22 | .macro waituartcts,rd,rx |
23 | .endm |
24 | |
25 | .macro waituarttxrdy,rd,rx |
26 | 1001: ldr \rd, [\rx, #UART01x_FR] |
27 | ARM_BE8( rev \rd, \rd ) |
28 | tst \rd, #UART01x_FR_TXFF |
29 | bne 1001b |
30 | .endm |
31 | |
32 | .macro busyuart,rd,rx |
33 | 1001: ldr \rd, [\rx, #UART01x_FR] |
34 | ARM_BE8( rev \rd, \rd ) |
35 | tst \rd, #UART01x_FR_BUSY |
36 | bne 1001b |
37 | .endm |
38 | |