Linux-2.6.12-rc2
[linux-2.6/linux-acpi-2.6/ibm-acpi-2.6.git] / include / asm-arm / arch-epxa10db / debug-macro.S
blob1d11c51f498f631c2959c1302934c4b1cbb1732b
1 /* linux/include/asm-arm/arch-epxa10db/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  *
14 #include <asm/arch/excalibur.h>
15 #define UART00_TYPE
16 #include <asm/arch/uart00.h>
18                 .macro  addruart,rx
19                 mrc     p15, 0, \rx, c1, c0
20                 tst     \rx, #1                 @ MMU enabled?
21                 ldr     \rx, =EXC_UART00_BASE   @ physical base address
22                 orrne   \rx, \rx, #0xff000000   @ virtual base
23                 orrne   \rx, \rx, #0x00f00000
24                 .endm
26                 .macro  senduart,rd,rx
27                 str     \rd, [\rx, #UART_TD(0)]
28                 .endm
30                 .macro  waituart,rd,rx
31 1001:           ldr     \rd, [\rx, #UART_TSR(0)]
32                 and     \rd, \rd,  #UART_TSR_TX_LEVEL_MSK
33                 cmp     \rd, #15
34                 beq     1001b
35                 .endm
37                 .macro  busyuart,rd,rx
38 1001:           ldr     \rd, [\rx, #UART_TSR(0)]
39                 ands    \rd, \rd,  #UART_TSR_TX_LEVEL_MSK
40                 bne     1001b
41                 .endm