From ed980b8c62fbe17052ec6151a68b5b0be3809485 Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Fri, 4 Mar 2016 01:10:07 +0100 Subject: [PATCH] efi_loader: hook up in build environment Now that we have all the bits and pieces ready for EFI payload loading support, hook them up in Makefiles and KConfigs so that we can build. Signed-off-by: Alexander Graf Reviewed-by: Simon Glass Tested-by: Simon Glass [trini: Enable only when we of OF_LIBFDT, disable on kwb and colibri_pxa270] Signed-off-by: Tom Rini --- configs/colibri_pxa270_defconfig | 1 + configs/kwb_defconfig | 1 + lib/Kconfig | 1 + lib/Makefile | 1 + lib/efi_loader/Kconfig | 9 +++++++++ lib/efi_loader/Makefile | 12 ++++++++++++ 6 files changed, 25 insertions(+) create mode 100644 lib/efi_loader/Kconfig create mode 100644 lib/efi_loader/Makefile diff --git a/configs/colibri_pxa270_defconfig b/configs/colibri_pxa270_defconfig index 7006e8a524..d1de116783 100644 --- a/configs/colibri_pxa270_defconfig +++ b/configs/colibri_pxa270_defconfig @@ -5,3 +5,4 @@ CONFIG_TARGET_COLIBRI_PXA270=y # CONFIG_CMD_LOADS is not set # CONFIG_CMD_SETEXPR is not set CONFIG_OF_LIBFDT=y +# CONFIG_EFI_LOADER is not set diff --git a/configs/kwb_defconfig b/configs/kwb_defconfig index ce66f762ea..a5602a0c6e 100644 --- a/configs/kwb_defconfig +++ b/configs/kwb_defconfig @@ -30,3 +30,4 @@ CONFIG_OF_LIBFDT=y CONFIG_USB=y CONFIG_USB_MUSB_HOST=y CONFIG_USB_STORAGE=y +# CONFIG_EFI_LOADER is not set diff --git a/lib/Kconfig b/lib/Kconfig index 078ef5c29e..7a453362a1 100644 --- a/lib/Kconfig +++ b/lib/Kconfig @@ -149,5 +149,6 @@ config SPL_OF_LIBFDT version of the device tree. source lib/efi/Kconfig +source lib/efi_loader/Kconfig endmenu diff --git a/lib/Makefile b/lib/Makefile index d49ee62a92..02dfa29507 100644 --- a/lib/Makefile +++ b/lib/Makefile @@ -8,6 +8,7 @@ ifndef CONFIG_SPL_BUILD obj-$(CONFIG_EFI) += efi/ +obj-$(CONFIG_EFI_LOADER) += efi_loader/ obj-$(CONFIG_RSA) += rsa/ obj-$(CONFIG_LZMA) += lzma/ obj-$(CONFIG_LZO) += lzo/ diff --git a/lib/efi_loader/Kconfig b/lib/efi_loader/Kconfig new file mode 100644 index 0000000000..14c99ec9cf --- /dev/null +++ b/lib/efi_loader/Kconfig @@ -0,0 +1,9 @@ +config EFI_LOADER + bool "Support running EFI Applications in U-Boot" + depends on (ARM64 || ARM) && OF_LIBFDT + default y + help + Select this option if you want to run EFI applications (like grub2) + on top of U-Boot. If this option is enabled, U-Boot will expose EFI + interfaces to a loaded EFI application, enabling it to reuse U-Boot's + device drivers. diff --git a/lib/efi_loader/Makefile b/lib/efi_loader/Makefile new file mode 100644 index 0000000000..28725a27c7 --- /dev/null +++ b/lib/efi_loader/Makefile @@ -0,0 +1,12 @@ +# +# (C) Copyright 2016 Alexander Graf +# +# SPDX-License-Identifier: GPL-2.0+ +# + +# This file only gets included with CONFIG_EFI_LOADER set, so all +# object inclusion implicitly depends on it + +obj-y += efi_image_loader.o efi_boottime.o efi_runtime.o efi_console.o +obj-y += efi_memory.o +obj-$(CONFIG_PARTITIONS) += efi_disk.o