diff options
Diffstat (limited to 'arch/arm/mach-msm/include/mach/debug-macro.S')
| -rw-r--r-- | arch/arm/mach-msm/include/mach/debug-macro.S | 51 | 
1 files changed, 32 insertions, 19 deletions
diff --git a/arch/arm/mach-msm/include/mach/debug-macro.S b/arch/arm/mach-msm/include/mach/debug-macro.S index 2dc73ccddb1..3ffd8668c9a 100644 --- a/arch/arm/mach-msm/include/mach/debug-macro.S +++ b/arch/arm/mach-msm/include/mach/debug-macro.S @@ -1,6 +1,7 @@ -/* arch/arm/mach-msm7200/include/mach/debug-macro.S +/*   *   * Copyright (C) 2007 Google, Inc. + * Copyright (c) 2011, Code Aurora Forum. All rights reserved.   * Author: Brian Swetland <swetland@google.com>   *   * This software is licensed under the terms of the GNU General Public @@ -14,40 +15,52 @@   *   */ - -  #include <mach/hardware.h>  #include <mach/msm_iomap.h> -#if defined(CONFIG_HAS_MSM_DEBUG_UART_PHYS) && !defined(CONFIG_MSM_DEBUG_UART_NONE)  	.macro	addruart, rp, rv, tmp +#ifdef MSM_DEBUG_UART_PHYS  	ldr	\rp, =MSM_DEBUG_UART_PHYS  	ldr	\rv, =MSM_DEBUG_UART_BASE +#endif  	.endm -	.macro	senduart,rd,rx +	.macro	senduart, rd, rx +#ifdef CONFIG_MSM_HAS_DEBUG_UART_HS +	@ Write the 1 character to UARTDM_TF +	str	\rd, [\rx, #0x70] +#else  	teq	\rx, #0  	strne	\rd, [\rx, #0x0C] +#endif  	.endm -	.macro	waituart,rd,rx +	.macro	waituart, rd, rx +#ifdef CONFIG_MSM_HAS_DEBUG_UART_HS +	@ check for TX_EMT in UARTDM_SR +	ldr	\rd, [\rx, #0x08] +	tst	\rd, #0x08 +	bne	1002f +	@ wait for TXREADY in UARTDM_ISR +1001:	ldr	\rd, [\rx, #0x14] +	tst	\rd, #0x80 +	beq 	1001b +1002: +	@ Clear TX_READY by writing to the UARTDM_CR register +	mov	\rd, #0x300 +	str	\rd, [\rx, #0x10] +	@ Write 0x1 to NCF register +	mov 	\rd, #0x1 +	str	\rd, [\rx, #0x40] +	@ UARTDM reg. Read to induce delay +	ldr	\rd, [\rx, #0x08] +#else  	@ wait for TX_READY  1001:	ldr	\rd, [\rx, #0x08]  	tst	\rd, #0x04  	beq	1001b -	.endm -#else -	.macro  addruart, rp, rv, tmp -	mov	\rv, #0xff000000 -	orr	\rv, \rv, #0x00f00000 -	.endm - -	.macro	senduart,rd,rx -	.endm - -	.macro	waituart,rd,rx -	.endm  #endif +	.endm -	.macro	busyuart,rd,rx +	.macro	busyuart, rd, rx  	.endm  |