1/* arch/arm/mach-h720x/include/mach/debug-macro.S
2 *
3 * Debugging macro include header
4 *
5 *  Copyright (C) 1994-1999 Russell King
6 *  Moved from linux/arch/arm/kernel/debug.S by Ben Dooks
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
14#include <mach/hardware.h>
15
16		.equ    io_virt, IO_VIRT
17		.equ    io_phys, IO_PHYS
18
19		.macro  addruart, rp, rv, tmp
20		mov     \rp, #0x00020000	@ UART1
21		add     \rv, \rp, #io_virt	@ virtual address
22		add     \rp, \rp, #io_phys	@ physical base address
23		.endm
24
25		.macro  senduart,rd,rx
26		str     \rd, [\rx, #0x0]        @ UARTDR
27
28		.endm
29
30		.macro  waituart,rd,rx
311001:		ldr     \rd, [\rx, #0x18]       @ UARTFLG
32		tst     \rd, #1 << 5	       @ UARTFLGUTXFF - 1 when full
33		bne     1001b
34		.endm
35
36		.macro  busyuart,rd,rx
371001:		ldr     \rd, [\rx, #0x18]       @ UARTFLG
38		tst     \rd, #1 << 3	       @ UARTFLGUBUSY - 1 when busy
39		bne     1001b
40		.endm
41