x86: efi: Don't set up global_data again with EFI
Since EFI does not relocate and uses the same global_data pointer
throughout the board-init process, drop this unnecessary setup, to avoid
a hang.
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
diff --git a/common/board_r.c b/common/board_r.c
index 6d52066..760c2d0 100644
--- a/common/board_r.c
+++ b/common/board_r.c
@@ -841,9 +841,8 @@
* TODO(sjg@chromium.org): Consider doing this for all archs, or
* dropping the new_gd parameter.
*/
-#if CONFIG_IS_ENABLED(X86_64)
- arch_setup_gd(new_gd);
-#endif
+ if (CONFIG_IS_ENABLED(X86_64) && !IS_ENABLED(CONFIG_EFI_APP))
+ arch_setup_gd(new_gd);
#ifdef CONFIG_NEEDS_MANUAL_RELOC
int i;