[CRIS] Merge asm-offsets.c for both arches into one file.
authorJesper Nilsson <jesper.nilsson@axis.com>
Tue, 21 Oct 2008 20:10:27 +0000 (22:10 +0200)
committerJesper Nilsson <jesper.nilsson@axis.com>
Fri, 31 Oct 2008 22:37:00 +0000 (23:37 +0100)
Eliminates the link to arch specific asm-offsets.c from CRIS
architecture build system.

Resulting asm-offsets.s are identical before and after change
for both arch-v10 and arch-v32.

Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
Acked-by: Sam Ravnborg <sam@ravnborg.org>
arch/cris/Makefile
arch/cris/arch-v10/kernel/asm-offsets.c [deleted file]
arch/cris/arch-v32/kernel/asm-offsets.c [deleted file]
arch/cris/kernel/asm-offsets.c [new file with mode: 0644]

index 22825a7bbe57379b6102f8a785089084133ca783..241e35bc3b59087e21cd07856364f03cd64a1de6 100644 (file)
@@ -95,8 +95,6 @@ ifdef CONFIG_ETRAX_ARCH_V32
 endif
        @rm -rf $(SRC_ARCH)/kernel/vmlinux.lds.S
        @ln -sfn ../$(SARCH)/vmlinux.lds.S $(SRC_ARCH)/kernel/vmlinux.lds.S
-       @rm -rf $(SRC_ARCH)/kernel/asm-offsets.c
-       @ln -sfn ../$(SARCH)/kernel/asm-offsets.c $(SRC_ARCH)/kernel/asm-offsets.c
        @touch $@
 
 archclean:
@@ -116,8 +114,8 @@ MRPROPER_FILES += \
        $(SRC_ARCH)/boot \
        $(SRC_ARCH)/lib \
        $(SRC_ARCH)/arch \
-       $(SRC_ARCH)/kernel/vmlinux.lds.S \
-       $(SRC_ARCH)/kernel/asm-offsets.c
+       $(SRC_ARCH)/kernel/vmlinux.lds.S
+
 
 define archhelp
   echo  '* zImage        - Compressed kernel image (arch/$(ARCH)/boot/zImage)'
diff --git a/arch/cris/arch-v10/kernel/asm-offsets.c b/arch/cris/arch-v10/kernel/asm-offsets.c
deleted file mode 100644 (file)
index 1aa3cc4..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-#include <linux/sched.h>
-#include <asm/thread_info.h>
-
-/*
- * Generate definitions needed by assembly language modules.
- * This code generates raw asm output which is post-processed to extract
- * and format the required data.
- */
-
-#define DEFINE(sym, val) \
-        asm volatile("\n->" #sym " %0 " #val : : "i" (val))
-
-#define BLANK() asm volatile("\n->" : : )
-
-int main(void)
-{
-#define ENTRY(entry) DEFINE(PT_ ## entry, offsetof(struct pt_regs, entry))
-       ENTRY(orig_r10);
-       ENTRY(r13); 
-       ENTRY(r12); 
-       ENTRY(r11);
-        ENTRY(r10);
-        ENTRY(r9);
-        ENTRY(mof);
-        ENTRY(dccr);
-        ENTRY(srp);
-       BLANK();
-#undef ENTRY
-#define ENTRY(entry) DEFINE(TI_ ## entry, offsetof(struct thread_info, entry))
-        ENTRY(task);
-        ENTRY(flags);
-        ENTRY(preempt_count);
-        BLANK();
-#undef ENTRY
-#define ENTRY(entry) DEFINE(THREAD_ ## entry, offsetof(struct thread_struct, entry))
-       ENTRY(ksp);
-        ENTRY(usp);
-        ENTRY(dccr);
-        BLANK();
-#undef ENTRY
-#define ENTRY(entry) DEFINE(TASK_ ## entry, offsetof(struct task_struct, entry))
-        ENTRY(pid);
-        BLANK();
-        DEFINE(LCLONE_VM, CLONE_VM);
-        DEFINE(LCLONE_UNTRACED, CLONE_UNTRACED);
-        return 0;
-}
diff --git a/arch/cris/arch-v32/kernel/asm-offsets.c b/arch/cris/arch-v32/kernel/asm-offsets.c
deleted file mode 100644 (file)
index 15b3d93..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-#include <linux/sched.h>
-#include <asm/thread_info.h>
-
-/*
- * Generate definitions needed by assembly language modules.
- * This code generates raw asm output which is post-processed to extract
- * and format the required data.
- */
-
-#define DEFINE(sym, val) \
-        asm volatile("\n->" #sym " %0 " #val : : "i" (val))
-
-#define BLANK() asm volatile("\n->" : : )
-
-int main(void)
-{
-#define ENTRY(entry) DEFINE(PT_ ## entry, offsetof(struct pt_regs, entry))
-       ENTRY(orig_r10);
-       ENTRY(r13);
-       ENTRY(r12);
-       ENTRY(r11);
-        ENTRY(r10);
-        ENTRY(r9);
-       ENTRY(acr);
-       ENTRY(srs);
-        ENTRY(mof);
-        ENTRY(ccs);
-        ENTRY(srp);
-       BLANK();
-#undef ENTRY
-#define ENTRY(entry) DEFINE(TI_ ## entry, offsetof(struct thread_info, entry))
-        ENTRY(task);
-        ENTRY(flags);
-        ENTRY(preempt_count);
-        BLANK();
-#undef ENTRY
-#define ENTRY(entry) DEFINE(THREAD_ ## entry, offsetof(struct thread_struct, entry))
-       ENTRY(ksp);
-        ENTRY(usp);
-        ENTRY(ccs);
-        BLANK();
-#undef ENTRY
-#define ENTRY(entry) DEFINE(TASK_ ## entry, offsetof(struct task_struct, entry))
-        ENTRY(pid);
-        BLANK();
-        DEFINE(LCLONE_VM, CLONE_VM);
-        DEFINE(LCLONE_UNTRACED, CLONE_UNTRACED);
-        return 0;
-}
diff --git a/arch/cris/kernel/asm-offsets.c b/arch/cris/kernel/asm-offsets.c
new file mode 100644 (file)
index 0000000..ddd6fbb
--- /dev/null
@@ -0,0 +1,64 @@
+#include <linux/sched.h>
+#include <asm/thread_info.h>
+#include <linux/autoconf.h>
+
+/*
+ * Generate definitions needed by assembly language modules.
+ * This code generates raw asm output which is post-processed to extract
+ * and format the required data.
+ */
+
+#define DEFINE(sym, val) \
+       asm volatile("\n->" #sym " %0 " #val : : "i" (val))
+
+#define BLANK() asm volatile("\n->" : : )
+
+#if !defined(CONFIG_ETRAX_ARCH_V10) && !defined(CONFIG_ETRAX_ARCH_V32)
+#error One of ARCH v10 and ARCH v32 must be true!
+#endif
+
+int main(void)
+{
+#define ENTRY(entry) DEFINE(PT_ ## entry, offsetof(struct pt_regs, entry))
+       ENTRY(orig_r10);
+       ENTRY(r13);
+       ENTRY(r12);
+       ENTRY(r11);
+       ENTRY(r10);
+       ENTRY(r9);
+#ifdef CONFIG_ETRAX_ARCH_V32
+       ENTRY(acr);
+       ENTRY(srs);
+#endif
+       ENTRY(mof);
+#ifdef CONFIG_ETRAX_ARCH_V10
+       ENTRY(dccr);
+#else
+       ENTRY(ccs);
+#endif
+       ENTRY(srp);
+       BLANK();
+#undef ENTRY
+#define ENTRY(entry) DEFINE(TI_ ## entry, offsetof(struct thread_info, entry))
+       ENTRY(task);
+       ENTRY(flags);
+       ENTRY(preempt_count);
+       BLANK();
+#undef ENTRY
+#define ENTRY(entry) DEFINE(THREAD_ ## entry, offsetof(struct thread_struct, entry))
+       ENTRY(ksp);
+       ENTRY(usp);
+#ifdef CONFIG_ETRAX_ARCH_V10
+       ENTRY(dccr);
+#else
+       ENTRY(ccs);
+#endif
+       BLANK();
+#undef ENTRY
+#define ENTRY(entry) DEFINE(TASK_ ## entry, offsetof(struct task_struct, entry))
+       ENTRY(pid);
+       BLANK();
+       DEFINE(LCLONE_VM, CLONE_VM);
+       DEFINE(LCLONE_UNTRACED, CLONE_UNTRACED);
+       return 0;
+}