[U-Boot,06/12] x86: Add a default implementation for cleanup_before_linux()

Message ID 1350772396-28946-7-git-send-email-sjg@chromium.org
State Accepted, archived
Delegated to: Simon Glass
Headers show

Commit Message

Simon Glass Oct. 20, 2012, 10:33 p.m.
From: Gabe Black <gabeblack@chromium.org>

This function provides an opportunity for some last minute cleanup and
reconfiguration before control is handed over to Linux. It's possible this
may need to do something in the future, but for now it's left empty. It's set
up as a weak symbol so it can be overridden if necessary on a case by case

Signed-off-by: Gabe Black <gabeblack@chromium.org>
Signed-off-by: Simon Glass <sjg@chromium.org>
 arch/x86/cpu/cpu.c                |    5 +++++
 arch/x86/include/asm/u-boot-x86.h |    1 +
 2 files changed, 6 insertions(+), 0 deletions(-)


diff --git a/arch/x86/cpu/cpu.c b/arch/x86/cpu/cpu.c
index e9bb0d7..e8bfe6f 100644
--- a/arch/x86/cpu/cpu.c
+++ b/arch/x86/cpu/cpu.c
@@ -121,6 +121,11 @@  void setup_gdt(gd_t *id, u64 *gdt_addr)
+int __weak x86_cleanup_before_linux(void)
+	return 0;
 int x86_cpu_init_f(void)
 	const u32 em_rst = ~X86_CR0_EM;
diff --git a/arch/x86/include/asm/u-boot-x86.h b/arch/x86/include/asm/u-boot-x86.h
index 878a1ee..a4a5ae0 100644
--- a/arch/x86/include/asm/u-boot-x86.h
+++ b/arch/x86/include/asm/u-boot-x86.h
@@ -40,6 +40,7 @@  int cpu_init_f(void);
 void init_gd(gd_t *id, u64 *gdt_addr);
 void setup_gdt(gd_t *id, u64 *gdt_addr);
 int init_cache(void);
+int cleanup_before_linux(void);
 /* cpu/.../timer.c */
 void timer_isr(void *);