blob: 3612c7b9cbe71575b09bb9d4ee4c069febed6504 [file] [log] [blame]
David Brazdil0f672f62019-12-10 10:32:29 +00001/* SPDX-License-Identifier: GPL-2.0-or-later */
Andrew Scullb4b6d4a2019-01-02 15:54:55 +00002/*
3 * arch/arm/mach-prima2/include/mach/debug-macro.S
4 *
5 * Copyright (c) 2011 Cambridge Silicon Radio Limited, a CSR plc group company.
Andrew Scullb4b6d4a2019-01-02 15:54:55 +00006 */
7
8#define SIRF_LLUART_TXFIFO_STATUS 0x0114
9#define SIRF_LLUART_TXFIFO_DATA 0x0118
10
11#define SIRF_LLUART_TXFIFO_FULL (1 << 5)
12
13#ifdef CONFIG_DEBUG_SIRFATLAS7_UART0
14#define SIRF_LLUART_TXFIFO_EMPTY (1 << 8)
15#else
16#define SIRF_LLUART_TXFIFO_EMPTY (1 << 6)
17#endif
18
19
20 .macro addruart, rp, rv, tmp
21 ldr \rp, =CONFIG_DEBUG_UART_PHYS @ physical
22 ldr \rv, =CONFIG_DEBUG_UART_VIRT @ virtual
23 .endm
24
25 .macro senduart,rd,rx
26 str \rd, [\rx, #SIRF_LLUART_TXFIFO_DATA]
27 .endm
28
29 .macro busyuart,rd,rx
30 .endm
31
Olivier Deprez157378f2022-04-04 15:47:50 +020032 .macro waituartcts,rd,rx
33 .endm
34
35 .macro waituarttxrdy,rd,rx
Andrew Scullb4b6d4a2019-01-02 15:54:55 +0000361001: ldr \rd, [\rx, #SIRF_LLUART_TXFIFO_STATUS]
37 tst \rd, #SIRF_LLUART_TXFIFO_EMPTY
38 beq 1001b
39 .endm
40