First Support on Ginger and OMAP TI
[linux-ginger.git] / arch / arm / mach-omap2 / include / mach / debug-macro.S
blobe9f255df9163b827c6a9fc300b0b65345e79d329
1 /* arch/arm/mach-omap2/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                 .macro  addruart,rx
15                 mrc     p15, 0, \rx, c1, c0
16                 tst     \rx, #1                 @ MMU enabled?
17 #ifdef  CONFIG_ARCH_OMAP2
18                 moveq   \rx, #0x48000000        @ physical base address
19                 movne   \rx, #0xfa000000        @ virtual base
20                 orr     \rx, \rx, #0x0006a000
21 #ifdef CONFIG_OMAP_LL_DEBUG_UART2
22                 add     \rx, \rx, #0x00002000   @ UART 2
23 #endif
24 #ifdef CONFIG_OMAP_LL_DEBUG_UART3
25                 add     \rx, \rx, #0x00004000   @ UART 3
26 #endif
28 #elif defined(CONFIG_ARCH_OMAP3) || defined(CONFIG_ARCH_OMAP4)
29                 moveq   \rx, #0x48000000        @ physical base address
30                 movne   \rx, #0xfa000000        @ virtual base
31                 orr     \rx, \rx, #0x0006a000
32 #ifdef CONFIG_OMAP_LL_DEBUG_UART2
33                 add     \rx, \rx, #0x00002000   @ UART 2
34 #endif
35 #ifdef CONFIG_OMAP_LL_DEBUG_UART3
36                 add     \rx, \rx, #0x00fb0000   @ UART 3
37                 add     \rx, \rx, #0x00006000
38 #endif
39 #endif
40                 .endm
42                 .macro  senduart,rd,rx
43                 strb    \rd, [\rx]
44                 .endm
46                 .macro  busyuart,rd,rx
47 1001:           ldrb    \rd, [\rx, #(0x5 << 2)] @ OMAP-1510 and friends
48                 and     \rd, \rd, #0x60
49                 teq     \rd, #0x60
50                 beq     1002f
51                 ldrb    \rd, [\rx, #(0x5 << 0)] @ OMAP-730 only
52                 and     \rd, \rd, #0x60
53                 teq     \rd, #0x60
54                 bne     1001b
55 1002:
56                 .endm
58                 .macro  waituart,rd,rx
59                 .endm