For platforms with CAR we should disable it before relocation. Check if
this function is available and call it if so.

Signed-off-by: Simon Glass <s...@chromium.org>
---

 arch/x86/cpu/start.S | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/arch/x86/cpu/start.S b/arch/x86/cpu/start.S
index 125782c..8cebde1 100644
--- a/arch/x86/cpu/start.S
+++ b/arch/x86/cpu/start.S
@@ -205,6 +205,16 @@ board_init_f_r_trampoline:
        /* Setup global descriptor table so gd->xyz works */
        call    setup_gdt
 
+       /* Set if we need to disable CAR */
+       movl    $car_uninit, %eax
+       cmpl    $0, %eax
+       jz      car_ret
+
+       /* Pass return address in ebx */
+.weak  car_uninit
+       movl    $car_ret, %ebx
+       jmp     car_uninit
+car_ret:
        /* Re-enter U-Boot by calling board_init_f_r */
        call    board_init_f_r
 
-- 
2.2.0.rc0.207.ga3a616c

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to