Hi Bin, On 30 December 2014 at 23:21, Bin Meng <bmeng...@gmail.com> wrote: > Hi Simon, > > On Sun, Dec 28, 2014 at 10:20 AM, Simon Glass <s...@chromium.org> wrote: >> 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 > > Can we use 'call' here instead of jmp and %ebx as the return address?
Yes let's do that. The stack must be working so we might as well use it. > >> +car_ret: > > car_uninit_ret > OK >> /* Re-enter U-Boot by calling board_init_f_r */ >> call board_init_f_r Regards, Simon _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot