[ARM] 3060/1: allow constants found in asm/memory.h to be used in asm code
authorNicolas Pitre <nico@cam.org>
Sat, 29 Oct 2005 20:44:55 +0000 (21:44 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Sat, 29 Oct 2005 20:44:55 +0000 (21:44 +0100)
Patch from Nicolas Pitre

This patch allows for assorted type of cleanups by letting assembly code
use the same set of defines for constant values and avoid duplicated
definitions that might not always be in sync, or that might simply be
confusing due to the different names for the same thing.

Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
25 files changed:
arch/arm/kernel/asm-offsets.c
arch/arm/kernel/entry-armv.S
arch/arm/kernel/head.S
include/asm-arm/arch-aaec2000/memory.h
include/asm-arm/arch-cl7500/memory.h
include/asm-arm/arch-clps711x/memory.h
include/asm-arm/arch-ebsa110/memory.h
include/asm-arm/arch-ebsa285/memory.h
include/asm-arm/arch-epxa10db/memory.h
include/asm-arm/arch-h720x/memory.h
include/asm-arm/arch-imx/memory.h
include/asm-arm/arch-integrator/memory.h
include/asm-arm/arch-iop3xx/memory.h
include/asm-arm/arch-ixp2000/memory.h
include/asm-arm/arch-ixp4xx/memory.h
include/asm-arm/arch-l7200/memory.h
include/asm-arm/arch-lh7a40x/memory.h
include/asm-arm/arch-omap/memory.h
include/asm-arm/arch-pxa/memory.h
include/asm-arm/arch-rpc/memory.h
include/asm-arm/arch-s3c2410/memory.h
include/asm-arm/arch-sa1100/memory.h
include/asm-arm/arch-shark/memory.h
include/asm-arm/arch-versatile/memory.h
include/asm-arm/memory.h

index c1ff4d1..04d3082 100644 (file)
@@ -94,7 +94,6 @@ int main(void)
   DEFINE(VM_EXEC,              VM_EXEC);
   BLANK();
   DEFINE(PAGE_SZ,              PAGE_SIZE);
-  DEFINE(VIRT_OFFSET,          PAGE_OFFSET);
   BLANK();
   DEFINE(SYS_ERROR0,           0x9f0000);
   BLANK();
index 93b5e8e..be439ca 100644 (file)
@@ -15,6 +15,7 @@
  */
 #include <linux/config.h>
 
+#include <asm/memory.h>
 #include <asm/glue.h>
 #include <asm/vfpmacros.h>
 #include <asm/hardware.h>              /* should be moved into entry-macro.S */
@@ -310,7 +311,7 @@ __pabt_svc:
 
 #if __LINUX_ARM_ARCH__ < 6 && !defined(CONFIG_NEEDS_SYSCALL_FOR_CMPXCHG)
        @ make sure our user space atomic helper is aborted
-       cmp     r2, #VIRT_OFFSET
+       cmp     r2, #TASK_SIZE
        bichs   r3, r3, #PSR_Z_BIT
 #endif
 
index 5396263..dd5d0f0 100644 (file)
@@ -21,6 +21,7 @@
 #include <asm/procinfo.h>
 #include <asm/ptrace.h>
 #include <asm/asm-offsets.h>
+#include <asm/memory.h>
 #include <asm/thread_info.h>
 #include <asm/system.h>
 
@@ -76,7 +77,7 @@
        .equ    swapper_pg_dir, DATAADDR - 0x4000
 
        .macro  pgtbl, rd, phys
-       ldr     \rd, =((DATAADDR - 0x4000) - VIRT_OFFSET)
+       ldr     \rd, =((DATAADDR - 0x4000) - PAGE_OFFSET)
        add     \rd, \rd, \phys
        .endm
 #endif
@@ -324,7 +325,7 @@ __create_page_tables:
        /*
         * Then map first 1MB of ram in case it contains our boot params.
         */
-       add     r0, r4, #VIRT_OFFSET >> 18
+       add     r0, r4, #PAGE_OFFSET >> 18
        orr     r6, r5, r7
        str     r6, [r0]
 
index 79c9081..d8209f8 100644 (file)
@@ -13,7 +13,7 @@
 
 #include <linux/config.h>
 
-#define PHYS_OFFSET    (0xf0000000UL)
+#define PHYS_OFFSET    UL(0xf0000000)
 
 #define __virt_to_bus(x)       __virt_to_phys(x)
 #define __bus_to_virt(x)       __phys_to_virt(x)
index 9776bba..34f40a6 100644 (file)
@@ -17,7 +17,7 @@
 /*
  * Physical DRAM offset.
  */
-#define PHYS_OFFSET    (0x10000000UL)
+#define PHYS_OFFSET    UL(0x10000000)
 
 /*
  * These are exactly the same on the RiscPC as the
index bd97894..61d8717 100644 (file)
@@ -25,7 +25,7 @@
 /*
  * Physical DRAM offset.
  */
-#define PHYS_OFFSET    (0xc0000000UL)
+#define PHYS_OFFSET    UL(0xc0000000)
 
 /*
  * Virtual view <-> DMA view memory address translations
index 5a9493e..02f1445 100644 (file)
@@ -19,7 +19,7 @@
 /*
  * Physical DRAM offset.
  */
-#define PHYS_OFFSET    (0x00000000UL)
+#define PHYS_OFFSET    UL(0x00000000)
 
 /*
  * We keep this 1:1 so that we don't interfere
index d0466f9..09e335c 100644 (file)
@@ -46,14 +46,14 @@ extern unsigned long __bus_to_virt(unsigned long);
 #if defined(CONFIG_ARCH_FOOTBRIDGE)
 
 /* Task size and page offset at 3GB */
-#define TASK_SIZE              (0xbf000000UL)
-#define PAGE_OFFSET            (0xc0000000UL)
+#define TASK_SIZE              UL(0xbf000000)
+#define PAGE_OFFSET            UL(0xc0000000)
 
 #elif defined(CONFIG_ARCH_CO285)
 
 /* Task size and page offset at 1.5GB */
-#define TASK_SIZE              (0x5f000000UL)
-#define PAGE_OFFSET            (0x60000000UL)
+#define TASK_SIZE              UL(0x5f000000)
+#define PAGE_OFFSET            UL(0x60000000)
 
 #else
 
@@ -64,7 +64,7 @@ extern unsigned long __bus_to_virt(unsigned long);
 /*
  * Physical DRAM offset.
  */
-#define PHYS_OFFSET            (0x00000000UL)
+#define PHYS_OFFSET            UL(0x00000000)
 
 /*
  * This decides where the kernel will search for a free chunk of vm
index 3f86bf7..999541b 100644 (file)
@@ -23,7 +23,7 @@
 /*
  * Physical DRAM offset.
  */
-#define PHYS_OFFSET    (0x00000000UL)
+#define PHYS_OFFSET    UL(0x00000000)
 
 /*
  * Virtual view <-> DMA view memory address translations
index 5633447..4a1bfd7 100644 (file)
@@ -11,7 +11,7 @@
  * Page offset:
  *    ( 0xc0000000UL )
  */
-#define PHYS_OFFSET    (0x40000000UL)
+#define PHYS_OFFSET    UL(0x40000000)
 
 /*
  * Virtual view <-> DMA view memory address translations
index 116a91f..d09ae32 100644 (file)
@@ -21,7 +21,7 @@
 #ifndef __ASM_ARCH_MMU_H
 #define __ASM_ARCH_MMU_H
 
-#define PHYS_OFFSET    (0x08000000UL)
+#define PHYS_OFFSET    UL(0x08000000)
 
 /*
  * Virtual view <-> DMA view memory address translations
index 2087ea7..1ab56d7 100644 (file)
@@ -23,8 +23,8 @@
 /*
  * Physical DRAM offset.
  */
-#define PHYS_OFFSET    (0x00000000UL)
-#define BUS_OFFSET     (0x80000000UL)
+#define PHYS_OFFSET    UL(0x00000000)
+#define BUS_OFFSET     UL(0x80000000)
 
 /*
  * Virtual view <-> DMA view memory address translations
index 45351f5..bc62f4b 100644 (file)
@@ -12,9 +12,9 @@
  * Physical DRAM offset.
  */
 #ifndef CONFIG_ARCH_IOP331
-#define PHYS_OFFSET    (0xa0000000UL)
+#define PHYS_OFFSET    UL(0xa0000000)
 #else
-#define PHYS_OFFSET    (0x00000000UL)
+#define PHYS_OFFSET    UL(0x00000000)
 #endif
 
 /*
index d0f415c..21e1de5 100644 (file)
@@ -13,7 +13,7 @@
 #ifndef __ASM_ARCH_MEMORY_H
 #define __ASM_ARCH_MEMORY_H
 
-#define PHYS_OFFSET    (0x00000000UL)
+#define PHYS_OFFSET    UL(0x00000000)
 
 /*
  * Virtual view <-> DMA view memory address translations
index d348548..e024d0a 100644 (file)
@@ -12,7 +12,7 @@
 /*
  * Physical DRAM offset.
  */
-#define PHYS_OFFSET    (0x00000000UL)
+#define PHYS_OFFSET    UL(0x00000000)
 
 #ifndef __ASSEMBLY__
 
index c5b9608..9e50a17 100644 (file)
@@ -15,7 +15,7 @@
 /*
  * Physical DRAM offset on the L7200 SDB.
  */
-#define PHYS_OFFSET     (0xf0000000UL)
+#define PHYS_OFFSET     UL(0xf0000000)
 
 #define __virt_to_bus(x) __virt_to_phys(x)
 #define __bus_to_virt(x) __phys_to_virt(x)
index c650e6f..c92bcb8 100644 (file)
@@ -17,7 +17,7 @@
 /*
  * Physical DRAM offset.
  */
-#define PHYS_OFFSET    (0xc0000000UL)
+#define PHYS_OFFSET    UL(0xc0000000)
 
 /*
  * Virtual view <-> DMA view memory address translations
index ef32d61..bf545b6 100644 (file)
@@ -37,9 +37,9 @@
  * Physical DRAM offset.
  */
 #if defined(CONFIG_ARCH_OMAP1)
-#define PHYS_OFFSET            (0x10000000UL)
+#define PHYS_OFFSET            UL(0x10000000)
 #elif defined(CONFIG_ARCH_OMAP2)
-#define PHYS_OFFSET            (0x80000000UL)
+#define PHYS_OFFSET            UL(0x80000000)
 #endif
 
 /*
@@ -66,7 +66,7 @@
 /*
  * OMAP-1510 Local Bus address offset
  */
-#define OMAP1510_LB_OFFSET     (0x30000000UL)
+#define OMAP1510_LB_OFFSET     UL(0x30000000)
 
 #define virt_to_lbus(x)                ((x) - PAGE_OFFSET + OMAP1510_LB_OFFSET)
 #define lbus_to_virt(x)                ((x) - OMAP1510_LB_OFFSET + PAGE_OFFSET)
index 58bad97..eaf6d43 100644 (file)
@@ -15,7 +15,7 @@
 /*
  * Physical DRAM offset.
  */
-#define PHYS_OFFSET    (0xa0000000UL)
+#define PHYS_OFFSET    UL(0xa0000000)
 
 /*
  * Virtual view <-> DMA view memory address translations
index 33fc75c..0592cb3 100644 (file)
@@ -21,7 +21,7 @@
 /*
  * Physical DRAM offset.
  */
-#define PHYS_OFFSET    (0x10000000UL)
+#define PHYS_OFFSET    UL(0x10000000)
 
 /*
  * These are exactly the same on the RiscPC as the
index 3380ab1..6ab834a 100644 (file)
@@ -28,9 +28,9 @@
  * and at 0x0C000000 for S3C2400
  */
 #ifdef CONFIG_CPU_S3C2400
-#define PHYS_OFFSET    (0x0C000000UL)
+#define PHYS_OFFSET    UL(0x0C000000)
 #else
-#define PHYS_OFFSET    (0x30000000UL)
+#define PHYS_OFFSET    UL(0x30000000)
 #endif
 
 /*
index 8743ff5..0fc555b 100644 (file)
@@ -13,7 +13,7 @@
 /*
  * Physical DRAM offset is 0xc0000000 on the SA1100
  */
-#define PHYS_OFFSET    (0xc0000000UL)
+#define PHYS_OFFSET    UL(0xc0000000)
 
 #ifndef __ASSEMBLY__
 
index 8ff956d..95a29b4 100644 (file)
@@ -15,7 +15,7 @@
 /*
  * Physical DRAM offset.
  */
-#define PHYS_OFFSET     (0x08000000UL)
+#define PHYS_OFFSET     UL(0x08000000)
 
 #ifndef __ASSEMBLY__
 
index 7b8b7cc..a937097 100644 (file)
@@ -23,7 +23,7 @@
 /*
  * Physical DRAM offset.
  */
-#define PHYS_OFFSET    (0x00000000UL)
+#define PHYS_OFFSET    UL(0x00000000)
 
 /*
  * Virtual view <-> DMA view memory address translations
index a8a933a..bee10fc 100644 (file)
 #ifndef __ASM_ARM_MEMORY_H
 #define __ASM_ARM_MEMORY_H
 
+/*
+ * Allow for constants defined here to be used from assembly code
+ * by prepending the UL suffix only with actual C code compilation.
+ */
+#ifndef __ASSEMBLY__
+#define UL(x) (x##UL)
+#else
+#define UL(x) (x)
+#endif
+
 #include <linux/config.h>
 #include <linux/compiler.h>
 #include <asm/arch/memory.h>
  * TASK_SIZE - the maximum size of a user space task.
  * TASK_UNMAPPED_BASE - the lower boundary of the mmap VM area
  */
-#define TASK_SIZE              (0xbf000000UL)
-#define TASK_UNMAPPED_BASE     (0x40000000UL)
+#define TASK_SIZE              UL(0xbf000000)
+#define TASK_UNMAPPED_BASE     UL(0x40000000)
 #endif
 
 /*
  * The maximum size of a 26-bit user space task.
  */
-#define TASK_SIZE_26           (0x04000000UL)
+#define TASK_SIZE_26           UL(0x04000000)
 
 /*
  * Page offset: 3GB
  */
 #ifndef PAGE_OFFSET
-#define PAGE_OFFSET            (0xc0000000UL)
+#define PAGE_OFFSET            UL(0xc0000000)
 #endif
 
 /*