summaryrefslogtreecommitdiff
path: root/arch/x86
diff options
context:
space:
mode:
authorStefan Reinauer <reinauer@chromium.org>2012-10-23 18:04:37 +0000
committerSimon Glass <sjg@chromium.org>2012-12-06 14:30:39 -0800
commit61e0ea900a3741920f7a74017a23e34bc13bd599 (patch)
tree0a800a2d6e2e27e7caddd1bb299b329205208a28 /arch/x86
parent095593c0301399ae834050e2008862451a72b8b0 (diff)
x86: Provide a function to clean up just before booting a zimage
This function can be used by boards which want to do some clean-up before booting a zImage. Signed-off-by: Stefan Reinauer <reinauer@chromium.org> Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'arch/x86')
-rw-r--r--arch/x86/lib/zimage.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/arch/x86/lib/zimage.c b/arch/x86/lib/zimage.c
index 238ed614e8..1236d220ca 100644
--- a/arch/x86/lib/zimage.c
+++ b/arch/x86/lib/zimage.c
@@ -39,6 +39,7 @@
#ifdef CONFIG_SYS_COREBOOT
#include <asm/arch/timestamp.h>
#endif
+#include <linux/compiler.h>
/*
* Memory lay-out:
@@ -282,8 +283,18 @@ int setup_zimage(struct boot_params *setup_base, char *cmd_line, int auto_boot,
return 0;
}
+/*
+ * Implement a weak default function for boards that optionally
+ * need to clean up the system before jumping to the kernel.
+ */
+__weak void board_final_cleanup(void)
+{
+}
+
void boot_zimage(void *setup_base, void *load_address)
{
+ board_final_cleanup();
+
printf("\nStarting kernel ...\n\n");
#ifdef CONFIG_SYS_COREBOOT