提交 186f93ea 编写于 作者: R Russell King

Merge branch 'tmpreg' into devel

Conflicts:
	arch/arm/Kconfig
	arch/arm/mach-ux500/include/mach/debug-macro.S
...@@ -738,14 +738,26 @@ config ARCH_U8500 ...@@ -738,14 +738,26 @@ config ARCH_U8500
endchoice endchoice
source "arch/arm/mach-aaec2000/Kconfig"
source "arch/arm/mach-at91/Kconfig"
source "arch/arm/mach-bcmring/Kconfig"
source "arch/arm/mach-clps711x/Kconfig" source "arch/arm/mach-clps711x/Kconfig"
source "arch/arm/mach-davinci/Kconfig"
source "arch/arm/mach-dove/Kconfig"
source "arch/arm/mach-ep93xx/Kconfig" source "arch/arm/mach-ep93xx/Kconfig"
source "arch/arm/mach-footbridge/Kconfig" source "arch/arm/mach-footbridge/Kconfig"
source "arch/arm/mach-gemini/Kconfig" source "arch/arm/mach-gemini/Kconfig"
source "arch/arm/mach-h720x/Kconfig"
source "arch/arm/mach-integrator/Kconfig" source "arch/arm/mach-integrator/Kconfig"
source "arch/arm/mach-iop32x/Kconfig" source "arch/arm/mach-iop32x/Kconfig"
...@@ -760,18 +772,28 @@ source "arch/arm/mach-ixp2000/Kconfig" ...@@ -760,18 +772,28 @@ source "arch/arm/mach-ixp2000/Kconfig"
source "arch/arm/mach-ixp23xx/Kconfig" source "arch/arm/mach-ixp23xx/Kconfig"
source "arch/arm/mach-kirkwood/Kconfig"
source "arch/arm/mach-ks8695/Kconfig"
source "arch/arm/mach-lh7a40x/Kconfig"
source "arch/arm/mach-loki/Kconfig" source "arch/arm/mach-loki/Kconfig"
source "arch/arm/mach-msm/Kconfig"
source "arch/arm/mach-mv78xx0/Kconfig" source "arch/arm/mach-mv78xx0/Kconfig"
source "arch/arm/mach-pxa/Kconfig" source "arch/arm/plat-mxc/Kconfig"
source "arch/arm/plat-pxa/Kconfig"
source "arch/arm/mach-mmp/Kconfig" source "arch/arm/mach-netx/Kconfig"
source "arch/arm/mach-nuc93x/Kconfig" source "arch/arm/mach-nomadik/Kconfig"
source "arch/arm/plat-nomadik/Kconfig"
source "arch/arm/mach-sa1100/Kconfig" source "arch/arm/mach-ns9xxx/Kconfig"
source "arch/arm/mach-nuc93x/Kconfig"
source "arch/arm/plat-omap/Kconfig" source "arch/arm/plat-omap/Kconfig"
...@@ -781,9 +803,14 @@ source "arch/arm/mach-omap2/Kconfig" ...@@ -781,9 +803,14 @@ source "arch/arm/mach-omap2/Kconfig"
source "arch/arm/mach-orion5x/Kconfig" source "arch/arm/mach-orion5x/Kconfig"
source "arch/arm/mach-kirkwood/Kconfig" source "arch/arm/mach-pxa/Kconfig"
source "arch/arm/plat-pxa/Kconfig"
source "arch/arm/mach-dove/Kconfig" source "arch/arm/mach-mmp/Kconfig"
source "arch/arm/mach-realview/Kconfig"
source "arch/arm/mach-sa1100/Kconfig"
source "arch/arm/plat-samsung/Kconfig" source "arch/arm/plat-samsung/Kconfig"
source "arch/arm/plat-s3c24xx/Kconfig" source "arch/arm/plat-s3c24xx/Kconfig"
...@@ -811,41 +838,14 @@ if ARCH_S5PC1XX ...@@ -811,41 +838,14 @@ if ARCH_S5PC1XX
source "arch/arm/mach-s5pc100/Kconfig" source "arch/arm/mach-s5pc100/Kconfig"
endif endif
source "arch/arm/mach-lh7a40x/Kconfig" source "arch/arm/mach-u300/Kconfig"
source "arch/arm/mach-h720x/Kconfig" source "arch/arm/mach-ux500/Kconfig"
source "arch/arm/mach-versatile/Kconfig" source "arch/arm/mach-versatile/Kconfig"
source "arch/arm/mach-aaec2000/Kconfig"
source "arch/arm/mach-realview/Kconfig"
source "arch/arm/mach-at91/Kconfig"
source "arch/arm/plat-mxc/Kconfig"
source "arch/arm/mach-nomadik/Kconfig"
source "arch/arm/plat-nomadik/Kconfig"
source "arch/arm/mach-netx/Kconfig"
source "arch/arm/mach-ns9xxx/Kconfig"
source "arch/arm/mach-davinci/Kconfig"
source "arch/arm/mach-ks8695/Kconfig"
source "arch/arm/mach-msm/Kconfig"
source "arch/arm/mach-u300/Kconfig"
source "arch/arm/mach-w90x900/Kconfig" source "arch/arm/mach-w90x900/Kconfig"
source "arch/arm/mach-bcmring/Kconfig"
source "arch/arm/mach-ux500/Kconfig"
# Definitions to make life easier # Definitions to make life easier
config ARCH_ACORN config ARCH_ACORN
bool bool
......
...@@ -146,6 +146,7 @@ machine-$(CONFIG_ARCH_MX1) := mx1 ...@@ -146,6 +146,7 @@ machine-$(CONFIG_ARCH_MX1) := mx1
machine-$(CONFIG_ARCH_MX2) := mx2 machine-$(CONFIG_ARCH_MX2) := mx2
machine-$(CONFIG_ARCH_MX25) := mx25 machine-$(CONFIG_ARCH_MX25) := mx25
machine-$(CONFIG_ARCH_MX3) := mx3 machine-$(CONFIG_ARCH_MX3) := mx3
machine-$(CONFIG_ARCH_MXC91231) := mxc91231
machine-$(CONFIG_ARCH_NETX) := netx machine-$(CONFIG_ARCH_NETX) := netx
machine-$(CONFIG_ARCH_NOMADIK) := nomadik machine-$(CONFIG_ARCH_NOMADIK) := nomadik
machine-$(CONFIG_ARCH_NS9XXX) := ns9xxx machine-$(CONFIG_ARCH_NS9XXX) := ns9xxx
...@@ -172,12 +173,12 @@ machine-$(CONFIG_ARCH_VERSATILE) := versatile ...@@ -172,12 +173,12 @@ machine-$(CONFIG_ARCH_VERSATILE) := versatile
machine-$(CONFIG_ARCH_W90X900) := w90x900 machine-$(CONFIG_ARCH_W90X900) := w90x900
machine-$(CONFIG_ARCH_NUC93X) := nuc93x machine-$(CONFIG_ARCH_NUC93X) := nuc93x
machine-$(CONFIG_FOOTBRIDGE) := footbridge machine-$(CONFIG_FOOTBRIDGE) := footbridge
machine-$(CONFIG_ARCH_MXC91231) := mxc91231
# Platform directory name. This list is sorted alphanumerically # Platform directory name. This list is sorted alphanumerically
# by CONFIG_* macro name. # by CONFIG_* macro name.
plat-$(CONFIG_ARCH_MXC) := mxc plat-$(CONFIG_ARCH_MXC) := mxc
plat-$(CONFIG_ARCH_OMAP) := omap plat-$(CONFIG_ARCH_OMAP) := omap
plat-$(CONFIG_ARCH_STMP3XXX) := stmp3xxx
plat-$(CONFIG_PLAT_IOP) := iop plat-$(CONFIG_PLAT_IOP) := iop
plat-$(CONFIG_PLAT_NOMADIK) := nomadik plat-$(CONFIG_PLAT_NOMADIK) := nomadik
plat-$(CONFIG_PLAT_ORION) := orion plat-$(CONFIG_PLAT_ORION) := orion
...@@ -185,7 +186,6 @@ plat-$(CONFIG_PLAT_PXA) := pxa ...@@ -185,7 +186,6 @@ plat-$(CONFIG_PLAT_PXA) := pxa
plat-$(CONFIG_PLAT_S3C24XX) := s3c24xx s3c samsung plat-$(CONFIG_PLAT_S3C24XX) := s3c24xx s3c samsung
plat-$(CONFIG_PLAT_S3C64XX) := s3c64xx s3c samsung plat-$(CONFIG_PLAT_S3C64XX) := s3c64xx s3c samsung
plat-$(CONFIG_PLAT_S5PC1XX) := s5pc1xx s3c samsung plat-$(CONFIG_PLAT_S5PC1XX) := s5pc1xx s3c samsung
plat-$(CONFIG_ARCH_STMP3XXX) := stmp3xxx
ifeq ($(CONFIG_ARCH_EBSA110),y) ifeq ($(CONFIG_ARCH_EBSA110),y)
# This is what happens if you forget the IOCS16 line. # This is what happens if you forget the IOCS16 line.
......
...@@ -22,19 +22,27 @@ ...@@ -22,19 +22,27 @@
#if defined(CONFIG_DEBUG_ICEDCC) #if defined(CONFIG_DEBUG_ICEDCC)
#ifdef CONFIG_CPU_V6 #ifdef CONFIG_CPU_V6
.macro loadsp, rb .macro loadsp, rb, tmp
.endm .endm
.macro writeb, ch, rb .macro writeb, ch, rb
mcr p14, 0, \ch, c0, c5, 0 mcr p14, 0, \ch, c0, c5, 0
.endm .endm
#elif defined(CONFIG_CPU_V7)
.macro loadsp, rb, tmp
.endm
.macro writeb, ch, rb
wait: mrc p14, 0, pc, c0, c1, 0
bcs wait
mcr p14, 0, \ch, c0, c5, 0
.endm
#elif defined(CONFIG_CPU_XSCALE) #elif defined(CONFIG_CPU_XSCALE)
.macro loadsp, rb .macro loadsp, rb, tmp
.endm .endm
.macro writeb, ch, rb .macro writeb, ch, rb
mcr p14, 0, \ch, c8, c0, 0 mcr p14, 0, \ch, c8, c0, 0
.endm .endm
#else #else
.macro loadsp, rb .macro loadsp, rb, tmp
.endm .endm
.macro writeb, ch, rb .macro writeb, ch, rb
mcr p14, 0, \ch, c1, c0, 0 mcr p14, 0, \ch, c1, c0, 0
...@@ -50,7 +58,7 @@ ...@@ -50,7 +58,7 @@
.endm .endm
#if defined(CONFIG_ARCH_SA1100) #if defined(CONFIG_ARCH_SA1100)
.macro loadsp, rb .macro loadsp, rb, tmp
mov \rb, #0x80000000 @ physical base address mov \rb, #0x80000000 @ physical base address
#ifdef CONFIG_DEBUG_LL_SER3 #ifdef CONFIG_DEBUG_LL_SER3
add \rb, \rb, #0x00050000 @ Ser3 add \rb, \rb, #0x00050000 @ Ser3
...@@ -59,13 +67,13 @@ ...@@ -59,13 +67,13 @@
#endif #endif
.endm .endm
#elif defined(CONFIG_ARCH_S3C2410) #elif defined(CONFIG_ARCH_S3C2410)
.macro loadsp, rb .macro loadsp, rb, tmp
mov \rb, #0x50000000 mov \rb, #0x50000000
add \rb, \rb, #0x4000 * CONFIG_S3C_LOWLEVEL_UART_PORT add \rb, \rb, #0x4000 * CONFIG_S3C_LOWLEVEL_UART_PORT
.endm .endm
#else #else
.macro loadsp, rb .macro loadsp, rb, tmp
addruart \rb addruart \rb, \tmp
.endm .endm
#endif #endif
#endif #endif
...@@ -1017,7 +1025,7 @@ phex: adr r3, phexbuf ...@@ -1017,7 +1025,7 @@ phex: adr r3, phexbuf
strb r2, [r3, r1] strb r2, [r3, r1]
b 1b b 1b
puts: loadsp r3 puts: loadsp r3, r1
1: ldrb r2, [r0], #1 1: ldrb r2, [r0], #1
teq r2, #0 teq r2, #0
moveq pc, lr moveq pc, lr
...@@ -1034,7 +1042,7 @@ puts: loadsp r3 ...@@ -1034,7 +1042,7 @@ puts: loadsp r3
putc: putc:
mov r2, r0 mov r2, r0
mov r0, #0 mov r0, #0
loadsp r3 loadsp r3, r1
b 2b b 2b
memdump: mov r12, r0 memdump: mov r12, r0
......
...@@ -53,6 +53,18 @@ static void icedcc_putc(int ch) ...@@ -53,6 +53,18 @@ static void icedcc_putc(int ch)
asm("mcr p14, 0, %0, c0, c5, 0" : : "r" (ch)); asm("mcr p14, 0, %0, c0, c5, 0" : : "r" (ch));
} }
#elif defined(CONFIG_CPU_V7)
static void icedcc_putc(int ch)
{
asm(
"wait: mrc p14, 0, pc, c0, c1, 0 \n\
bcs wait \n\
mcr p14, 0, %0, c0, c5, 0 "
: : "r" (ch));
}
#elif defined(CONFIG_CPU_XSCALE) #elif defined(CONFIG_CPU_XSCALE)
static void icedcc_putc(int ch) static void icedcc_putc(int ch)
...@@ -88,7 +100,6 @@ static void icedcc_putc(int ch) ...@@ -88,7 +100,6 @@ static void icedcc_putc(int ch)
#endif #endif
#define putc(ch) icedcc_putc(ch) #define putc(ch) icedcc_putc(ch)
#define flush() do { } while (0)
#endif #endif
static void putstr(const char *ptr) static void putstr(const char *ptr)
......
...@@ -24,7 +24,7 @@ ...@@ -24,7 +24,7 @@
#if defined(CONFIG_CPU_V6) #if defined(CONFIG_CPU_V6)
.macro addruart, rx .macro addruart, rx, tmp
.endm .endm
.macro senduart, rd, rx .macro senduart, rd, rx
...@@ -49,9 +49,29 @@ ...@@ -49,9 +49,29 @@
1002: 1002:
.endm .endm
#elif defined(CONFIG_CPU_V7)
.macro addruart, rx, tmp
.endm
.macro senduart, rd, rx
mcr p14, 0, \rd, c0, c5, 0
.endm
.macro busyuart, rd, rx
busy: mrc p14, 0, pc, c0, c1, 0
bcs busy
.endm
.macro waituart, rd, rx
wait: mrc p14, 0, pc, c0, c1, 0
bcs wait
.endm
#elif defined(CONFIG_CPU_XSCALE) #elif defined(CONFIG_CPU_XSCALE)
.macro addruart, rx .macro addruart, rx, tmp
.endm .endm
.macro senduart, rd, rx .macro senduart, rd, rx
...@@ -78,7 +98,7 @@ ...@@ -78,7 +98,7 @@
#else #else
.macro addruart, rx .macro addruart, rx, tmp
.endm .endm
.macro senduart, rd, rx .macro senduart, rd, rx
...@@ -144,7 +164,7 @@ ENDPROC(printhex2) ...@@ -144,7 +164,7 @@ ENDPROC(printhex2)
.ltorg .ltorg
ENTRY(printascii) ENTRY(printascii)
addruart r3 addruart r3, r1
b 2f b 2f
1: waituart r2, r3 1: waituart r2, r3
senduart r1, r3 senduart r1, r3
...@@ -160,7 +180,7 @@ ENTRY(printascii) ...@@ -160,7 +180,7 @@ ENTRY(printascii)
ENDPROC(printascii) ENDPROC(printascii)
ENTRY(printch) ENTRY(printch)
addruart r3 addruart r3, r1
mov r1, r0 mov r1, r0
mov r0, #0 mov r0, #0
b 1b b 1b
......
...@@ -78,15 +78,6 @@ int arm_elf_read_implies_exec(const struct elf32_hdr *x, int executable_stack) ...@@ -78,15 +78,6 @@ int arm_elf_read_implies_exec(const struct elf32_hdr *x, int executable_stack)
return 1; return 1;
if (cpu_architecture() < CPU_ARCH_ARMv6) if (cpu_architecture() < CPU_ARCH_ARMv6)
return 1; return 1;
#if !defined(CONFIG_AEABI) || defined(CONFIG_OABI_COMPAT)
/*
* If we have support for OABI programs, we can never allow NX
* support - our signal syscall restart mechanism relies upon
* being able to execute code placed on the user stack.
*/
return 1;
#else
return 0; return 0;
#endif
} }
EXPORT_SYMBOL(arm_elf_read_implies_exec); EXPORT_SYMBOL(arm_elf_read_implies_exec);
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
*/ */
#include "hardware.h" #include "hardware.h"
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
moveq \rx, #0x80000000 @ physical moveq \rx, #0x80000000 @ physical
......
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
#include <mach/hardware.h> #include <mach/hardware.h>
#include <mach/at91_dbgu.h> #include <mach/at91_dbgu.h>
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
ldreq \rx, =(AT91_BASE_SYS + AT91_DBGU) @ System peripherals (phys address) ldreq \rx, =(AT91_BASE_SYS + AT91_DBGU) @ System peripherals (phys address)
......
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
#include <asm/hardware/clps7111.h> #include <asm/hardware/clps7111.h>
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
moveq \rx, #CLPS7111_PHYS_BASE moveq \rx, #CLPS7111_PHYS_BASE
......
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
#include <linux/serial_reg.h> #include <linux/serial_reg.h>
#define UART_SHIFT 2 #define UART_SHIFT 2
.macro addruart, rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
moveq \rx, #0x01000000 @ physical base address moveq \rx, #0x01000000 @ physical base address
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
#include <mach/bridge-regs.h> #include <mach/bridge-regs.h>
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
ldreq \rx, =DOVE_SB_REGS_PHYS_BASE ldreq \rx, =DOVE_SB_REGS_PHYS_BASE
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
* *
**/ **/
.macro addruart,rx .macro addruart, rx, tmp
mov \rx, #0xf0000000 mov \rx, #0xf0000000
orr \rx, \rx, #0x00000be0 orr \rx, \rx, #0x00000be0
.endm .endm
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
*/ */
#include <mach/ep93xx-regs.h> #include <mach/ep93xx-regs.h>
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
ldreq \rx, =EP93XX_APB_PHYS_BASE @ Physical base ldreq \rx, =EP93XX_APB_PHYS_BASE @ Physical base
......
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
#ifndef CONFIG_DEBUG_DC21285_PORT #ifndef CONFIG_DEBUG_DC21285_PORT
/* For NetWinder debugging */ /* For NetWinder debugging */
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
moveq \rx, #0x7c000000 @ physical moveq \rx, #0x7c000000 @ physical
...@@ -32,7 +32,7 @@ ...@@ -32,7 +32,7 @@
.equ dc21285_high, ARMCSR_BASE & 0xff000000 .equ dc21285_high, ARMCSR_BASE & 0xff000000
.equ dc21285_low, ARMCSR_BASE & 0x00ffffff .equ dc21285_low, ARMCSR_BASE & 0x00ffffff
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
moveq \rx, #0x42000000 moveq \rx, #0x42000000
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
*/ */
#include <mach/hardware.h> #include <mach/hardware.h>
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
ldreq \rx, =GEMINI_UART_BASE @ physical ldreq \rx, =GEMINI_UART_BASE @ physical
......
...@@ -30,7 +30,9 @@ static inline void putc(char c) ...@@ -30,7 +30,9 @@ static inline void putc(char c)
UART[UART_TX] = c; UART[UART_TX] = c;
} }
#define flush() do { } while (0) static inline void flush(void)
{
}
/* /*
* nothing to do * nothing to do
......
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
.equ io_virt, IO_BASE .equ io_virt, IO_BASE
.equ io_phys, IO_START .equ io_phys, IO_START
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
moveq \rx, #io_phys @ physical base address moveq \rx, #io_phys @ physical base address
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
* *
*/ */
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
moveq \rx, #0x16000000 @ physical base address moveq \rx, #0x16000000 @ physical base address
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
* published by the Free Software Foundation. * published by the Free Software Foundation.
*/ */
.macro addruart, rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ mmu enabled? tst \rx, #1 @ mmu enabled?
moveq \rx, #0xff000000 @ physical moveq \rx, #0xff000000 @ physical
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
* published by the Free Software Foundation. * published by the Free Software Foundation.
*/ */
.macro addruart, rx .macro addruart, rx, tmp
mov \rx, #0xfe000000 @ physical as well as virtual mov \rx, #0xfe000000 @ physical as well as virtual
orr \rx, \rx, #0x00800000 @ location of the UART orr \rx, \rx, #0x00800000 @ location of the UART
.endm .endm
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
* published by the Free Software Foundation. * published by the Free Software Foundation.
*/ */
.macro addruart, rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ mmu enabled? tst \rx, #1 @ mmu enabled?
moveq \rx, #0xff000000 @ physical moveq \rx, #0xff000000 @ physical
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
* *
*/ */
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
moveq \rx, #0xc0000000 @ Physical base moveq \rx, #0xc0000000 @ Physical base
......
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
*/ */
#include <mach/ixp23xx.h> #include <mach/ixp23xx.h>
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ mmu enabled? tst \rx, #1 @ mmu enabled?
ldreq \rx, =IXP23XX_PERIPHERAL_PHYS @ physical ldreq \rx, =IXP23XX_PERIPHERAL_PHYS @ physical
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
* published by the Free Software Foundation. * published by the Free Software Foundation.
*/ */
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
moveq \rx, #0xc8000000 moveq \rx, #0xc8000000
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
#include <mach/bridge-regs.h> #include <mach/bridge-regs.h>
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
ldreq \rx, =KIRKWOOD_REGS_PHYS_BASE ldreq \rx, =KIRKWOOD_REGS_PHYS_BASE
......
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
#include <mach/hardware.h> #include <mach/hardware.h>
#include <mach/regs-uart.h> #include <mach/regs-uart.h>
.macro addruart, rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
ldreq \rx, =KS8695_UART_PA @ physical base address ldreq \rx, =KS8695_UART_PA @ physical base address
......
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
.equ io_virt, IO_BASE .equ io_virt, IO_BASE
.equ io_phys, IO_START .equ io_phys, IO_START
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
moveq \rx, #io_phys @ physical base address moveq \rx, #io_phys @ physical base address
......
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
@ It is not known if this will be appropriate for every 40x @ It is not known if this will be appropriate for every 40x
@ board. @ board.
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
mov \rx, #0x00000700 @ offset from base mov \rx, #0x00000700 @ offset from base
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
#include <mach/loki.h> #include <mach/loki.h>
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
ldreq \rx, =LOKI_REGS_PHYS_BASE ldreq \rx, =LOKI_REGS_PHYS_BASE
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
#include <mach/addr-map.h> #include <mach/addr-map.h>
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
ldreq \rx, =APB_PHYS_BASE @ physical ldreq \rx, =APB_PHYS_BASE @ physical
......
...@@ -20,7 +20,7 @@ ...@@ -20,7 +20,7 @@
#include <mach/msm_iomap.h> #include <mach/msm_iomap.h>
#ifdef CONFIG_MSM_DEBUG_UART #ifdef CONFIG_MSM_DEBUG_UART
.macro addruart,rx .macro addruart, rx, tmp
@ see if the MMU is enabled and select appropriate base address @ see if the MMU is enabled and select appropriate base address
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 tst \rx, #1
...@@ -40,7 +40,7 @@ ...@@ -40,7 +40,7 @@
beq 1001b beq 1001b
.endm .endm
#else #else
.macro addruart,rx .macro addruart, rx, tmp
.endm .endm
.macro senduart,rd,rx .macro senduart,rd,rx
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
#include <mach/mv78xx0.h> #include <mach/mv78xx0.h>
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
ldreq \rx, =MV78XX0_REGS_PHYS_BASE ldreq \rx, =MV78XX0_REGS_PHYS_BASE
......
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
#include "hardware.h" #include "hardware.h"
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
moveq \rx, #0x00100000 @ physical moveq \rx, #0x00100000 @ physical
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
* *
*/ */
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
moveq \rx, #0x10000000 @ physical base address moveq \rx, #0x10000000 @ physical base address
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
#include <mach/regs-board-a9m9750dev.h> #include <mach/regs-board-a9m9750dev.h>
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 tst \rx, #1
ldreq \rx, =NS9XXX_CSxSTAT_PHYS(0) ldreq \rx, =NS9XXX_CSxSTAT_PHYS(0)
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
* *
*/ */
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
moveq \rx, #0xff000000 @ physical base address moveq \rx, #0xff000000 @ physical base address
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
* *
*/ */
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
#ifdef CONFIG_ARCH_OMAP2 #ifdef CONFIG_ARCH_OMAP2
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
#include <mach/orion5x.h> #include <mach/orion5x.h>
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
ldreq \rx, =ORION5X_REGS_PHYS_BASE ldreq \rx, =ORION5X_REGS_PHYS_BASE
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
* *
*/ */
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
mov \rx, #0x00090000 mov \rx, #0x00090000
......
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
#include "hardware.h" #include "hardware.h"
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
moveq \rx, #0x40000000 @ physical moveq \rx, #0x40000000 @ physical
......
...@@ -33,7 +33,7 @@ ...@@ -33,7 +33,7 @@
#error "Unknown RealView platform" #error "Unknown RealView platform"
#endif #endif
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
moveq \rx, #0x10000000 moveq \rx, #0x10000000
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
* *
*/ */
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
moveq \rx, #0x03000000 moveq \rx, #0x03000000
......
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
#define S3C2410_UART1_OFF (0x4000) #define S3C2410_UART1_OFF (0x4000)
#define SHIFT_2440TXF (14-9) #define SHIFT_2440TXF (14-9)
.macro addruart, rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 tst \rx, #1
ldreq \rx, = S3C24XX_PA_UART ldreq \rx, = S3C24XX_PA_UART
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
#include <mach/map.h> #include <mach/map.h>
#include <plat/regs-serial.h> #include <plat/regs-serial.h>
.macro addruart, rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 tst \rx, #1
ldreq \rx, = S3C24XX_PA_UART ldreq \rx, = S3C24XX_PA_UART
......
...@@ -21,7 +21,7 @@ ...@@ -21,7 +21,7 @@
* aligned and add in the offset when we load the value here. * aligned and add in the offset when we load the value here.
*/ */
.macro addruart, rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 tst \rx, #1
ldreq \rx, = S3C_PA_UART ldreq \rx, = S3C_PA_UART
......
...@@ -22,7 +22,7 @@ ...@@ -22,7 +22,7 @@
* aligned and add in the offset when we load the value here. * aligned and add in the offset when we load the value here.
*/ */
.macro addruart, rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 tst \rx, #1
ldreq \rx, = S3C_PA_UART ldreq \rx, = S3C_PA_UART
......
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
*/ */
#include <mach/hardware.h> #include <mach/hardware.h>
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
moveq \rx, #0x80000000 @ physical base address moveq \rx, #0x80000000 @ physical base address
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
* *
*/ */
.macro addruart,rx .macro addruart, rx, tmp
mov \rx, #0xe0000000 mov \rx, #0xe0000000
orr \rx, \rx, #0x000003f8 orr \rx, \rx, #0x000003f8
.endm .endm
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
*/ */
#include <mach/hardware.h> #include <mach/hardware.h>
.macro addruart,rx .macro addruart, rx, tmp
/* If we move the adress using MMU, use this. */ /* If we move the adress using MMU, use this. */
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
*/ */
#include <mach/hardware.h> #include <mach/hardware.h>
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
ldreq \rx, =U8500_UART2_BASE @ no, physical address ldreq \rx, =U8500_UART2_BASE @ no, physical address
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
* *
*/ */
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
moveq \rx, #0x10000000 moveq \rx, #0x10000000
......
...@@ -52,7 +52,7 @@ ...@@ -52,7 +52,7 @@
#define UART_PADDR MXC91231_UART2_BASE_ADDR #define UART_PADDR MXC91231_UART2_BASE_ADDR
#define UART_VADDR MXC91231_AIPS1_IO_ADDRESS(MXC91231_UART2_BASE_ADDR) #define UART_VADDR MXC91231_AIPS1_IO_ADDRESS(MXC91231_UART2_BASE_ADDR)
#endif #endif
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
ldreq \rx, =UART_PADDR @ physical ldreq \rx, =UART_PADDR @ physical
......
...@@ -60,7 +60,9 @@ static void putc(int ch) ...@@ -60,7 +60,9 @@ static void putc(int ch)
UART(TXR) = ch; UART(TXR) = ch;
} }
#define flush() do { } while (0) static inline void flush(void)
{
}
#define MX1_UART1_BASE_ADDR 0x00206000 #define MX1_UART1_BASE_ADDR 0x00206000
#define MX25_UART1_BASE_ADDR 0x43f90000 #define MX25_UART1_BASE_ADDR 0x43f90000
......
...@@ -16,7 +16,7 @@ ...@@ -16,7 +16,7 @@
* http://www.gnu.org/copyleft/gpl.html * http://www.gnu.org/copyleft/gpl.html
*/ */
.macro addruart,rx .macro addruart, rx, tmp
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
moveq \rx, #0x80000000 @ physical base address moveq \rx, #0x80000000 @ physical base address
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册