forked from Minki/linux
639da5ee37
Some platforms (like OMAP not to name it) are doing rather complicated hacks just to determine the base UART address to use. Let's give their addruart macro some slack by providing an extra work register which will allow for much needed cleanups. This is basically a no-op as this commit is only adding the extra argument to the macro but no one is using it yet. Signed-off-by: nicolas Pitre <nicolas.pitre@linaro.org> Reviewed-by: Kevin Hilman <khilman@ti.com>
30 lines
592 B
ArmAsm
30 lines
592 B
ArmAsm
/*
|
|
* 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.
|
|
*/
|
|
|
|
#include <mach/hardware.h>
|
|
#include <mach/uart.h>
|
|
|
|
.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
|
|
|