From ee76692571e932a5c53d8ba61add298124ca32cd Mon Sep 17 00:00:00 2001 From: Matt DeVillier Date: Mon, 21 Apr 2025 14:32:01 -0500 Subject: [PATCH] payload/external/edk2: Add Kconfig to support use of PCIe OpROMs Add a Kconfig to support passing `LOAD_OPTION_ROMS=TRUE` as a build parameter in order to enable edk2 support for dGPUs. Change-Id: I05444425d1cb98b023681639389949bf3f3b8e9c Signed-off-by: Matt DeVillier Reviewed-on: https://review.coreboot.org/c/coreboot/+/87407 Reviewed-by: Frans Hendriks Tested-by: build bot (Jenkins) Reviewed-by: Sean Rhodes Reviewed-by: Alicja Michalska --- payloads/external/Makefile.mk | 1 + payloads/external/edk2/Kconfig | 8 ++++++++ payloads/external/edk2/Makefile | 4 ++++ 3 files changed, 13 insertions(+) diff --git a/payloads/external/Makefile.mk b/payloads/external/Makefile.mk index c279121493..5e8c91fbb5 100644 --- a/payloads/external/Makefile.mk +++ b/payloads/external/Makefile.mk @@ -182,6 +182,7 @@ $(obj)/UEFIPAYLOAD.fd: $(DOTCONFIG) CONFIG_EDK2_FULL_SCREEN_SETUP=$(CONFIG_EDK2_FULL_SCREEN_SETUP) \ CONFIG_EDK2_HAVE_EFI_SHELL=$(CONFIG_EDK2_HAVE_EFI_SHELL) \ CONFIG_EDK2_PRIORITIZE_INTERNAL=$(CONFIG_EDK2_PRIORITIZE_INTERNAL) \ + CONFIG_EDK2_LOAD_OPTION_ROMS=$(CONFIG_EDK2_LOAD_OPTION_ROMS) \ CONFIG_EDK2_PS2_SUPPORT=$(CONFIG_EDK2_PS2_SUPPORT) \ CONFIG_EDK2_SERIAL_SUPPORT=$(CONFIG_EDK2_SERIAL_SUPPORT) \ CONFIG_EDK2_SD_MMC_TIMEOUT=$(CONFIG_EDK2_SD_MMC_TIMEOUT) \ diff --git a/payloads/external/edk2/Kconfig b/payloads/external/edk2/Kconfig index ea24cee4bf..08e48e53ff 100644 --- a/payloads/external/edk2/Kconfig +++ b/payloads/external/edk2/Kconfig @@ -240,6 +240,14 @@ config EDK2_PRIORITIZE_INTERNAL help Prioritize internal boot devices over external devices +config EDK2_LOAD_OPTION_ROMS + bool "Load and Execute OpROMs on PCIe devices" + depends on EDK2_REPO_MRCHROMEBOX + default n + help + Load and execute OpROMs on PCIe devices. + Select this option to support use of an external dGPU. + config EDK2_PS2_SUPPORT bool "Support PS/2 Keyboards" default y diff --git a/payloads/external/edk2/Makefile b/payloads/external/edk2/Makefile index 6464e9f851..0908f4d26c 100644 --- a/payloads/external/edk2/Makefile +++ b/payloads/external/edk2/Makefile @@ -149,6 +149,10 @@ endif ifeq ($(CONFIG_EDK2_USE_LAPIC_TIMER),y) BUILD_STR += -D TIMER_SUPPORT=LAPIC endif +# LOAD_OPTION_ROMS = FALSE +ifeq ($(CONFIG_EDK2_LOAD_OPTION_ROMS),y) +BUILD_STR += -D LOAD_OPTION_ROMS=TRUE +endif endif