From e0effffc365d1dd3018091f421e0a83d63eb9eda Mon Sep 17 00:00:00 2001 From: Bin Meng Date: Thu, 20 Aug 2015 06:40:20 -0700 Subject: [PATCH] x86: fsp: Add comments about U-Boot entering start.S twice Add some comments in start.S for the fact that with FSP U-Boot actually enters the code twice. Also change to use fsp_init() and fsp_continue for accuracy. Signed-off-by: Bin Meng Acked-by: Simon Glass --- arch/x86/Kconfig | 2 +- arch/x86/cpu/start.S | 6 ++++-- arch/x86/lib/fsp/fsp_car.S | 2 +- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index 687208fb30..273f08f52d 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig @@ -229,7 +229,7 @@ config FSP_TEMP_RAM_ADDR depends on HAVE_FSP default 0x2000000 help - Stack top address which is used in FspInit after DRAM is ready and + Stack top address which is used in fsp_init() after DRAM is ready and CAR is disabled. config FSP_SYS_MALLOC_F_LEN diff --git a/arch/x86/cpu/start.S b/arch/x86/cpu/start.S index e2b5ef4b74..d072825bcd 100644 --- a/arch/x86/cpu/start.S +++ b/arch/x86/cpu/start.S @@ -115,8 +115,10 @@ car_init_ret: #endif #else /* - * When we get here after car_init(), esp points to a temporary stack - * and esi holds the HOB list address returned by the FSP. + * U-Boot enters here twice. For the first time it comes from + * car_init_done() with esp points to a temporary stack and esi + * set to zero. For the second time it comes from fsp_init_done() + * with esi holding the HOB list address returned by the FSP. */ #endif /* Set up global data */ diff --git a/arch/x86/lib/fsp/fsp_car.S b/arch/x86/lib/fsp/fsp_car.S index afbf3f9baa..15b37512a5 100644 --- a/arch/x86/lib/fsp/fsp_car.S +++ b/arch/x86/lib/fsp/fsp_car.S @@ -64,7 +64,7 @@ temp_ram_init_ret: .global fsp_init_done fsp_init_done: /* - * We come here from FspInit with eax pointing to the HOB list. + * We come here from fsp_continue() with eax pointing to the HOB list. * Save eax to esi temporarily. */ movl %eax, %esi -- 2.39.2