diff options
| author | Arnd Bergmann <arnd@arndb.de> | 2011-10-31 23:25:41 +0100 | 
|---|---|---|
| committer | Arnd Bergmann <arnd@arndb.de> | 2011-10-31 23:25:41 +0100 | 
| commit | 3e965b176341b78620f7404fd8b7f9a0d061f8a2 (patch) | |
| tree | a2dbf06d6ae20fbe417b70f0a471cc4f93ff0a71 /arch/arm/mach-davinci/include/mach/debug-macro.S | |
| parent | 034ee299122c6b145d6d3cafb9ef5c329a4ab990 (diff) | |
| parent | 5839fec9d8db35b2b07359b18a77295418e239ad (diff) | |
| download | olio-linux-3.10-3e965b176341b78620f7404fd8b7f9a0d061f8a2.tar.xz olio-linux-3.10-3e965b176341b78620f7404fd8b7f9a0d061f8a2.zip  | |
Merge branch 'next/fixes' into next/cleanup
Conflicts:
	arch/arm/mach-mxs/include/mach/gpio.h
	arch/arm/plat-mxc/include/mach/gpio.h
	drivers/video/omap/lcd_apollon.c
	drivers/video/omap/lcd_ldp.c
	drivers/video/omap/lcd_overo.c
Diffstat (limited to 'arch/arm/mach-davinci/include/mach/debug-macro.S')
| -rw-r--r-- | arch/arm/mach-davinci/include/mach/debug-macro.S | 52 | 
1 files changed, 23 insertions, 29 deletions
diff --git a/arch/arm/mach-davinci/include/mach/debug-macro.S b/arch/arm/mach-davinci/include/mach/debug-macro.S index f8b7ea4f623..cf94552d527 100644 --- a/arch/arm/mach-davinci/include/mach/debug-macro.S +++ b/arch/arm/mach-davinci/include/mach/debug-macro.S @@ -18,56 +18,50 @@  #include <linux/serial_reg.h> -#include <asm/memory.h> -  #include <mach/serial.h>  #define UART_SHIFT	2 -#define davinci_uart_v2p(x)	((x) - PAGE_OFFSET + PLAT_PHYS_OFFSET) -#define davinci_uart_p2v(x)	((x) - PLAT_PHYS_OFFSET + PAGE_OFFSET) -  		.pushsection .data  davinci_uart_phys:	.word	0  davinci_uart_virt:	.word	0  		.popsection -		.macro addruart, rp, rv +		.macro addruart, rp, rv, tmp  		/* Use davinci_uart_phys/virt if already configured */ -10:		mrc	p15, 0, \rp, c1, c0 -		tst	\rp, #1			@ MMU enabled? -		ldreq	\rp, =davinci_uart_v2p(davinci_uart_phys) -		ldrne	\rp, =davinci_uart_phys -		add	\rv, \rp, #4		@ davinci_uart_virt -		ldr	\rp, [\rp, #0] -		ldr	\rv, [\rv, #0] +10:		adr	\rp, 99f		@ get effective addr of 99f +		ldr	\rv, [\rp]		@ get absolute addr of 99f +		sub	\rv, \rv, \rp		@ offset between the two +		ldr	\rp, [\rp, #4]		@ abs addr of omap_uart_phys +		sub	\tmp, \rp, \rv		@ make it effective +		ldr	\rp, [\tmp, #0]		@ davinci_uart_phys +		ldr	\rv, [\tmp, #4]		@ davinci_uart_virt  		cmp	\rp, #0			@ is port configured?  		cmpne	\rv, #0 -		bne	99f			@ already configured +		bne	100f			@ already configured  		/* Check the debug UART address set in uncompress.h */ -		mrc	p15, 0, \rp, c1, c0 -		tst	\rp, #1			@ MMU enabled? +		and	\rp, pc, #0xff000000 +		ldr	\rv, =DAVINCI_UART_INFO_OFS +		add	\rp, \rp, \rv  		/* Copy uart phys address from decompressor uart info */ -		ldreq	\rv, =davinci_uart_v2p(davinci_uart_phys) -		ldrne	\rv, =davinci_uart_phys -		ldreq	\rp, =DAVINCI_UART_INFO -		ldrne	\rp, =davinci_uart_p2v(DAVINCI_UART_INFO) -		ldr	\rp, [\rp, #0] -		str	\rp, [\rv] +		ldr	\rv, [\rp, #0] +		str	\rv, [\tmp, #0]  		/* Copy uart virt address from decompressor uart info */ -		ldreq	\rv, =davinci_uart_v2p(davinci_uart_virt) -		ldrne	\rv, =davinci_uart_virt -		ldreq	\rp, =DAVINCI_UART_INFO -		ldrne	\rp, =davinci_uart_p2v(DAVINCI_UART_INFO) -		ldr	\rp, [\rp, #4] -		str	\rp, [\rv] +		ldr	\rv, [\rp, #4] +		str	\rv, [\tmp, #4]  		b	10b -99: + +		.align +99:		.word	. +		.word	davinci_uart_phys +		.ltorg + +100:  		.endm  		.macro	senduart,rd,rx  |