]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blob - arch/arm/mach-ks8695/include/mach/debug-macro.S
arm: return both physical and virtual addresses from addruart
[mirror_ubuntu-artful-kernel.git] / arch / arm / mach-ks8695 / include / mach / debug-macro.S
1 /*
2 * arch/arm/mach-ks8695/include/mach/debug-macro.S
3 *
4 * Copyright (C) 2006 Ben Dooks <ben@simtec.co.uk>
5 * Copyright (C) 2006 Simtec Electronics
6 *
7 * KS8695 - Debug macros
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2 as
11 * published by the Free Software Foundation.
12 */
13
14 #include <mach/hardware.h>
15 #include <mach/regs-uart.h>
16
17 .macro addruart, rp, rv
18 ldr \rp, =KS8695_UART_PA @ physical base address
19 ldr \rv, =KS8695_UART_VA @ virtual base address
20 .endm
21
22 .macro senduart, rd, rx
23 str \rd, [\rx, #KS8695_URTH] @ Write to Transmit Holding Register
24 .endm
25
26 .macro busyuart, rd, rx
27 1001: ldr \rd, [\rx, #KS8695_URLS] @ Read Line Status Register
28 tst \rd, #URLS_URTE @ Holding & Shift registers empty?
29 beq 1001b
30 .endm
31
32 .macro waituart, rd, rx
33 1001: ldr \rd, [\rx, #KS8695_URLS] @ Read Line Status Register
34 tst \rd, #URLS_URTHRE @ Holding Register empty?
35 beq 1001b
36 .endm