| /* | |
| * arch/arm/mach-prima2/include/mach/debug-macro.S | |
| * | |
| * Copyright (c) 2011 Cambridge Silicon Radio Limited, a CSR plc group company. | |
| * | |
| * Licensed under GPLv2 or later. | |
| */ | |
| #if defined(CONFIG_DEBUG_SIRFPRIMA2_UART1) | |
| #define SIRFSOC_UART1_PA_BASE 0xb0060000 | |
| #elif defined(CONFIG_DEBUG_SIRFMARCO_UART1) | |
| #define SIRFSOC_UART1_PA_BASE 0xcc060000 | |
| #else | |
| #define SIRFSOC_UART1_PA_BASE 0 | |
| #endif | |
| #define SIRFSOC_UART1_VA_BASE 0xFEC60000 | |
| #define SIRFSOC_UART_TXFIFO_STATUS 0x0114 | |
| #define SIRFSOC_UART_TXFIFO_DATA 0x0118 | |
| #define SIRFSOC_UART1_TXFIFO_FULL (1 << 5) | |
| #define SIRFSOC_UART1_TXFIFO_EMPTY (1 << 6) | |
| .macro addruart, rp, rv, tmp | |
| ldr \rp, =SIRFSOC_UART1_PA_BASE @ physical | |
| ldr \rv, =SIRFSOC_UART1_VA_BASE @ virtual | |
| .endm | |
| .macro senduart,rd,rx | |
| str \rd, [\rx, #SIRFSOC_UART_TXFIFO_DATA] | |
| .endm | |
| .macro busyuart,rd,rx | |
| .endm | |
| .macro waituart,rd,rx | |
| 1001: ldr \rd, [\rx, #SIRFSOC_UART_TXFIFO_STATUS] | |
| tst \rd, #SIRFSOC_UART1_TXFIFO_EMPTY | |
| beq 1001b | |
| .endm | |