Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0-only */
0002 /*
0003  * arch/arm/include/debug/sti.S
0004  *
0005  * Debugging macro include header
0006  * Copyright (C) 2013 STMicroelectronics (R&D) Limited.
0007  */
0008 
0009 #define ASC_TX_BUF_OFF  0x04
0010 #define ASC_CTRL_OFF    0x0c
0011 #define ASC_STA_OFF     0x14
0012 
0013 #define ASC_STA_TX_FULL         (1<<9)
0014 #define ASC_STA_TX_EMPTY        (1<<1)
0015 
0016 
0017         .macro  addruart, rp, rv, tmp
0018         ldr \rp,      =CONFIG_DEBUG_UART_PHYS   @ physical base
0019         ldr \rv,      =CONFIG_DEBUG_UART_VIRT   @ virt base
0020         .endm
0021 
0022                 .macro  senduart,rd,rx
0023                 strb    \rd, [\rx, #ASC_TX_BUF_OFF]
0024                 .endm
0025 
0026         .macro  waituartcts,rd,rx
0027         .endm
0028 
0029                 .macro  waituarttxrdy,rd,rx
0030 1001:           ldr     \rd, [\rx, #ASC_STA_OFF]
0031                 tst     \rd, #ASC_STA_TX_FULL
0032                 bne     1001b
0033                 .endm
0034 
0035                 .macro  busyuart,rd,rx
0036 1001:           ldr     \rd, [\rx, #ASC_STA_OFF]
0037                 tst     \rd, #ASC_STA_TX_EMPTY
0038                 beq     1001b
0039                 .endm