Merge tag 'v3.3.7' into 3.3/master
[zen-stable.git] / arch / arm / mach-clps711x / include / mach / debug-macro.S
blobb802e8a51831b8879d535de86561abbeacad0e33
1 /* arch/arm/mach-clps711x/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  *
14 #include <mach/hardware.h>
15 #include <asm/hardware/clps7111.h>
17                 .macro  addruart, rp, rv, tmp
18 #ifndef CONFIG_DEBUG_CLPS711X_UART2
19                 mov     \rp, #0x0000    @ UART1
20 #else
21                 mov     \rp, #0x1000    @ UART2
22 #endif
23                 orr     \rv, \rp, #CLPS7111_VIRT_BASE
24                 orr     \rp, \rp, #CLPS7111_PHYS_BASE
25                 .endm
27                 .macro  senduart,rd,rx
28                 str     \rd, [\rx, #0x0480]     @ UARTDR
29                 .endm
31                 .macro  waituart,rd,rx
32 1001:           ldr     \rd, [\rx, #0x0140]     @ SYSFLGx
33                 tst     \rd, #1 << 11           @ UBUSYx
34                 bne     1001b
35                 .endm
37                 .macro  busyuart,rd,rx
38                 tst     \rx, #0x1000            @ UART2 does not have CTS here
39                 bne     1002f
40 1001:           ldr     \rd, [\rx, #0x0140]     @ SYSFLGx
41                 tst     \rd, #1 << 8            @ CTS
42                 bne     1001b
43 1002:
44                 .endm