[U-Boot] [PATCH 3/8] dm: x86: Zero global data before board_init_f()
Simon Glass
sjg at chromium.org
Fri Oct 10 15:49:15 CEST 2014
To permit information to be passed from the early U-Boot code to
board_init_f() we cannot zero the global_data in board_init_f(). Instead
zero it in the start-up code.
Signed-off-by: Simon Glass <sjg at chromium.org>
---
arch/x86/cpu/start.S | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/arch/x86/cpu/start.S b/arch/x86/cpu/start.S
index 329bb3a..71cab22 100644
--- a/arch/x86/cpu/start.S
+++ b/arch/x86/cpu/start.S
@@ -85,6 +85,12 @@ car_init_ret:
/* Align global data to 16-byte boundary */
andl $0xfffffff0, %esp
+ /* Zero the global data since it won't happen later */
+ xorl %eax, %eax
+ movl $GENERATED_GBL_DATA_SIZE, %ecx
+ movl %esp, %edi
+ rep stosb
+
/* Setup first parameter to setup_gdt */
movl %esp, %eax
--
2.1.0.rc2.206.gedb03e5
More information about the U-Boot
mailing list