0001
0002
0003
0004
0005
0006
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