[U-Boot] [RFC PATCH 18/19] Bring in x86 to unified board architecture

Simon Glass sjg at chromium.org
Wed Dec 28 07:35:59 CET 2011


Signed-off-by: Simon Glass <sjg at chromium.org>
---
 arch/x86/config.mk                 |    6 ------
 arch/x86/include/asm/global_data.h |    6 ++++++
 arch/x86/lib/Makefile              |    2 ++
 common/board_r.c                   |    3 +++
 4 files changed, 11 insertions(+), 6 deletions(-)

diff --git a/arch/x86/config.mk b/arch/x86/config.mk
index cb8865a..23cacff 100644
--- a/arch/x86/config.mk
+++ b/arch/x86/config.mk
@@ -48,9 +48,3 @@ NORMAL_LIBGCC = $(shell $(CC) $(CFLAGS) -print-libgcc-file-name)
 PREFIXED_LIBGCC = $(OBJTREE)/arch/$(ARCH)/lib/$(shell basename $(NORMAL_LIBGCC))
 
 export USE_PRIVATE_LIBGCC=$(shell dirname $(PREFIXED_LIBGCC))
-
-# We use legacy relocation for now
-CONFIG_SYS_SKIP_RELOC := y
-
-# Move to unified board system later
-CONFIG_SYS_LEGACY_BOARD := y
diff --git a/arch/x86/include/asm/global_data.h b/arch/x86/include/asm/global_data.h
index 05a2139..d68447a 100644
--- a/arch/x86/include/asm/global_data.h
+++ b/arch/x86/include/asm/global_data.h
@@ -23,6 +23,8 @@
 
 #ifndef	__ASM_GBL_DATA_H
 #define __ASM_GBL_DATA_H
+
+#ifdef CONFIG_LEGACY_BOARD
 /*
  * The following data structure is placed in some memory wich is
  * available very early after boot (like DPRAM on MPC8xx/MPC82xx, or
@@ -81,4 +83,8 @@ extern gd_t *gd;
 gd_t *gd
 #endif
 
+#else /* CONFIG_SYS_LEGACY_BOARD */
+#include <asm-generic/global_data.h>
+#endif
+
 #endif /* __ASM_GBL_DATA_H */
diff --git a/arch/x86/lib/Makefile b/arch/x86/lib/Makefile
index ff5a864..6c1cd64 100644
--- a/arch/x86/lib/Makefile
+++ b/arch/x86/lib/Makefile
@@ -31,7 +31,9 @@ SOBJS-y += proc.o
 SOBJS-$(CONFIG_SYS_X86_REALMODE)	+= realmode_switch.o
 
 COBJS-$(CONFIG_SYS_PC_BIOS)	+= bios_setup.o
+ifeq ($(CONFIG_SYS_LEGACY_BOARD),y)
 COBJS-y	+= board.o
+endif
 COBJS-y	+= bootm.o
 COBJS-y	+= gcc.o
 COBJS-y	+= interrupts.o
diff --git a/common/board_r.c b/common/board_r.c
index bd656bd..2a01c3a 100644
--- a/common/board_r.c
+++ b/common/board_r.c
@@ -54,8 +54,11 @@ static int initr_reloc(void)
  */
 static int initr_caches(void)
 {
+	/* TODO: sort out x86 code here */
+#ifndef CONFIG_X86
 	/* Enable caches */
 	enable_caches();
+#endif
 	return 0;
 }
 
-- 
1.7.3.1



More information about the U-Boot mailing list