From 58ad86288fd32f1f969ac654f2074c090f0abe32 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Mon, 7 Nov 2016 08:47:16 -0700 Subject: [PATCH] x86: Enable EFI loader support Enable this so that EFI applications (notably grub) can be run under U-Boot on x86 platforms. At present the 'hello world' EFI application is not supported for the qemu-x86_efi_payload64 board. That board builds a payload consisting of a 64-bit header and a 32-bit U-Boot, which is incompatible with the way the EFI loader builds its EFI application. The following error is obtained: x86_64-linux-ld.bfd: i386 architecture of input file `lib/efi_loader/helloworld.o' is incompatible with i386:x86-64 output This could be corrected with additional Makefile rules. For now, this feature is disabled for that board. Signed-off-by: Simon Glass Reviewed-by: Bin Meng [agraf: drop hello kconfig bits] Signed-off-by: Alexander Graf --- configs/efi-x86_defconfig | 1 + doc/README.x86 | 1 - lib/efi_loader/Kconfig | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) diff --git a/configs/efi-x86_defconfig b/configs/efi-x86_defconfig index b31c73b71e..1fe6142864 100644 --- a/configs/efi-x86_defconfig +++ b/configs/efi-x86_defconfig @@ -34,3 +34,4 @@ CONFIG_USB=y CONFIG_USB_STORAGE=y CONFIG_USB_KEYBOARD=y CONFIG_EFI=y +# CONFIG_EFI_LOADER is not set diff --git a/doc/README.x86 b/doc/README.x86 index 679955983b..a38cc1bc6c 100644 --- a/doc/README.x86 +++ b/doc/README.x86 @@ -1077,7 +1077,6 @@ TODO List --------- - Audio - Chrome OS verified boot -- Support for CONFIG_EFI_LOADER - Building U-Boot to run in 64-bit mode References diff --git a/lib/efi_loader/Kconfig b/lib/efi_loader/Kconfig index 7d4106e4c9..d2b6327119 100644 --- a/lib/efi_loader/Kconfig +++ b/lib/efi_loader/Kconfig @@ -1,6 +1,6 @@ config EFI_LOADER bool "Support running EFI Applications in U-Boot" - depends on ARM && OF_LIBFDT + depends on (ARM || X86) && OF_LIBFDT default y help Select this option if you want to run EFI applications (like grub2) -- 2.39.5