You've already forked linux-apfs
mirror of
https://github.com/linux-apfs/linux-apfs.git
synced 2026-05-01 15:00:59 -07:00
ARM: add an extra temp register to the low level debugging addruart macro
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>
This commit is contained in:
committed by
Nicolas Pitre
parent
57c89707da
commit
639da5ee37
@@ -22,7 +22,7 @@
|
||||
#if defined(CONFIG_DEBUG_ICEDCC)
|
||||
@@ debug using ARM EmbeddedICE DCC channel
|
||||
|
||||
.macro addruart, rp, rv
|
||||
.macro addruart, rp, rv, tmp
|
||||
.endm
|
||||
|
||||
#if defined(CONFIG_CPU_V6) || defined(CONFIG_CPU_V6K) || defined(CONFIG_CPU_V7)
|
||||
@@ -106,7 +106,7 @@
|
||||
|
||||
#ifdef CONFIG_MMU
|
||||
.macro addruart_current, rx, tmp1, tmp2
|
||||
addruart \tmp1, \tmp2
|
||||
addruart \tmp1, \tmp2, \rx
|
||||
mrc p15, 0, \rx, c1, c0
|
||||
tst \rx, #1
|
||||
moveq \rx, \tmp1
|
||||
|
||||
@@ -234,7 +234,7 @@ __create_page_tables:
|
||||
* This allows debug messages to be output
|
||||
* via a serial console before paging_init.
|
||||
*/
|
||||
addruart r7, r3
|
||||
addruart r7, r3, r0
|
||||
|
||||
mov r3, r3, lsr #20
|
||||
mov r3, r3, lsl #2
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
#include <mach/hardware.h>
|
||||
#include <mach/at91_dbgu.h>
|
||||
|
||||
.macro addruart, rp, rv
|
||||
.macro addruart, rp, rv, tmp
|
||||
ldr \rp, =(AT91_BASE_SYS + AT91_DBGU) @ System peripherals (phys address)
|
||||
ldr \rv, =(AT91_VA_BASE_SYS + AT91_DBGU) @ System peripherals (virt address)
|
||||
.endm
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
#include <mach/hardware.h>
|
||||
#include <asm/hardware/clps7111.h>
|
||||
|
||||
.macro addruart, rp, rv
|
||||
.macro addruart, rp, rv, tmp
|
||||
#ifndef CONFIG_DEBUG_CLPS711X_UART2
|
||||
mov \rp, #0x0000 @ UART1
|
||||
#else
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
.macro addruart,rp,rv
|
||||
.macro addruart,rp,rv,tmp
|
||||
mov \rp, #0x00009000
|
||||
orr \rv, \rp, #0xf0000000 @ virtual base
|
||||
orr \rp, \rp, #0x10000000
|
||||
|
||||
@@ -32,7 +32,7 @@ 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
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
#include <mach/bridge-regs.h>
|
||||
|
||||
.macro addruart, rp, rv
|
||||
.macro addruart, rp, rv, tmp
|
||||
ldr \rp, =DOVE_SB_REGS_PHYS_BASE
|
||||
ldr \rv, =DOVE_SB_REGS_VIRT_BASE
|
||||
orr \rp, \rp, #0x00012000
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
*
|
||||
**/
|
||||
|
||||
.macro addruart, rp, rv
|
||||
.macro addruart, rp, rv, tmp
|
||||
mov \rp, #0xf0000000
|
||||
orr \rp, \rp, #0x00000be0
|
||||
mov \rp, \rv
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
*/
|
||||
#include <mach/ep93xx-regs.h>
|
||||
|
||||
.macro addruart, rp, rv
|
||||
.macro addruart, rp, rv, tmp
|
||||
ldr \rp, =EP93XX_APB_PHYS_BASE @ Physical base
|
||||
ldr \rv, =EP93XX_APB_VIRT_BASE @ virtual base
|
||||
orr \rp, \rp, #0x000c0000
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
* aligned and add in the offset when we load the value here.
|
||||
*/
|
||||
|
||||
.macro addruart, rp, rv
|
||||
.macro addruart, rp, rv, tmp
|
||||
ldr \rp, = S3C_PA_UART
|
||||
ldr \rv, = S3C_VA_UART
|
||||
#if CONFIG_DEBUG_S3C_UART != 0
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
|
||||
#ifndef CONFIG_DEBUG_DC21285_PORT
|
||||
/* For NetWinder debugging */
|
||||
.macro addruart, rp, rv
|
||||
.macro addruart, rp, rv, tmp
|
||||
mov \rp, #0x000003f8
|
||||
orr \rv, \rp, #0xff000000 @ virtual
|
||||
orr \rp, \rp, #0x7c000000 @ physical
|
||||
@@ -31,7 +31,7 @@
|
||||
.equ dc21285_high, ARMCSR_BASE & 0xff000000
|
||||
.equ dc21285_low, ARMCSR_BASE & 0x00ffffff
|
||||
|
||||
.macro addruart, rp, rv
|
||||
.macro addruart, rp, rv, tmp
|
||||
.if dc21285_low
|
||||
mov \rp, #dc21285_low
|
||||
.else
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
*/
|
||||
#include <mach/hardware.h>
|
||||
|
||||
.macro addruart, rp, rv
|
||||
.macro addruart, rp, rv, tmp
|
||||
ldr \rp, =GEMINI_UART_BASE @ physical
|
||||
ldr \rv, =IO_ADDRESS(GEMINI_UART_BASE) @ virtual
|
||||
.endm
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
.equ io_virt, IO_VIRT
|
||||
.equ io_phys, IO_PHYS
|
||||
|
||||
.macro addruart, rp, rv
|
||||
.macro addruart, rp, rv, tmp
|
||||
mov \rp, #0x00020000 @ UART1
|
||||
add \rv, \rp, #io_virt @ virtual address
|
||||
add \rp, \rp, #io_phys @ physical base address
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
*
|
||||
*/
|
||||
|
||||
.macro addruart, rp, rv
|
||||
.macro addruart, rp, rv, tmp
|
||||
mov \rp, #0x16000000 @ physical base address
|
||||
mov \rv, #0xf0000000 @ virtual base
|
||||
add \rv, \rv, #0x16000000 >> 4
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
.macro addruart, rp, rv
|
||||
.macro addruart, rp, rv, tmp
|
||||
mov \rp, #0x00002300
|
||||
orr \rp, \rp, #0x00000040
|
||||
orr \rv, \rp, #0xfe000000 @ virtual
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
.macro addruart, rp, rv
|
||||
.macro addruart, rp, rv, tmp
|
||||
mov \rp, #0xfe000000 @ physical as well as virtual
|
||||
orr \rp, \rp, #0x00800000 @ location of the UART
|
||||
mov \rv, \rp
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
.macro addruart, rp, rv
|
||||
.macro addruart, rp, rv, tmp
|
||||
mov \rp, #0x00ff0000
|
||||
orr \rp, \rp, #0x0000f700
|
||||
orr \rv, #0xfe000000 @ virtual
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
*
|
||||
*/
|
||||
|
||||
.macro addruart, rp, rv
|
||||
.macro addruart, rp, rv, tmp
|
||||
mov \rp, #0x00030000
|
||||
#ifdef __ARMEB__
|
||||
orr \rp, \rp, #0x00000003
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
*/
|
||||
#include <mach/ixp23xx.h>
|
||||
|
||||
.macro addruart, rp, rv
|
||||
.macro addruart, rp, rv, tmp
|
||||
ldr \rp, =IXP23XX_PERIPHERAL_PHYS @ physical
|
||||
ldr \rv, =IXP23XX_PERIPHERAL_VIRT @ virtual
|
||||
#ifdef __ARMEB__
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
.macro addruart, rp, rv
|
||||
.macro addruart, rp, rv, tmp
|
||||
#ifdef __ARMEB__
|
||||
mov \rp, #3 @ Uart regs are at off set of 3 if
|
||||
@ byte writes used - Big Endian.
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user