X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=arch%2Fx86%2Fcpu%2Fstart.S;h=00e585e19bfccdd4e0465c9575b98d137fc811b4;hb=605e15db2b54302364a2528d3c6604fbc57be846;hp=125782cf2796768bf281dc204f75355686b7827c;hpb=b9206e61f3d87535ac4f4b0b858e674fd1edfeaf;p=oweals%2Fu-boot.git diff --git a/arch/x86/cpu/start.S b/arch/x86/cpu/start.S index 125782cf27..00e585e19b 100644 --- a/arch/x86/cpu/start.S +++ b/arch/x86/cpu/start.S @@ -11,7 +11,6 @@ */ #include -#include #include #include #include @@ -117,12 +116,16 @@ car_init_ret: rep stosb #ifdef CONFIG_HAVE_FSP + test %esi, %esi + jz skip_hob + /* Store HOB list */ movl %esp, %edx addl $GD_HOB_LIST, %edx movl %esi, (%edx) -#endif +skip_hob: +#endif /* Setup first parameter to setup_gdt, pointer to global_data */ movl %esp, %eax @@ -205,6 +208,14 @@ board_init_f_r_trampoline: /* Setup global descriptor table so gd->xyz works */ call setup_gdt + /* Set if we need to disable CAR */ +.weak car_uninit + movl $car_uninit, %eax + cmpl $0, %eax + jz 1f + + call car_uninit +1: /* Re-enter U-Boot by calling board_init_f_r */ call board_init_f_r