Loading...
1/* SPDX-License-Identifier: GPL-2.0-only */
2/*
3 * Debugging macro include header
4 *
5 * Copyright (C) 2010 Alexey Charkov <alchark@gmail.com>
6 * Moved from arch/arm/mach-vt8500/include/mach/debug-macro.S
7 * Minor changes for readability.
8 */
9
10#define DEBUG_LL_PHYS_BASE 0xD8000000
11#define DEBUG_LL_VIRT_BASE 0xF8000000
12#define DEBUG_LL_UART_OFFSET 0x00200000
13
14#if defined(CONFIG_DEBUG_VT8500_UART0)
15 .macro addruart, rp, rv, tmp
16 mov \rp, #DEBUG_LL_UART_OFFSET
17 orr \rv, \rp, #DEBUG_LL_VIRT_BASE
18 orr \rp, \rp, #DEBUG_LL_PHYS_BASE
19 .endm
20
21 .macro senduart,rd,rx
22 strb \rd, [\rx, #0]
23 .endm
24
25 .macro busyuart,rd,rx
261001: ldr \rd, [\rx, #0x1c]
27 ands \rd, \rd, #0x2
28 bne 1001b
29 .endm
30
31 .macro waituartcts,rd,rx
32 .endm
33
34 .macro waituarttxrdy,rd,rx
35 .endm
36
37#endif
1/*
2 * Debugging macro include header
3 *
4 * Copyright (C) 2010 Alexey Charkov <alchark@gmail.com>
5 * Moved from arch/arm/mach-vt8500/include/mach/debug-macro.S
6 * Minor changes for readability.
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11 */
12
13#define DEBUG_LL_PHYS_BASE 0xD8000000
14#define DEBUG_LL_VIRT_BASE 0xF8000000
15#define DEBUG_LL_UART_OFFSET 0x00200000
16
17#if defined(CONFIG_DEBUG_VT8500_UART0)
18 .macro addruart, rp, rv, tmp
19 mov \rp, #DEBUG_LL_UART_OFFSET
20 orr \rv, \rp, #DEBUG_LL_VIRT_BASE
21 orr \rp, \rp, #DEBUG_LL_PHYS_BASE
22 .endm
23
24 .macro senduart,rd,rx
25 strb \rd, [\rx, #0]
26 .endm
27
28 .macro busyuart,rd,rx
291001: ldr \rd, [\rx, #0x1c]
30 ands \rd, \rd, #0x2
31 bne 1001b
32 .endm
33
34 .macro waituart,rd,rx
35 .endm
36
37#endif