summaryrefslogtreecommitdiffstats
path: root/payloads/external
diff options
context:
space:
mode:
Diffstat (limited to 'payloads/external')
-rw-r--r--payloads/external/Makefile.inc3
-rw-r--r--payloads/external/edk2/Kconfig14
-rw-r--r--payloads/external/edk2/Makefile13
3 files changed, 29 insertions, 1 deletions
diff --git a/payloads/external/Makefile.inc b/payloads/external/Makefile.inc
index ec02957b87ff..60af577fc35d 100644
--- a/payloads/external/Makefile.inc
+++ b/payloads/external/Makefile.inc
@@ -189,6 +189,9 @@ $(obj)/UEFIPAYLOAD.fd: $(DOTCONFIG)
CONFIG_CPU_XTAL_HZ=$(CONFIG_CPU_XTAL_HZ) \
CONFIG_SMMSTORE_V2=$(CONFIG_SMMSTORE_V2) \
CONFIG_EDK2_SECURE_BOOT_SUPPORT=$(CONFIG_EDK2_SECURE_BOOT_SUPPORT) \
+ CONFIG_EDK2_GOP_DRIVER=$(CONFIG_EDK2_GOP_DRIVER) \
+ CONFIG_EDK2_GOP_FILE=$(CONFIG_EDK2_GOP_FILE) \
+ CONFIG_INTEL_GMA_VBT_FILE=$(CONFIG_INTEL_GMA_VBT_FILE) \
GCC_CC_x86_32=$(GCC_CC_x86_32) \
GCC_CC_x86_64=$(GCC_CC_x86_64) \
GCC_CC_arm=$(GCC_CC_arm) \
diff --git a/payloads/external/edk2/Kconfig b/payloads/external/edk2/Kconfig
index ddc521c11b40..6fdb26472ade 100644
--- a/payloads/external/edk2/Kconfig
+++ b/payloads/external/edk2/Kconfig
@@ -262,6 +262,20 @@ config EDK2_SECURE_BOOT_SUPPORT
Select this option to enable UEFI SecureBoot support in edk2.
UEFI SecureBoot will be disabled by default and can be enabled from the menu option.
+config EDK2_GOP_DRIVER
+ bool "Add a GOP driver to the Tianocore build"
+ depends on INTEL_GMA_ADD_VBT && NO_GFX_INIT && (EDK2_REPO_MRCHROMEBOX || EDK2_REPO_CUSTOM)
+ default y if INTEL_GMA_ADD_VBT && NO_GFX_INIT && EDK2_REPO_MRCHROMEBOX
+ help
+ Select this option to have edk2 use an external GOP driver for display init.
+
+config EDK2_GOP_FILE
+ string "GOP driver file"
+ depends on EDK2_GOP_DRIVER
+ default "IntelGopDriver.efi"
+ help
+ The name of the GOP driver file passed to edk2.
+
config EDK2_CUSTOM_BUILD_PARAMS
string "edk2 additional custom build parameters"
default "-D VARIABLE_SUPPORT=SMMSTORE" if EDK2_REPO_MRCHROMEBOX && SMMSTORE_V2
diff --git a/payloads/external/edk2/Makefile b/payloads/external/edk2/Makefile
index ce99ba479c95..0d1e169302f1 100644
--- a/payloads/external/edk2/Makefile
+++ b/payloads/external/edk2/Makefile
@@ -119,6 +119,10 @@ endif
ifeq ($(CONFIG_PCIEXP_SUPPORT_RESIZABLE_BARS), y)
BUILD_STR += --pcd gEfiMdeModulePkgTokenSpaceGuid.PcdPcieResizableBarSupport=TRUE
endif
+# GOP_DRIVER = FALSE
+ifeq ($(CONFIG_EDK2_GOP_DRIVER), y)
+BUILD_STR += -D USE_PLATFORM_GOP=TRUE
+endif
#
# EDKII has the below PCDs that are relevant to coreboot:
@@ -191,6 +195,13 @@ logo: $(EDK2_PATH)
BMP3:$(EDK2_PATH)/MdeModulePkg/Logo/Logo.bmp;; \
esac \
+gop_driver:
+ if [ -n "$(CONFIG_EDK2_GOP_DRIVER)" ]; then \
+ echo "Using GOP driver $(CONFIG_EDK2_GOP_FILE)"; \
+ cp $(top)/$(CONFIG_EDK2_GOP_FILE) $(EDK2_PATH)/UefiPayloadPkg/IntelGopDriver.efi; \
+ cp $(top)/$(CONFIG_INTEL_GMA_VBT_FILE) $(EDK2_PATH)/UefiPayloadPkg/vbt.bin; \
+ fi; \
+
checktools:
echo -n "EDK2: Checking uuid-dev:"
echo "#include <uuid/uuid.h>" > libtest.c
@@ -228,7 +239,7 @@ print:
-e 's/s /Build: Silent/' \
-e 's/t /Toolchain: /'
-prep: $(EDK2_PATH) $(EDK2_PLATFORMS_PATH) clean checktools logo
+prep: $(EDK2_PATH) $(EDK2_PLATFORMS_PATH) clean checktools logo gop_driver
cd $(WORKSPACE); \
source $(EDK2_PATH)/edksetup.sh; \
unset CC; $(MAKE) -C $(EDK2_PATH)/BaseTools 2>&1; \