Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
torvalds
GitHub Repository: torvalds/linux
Path: blob/master/arch/arm/include/debug/bcm63xx.S
26295 views
1
/* SPDX-License-Identifier: GPL-2.0-only */
2
/*
3
* Broadcom BCM63xx low-level UART debug
4
*
5
* Copyright (C) 2014 Broadcom Corporation
6
*/
7
8
#include <linux/serial_bcm63xx.h>
9
10
.macro addruart, rp, rv, tmp
11
ldr \rp, =CONFIG_DEBUG_UART_PHYS
12
ldr \rv, =CONFIG_DEBUG_UART_VIRT
13
.endm
14
15
.macro senduart, rd, rx
16
/* word access do not work */
17
strb \rd, [\rx, #UART_FIFO_REG]
18
.endm
19
20
.macro waituarttxrdy, rd, rx
21
1001: ldr \rd, [\rx, #UART_IR_REG]
22
tst \rd, #(1 << UART_IR_TXEMPTY)
23
beq 1001b
24
.endm
25
26
.macro waituartcts, rd, rx
27
.endm
28
29
.macro busyuart, rd, rx
30
1002: ldr \rd, [\rx, #UART_IR_REG]
31
tst \rd, #(1 << UART_IR_TXTRESH)
32
beq 1002b
33
.endm
34
35