Merge HEAD from master.kernel.org:/pub/scm/linux/kernel/git/paulus/ppc64-2.6
[linux-2.6] / include / asm-arm / arch-aaec2000 / debug-macro.S
1 /*  linux/include/asm-arm/arch-aaec2000/debug-macro.S
2  *
3  *  Debugging macro include header
4  *
5  *  Copyright (c) 2005 Nicolas Bellido Y Ortega
6  *
7  *  This program is free software; you can redistribute it and/or modify
8  *  it under the terms of the GNU General Public License version 2 as
9  *  published by the Free Software Foundation.
10  */
11
12                 .macro  addruart,rx
13                 mrc     p15, 0, \rx, c1, c0
14                 tst     \rx, #1                 @ MMU enabled?
15                 moveq   \rx, #0x80000000                @ physical
16                 movne   \rx, #io_p2v(0x80000000)        @ virtual
17                 orr     \rx, \rx, #0x00000800
18                 .endm
19
20                 .macro  senduart,rd,rx
21                 str     \rd, [\rx, #0]
22                 .endm
23
24                 .macro  busyuart,rd,rx
25 1002:           ldr     \rd, [\rx, #0x10]
26                 tst     \rd, #(1 << 7)
27                 beq     1002b
28                 .endm
29
30                 .macro  waituart,rd,rx
31 #if 0
32 1001:           ldr     \rd, [\rx, #0x10]
33                 tst     \rd, #(1 << 5)
34                 beq     1001b
35 #endif
36                 .endm