Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
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_ZTE_ZX
12#undef UART01x_DR
13#undef UART01x_FR
14#define UART01x_DR 0x04
15#define UART01x_FR 0x14
16#endif
17
18#ifdef CONFIG_DEBUG_UART_PHYS
19 .macro addruart, rp, rv, tmp
20 ldr \rp, =CONFIG_DEBUG_UART_PHYS
21 ldr \rv, =CONFIG_DEBUG_UART_VIRT
22 .endm
23#endif
24
25 .macro senduart,rd,rx
26 strb \rd, [\rx, #UART01x_DR]
27 .endm
28
29 .macro waituartcts,rd,rx
30 .endm
31
32 .macro waituarttxrdy,rd,rx
331001: ldr \rd, [\rx, #UART01x_FR]
34 ARM_BE8( rev \rd, \rd )
35 tst \rd, #UART01x_FR_TXFF
36 bne 1001b
37 .endm
38
39 .macro busyuart,rd,rx
401001: ldr \rd, [\rx, #UART01x_FR]
41 ARM_BE8( rev \rd, \rd )
42 tst \rd, #UART01x_FR_BUSY
43 bne 1001b
44 .endm