summaryrefslogtreecommitdiff
path: root/arch/x86/lib
diff options
context:
space:
mode:
authorMasahiro Yamada <yamada.m@jp.panasonic.com>2014-03-18 16:38:13 +0900
committerTom Rini <trini@ti.com>2014-03-28 15:06:29 -0400
commit254d68b6011c33af189d006243920c296592fca7 (patch)
tree0440c4d88ef8609b5d971dc367b0b3c5fdcaaf6d /arch/x86/lib
parentb97241b3125a86b7fd77dc2357446d3346fef929 (diff)
downloadu-boot-imx-254d68b6011c33af189d006243920c296592fca7.zip
u-boot-imx-254d68b6011c33af189d006243920c296592fca7.tar.gz
u-boot-imx-254d68b6011c33af189d006243920c296592fca7.tar.bz2
kbuild: move asm-offsets.c from SoC directory to arch/$(ARCH)/lib
U-Boot has supported two kinds of asm-offsets.h. One is generic for all architectures and its source is located at ./lib/asm-offsets.c. The other is SoC specific and its source is under SoC directory. The problem here is that only boards with SoC directory can use the asm-offsets infrastructure. Putting asm-offsets.c right under CPU directory does not work. Now a new demand is coming. PowerPC folks want to use asm-offsets. But no PowerPC boards have SoC directory. It seems inconsistent that some boards add asm-offsets.c to SoC directoreis and some to CPU directories. It looks more reasonable to put asm-offsets.c under arch/$(ARCH)/lib. This commit merges asm-offsets.c under SoC directories into arch/$(ARCH)/lib/asm-offsets.c. By the way, I doubt the necessity of some entries in asm-offsets.c. I am leaving refactoring to the board maintainers. Please check "TODO" in the comment blocks in arch/{arm,nds32}/lib/asm-offsets.c. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com> Cc: Yuantian Tang <Yuantian.Tang@freescale.com>
Diffstat (limited to 'arch/x86/lib')
-rw-r--r--arch/x86/lib/asm-offsets.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/arch/x86/lib/asm-offsets.c b/arch/x86/lib/asm-offsets.c
new file mode 100644
index 0000000..d65c6ab
--- /dev/null
+++ b/arch/x86/lib/asm-offsets.c
@@ -0,0 +1,22 @@
+/*
+ * Adapted from Linux v2.6.36 kernel: arch/powerpc/kernel/asm-offsets.c
+ *
+ * This program is used to generate definitions needed by
+ * assembly language modules.
+ *
+ * We use the technique used in the OSF Mach kernel code:
+ * generate asm statements containing #defines,
+ * compile this file to assembler, and then extract the
+ * #defines from the assembly-language output.
+ *
+ * SPDX-License-Identifier: GPL-2.0+
+ */
+
+#include <common.h>
+#include <linux/kbuild.h>
+
+int main(void)
+{
+ DEFINE(GENERATED_GD_RELOC_OFF, offsetof(gd_t, reloc_off));
+ return 0;
+}