Geert reports that the new option CONFIG_EFI_DISABLE_RUNTIME is user visible even when EFI support is disabled, which is unnecessary and clutters the Kconfig interface. So let's move this option into the existing Kconfig submenu that already depends on CONFIG_EFI, and while at it, give some other options the same treatment. Also clean up a small wart where the efi/ subdirectory is listed twice. Let's just list it unconditionally so that both EFI and UEFI_CPER based pieces will be built independently (the latter only depends on the former on !X86) Cc: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx> Cc: Javier Martinez Canillas <javierm@xxxxxxxxxx> Cc: Masahiro Yamada <masahiroy@xxxxxxxxxx> Signed-off-by: Ard Biesheuvel <ardb@xxxxxxxxxx> --- drivers/firmware/Makefile | 3 +- drivers/firmware/efi/Kconfig | 52 +++++++++----------- 2 files changed, 25 insertions(+), 30 deletions(-) diff --git a/drivers/firmware/Makefile b/drivers/firmware/Makefile index 4e58cb474a68..dca73826e09a 100644 --- a/drivers/firmware/Makefile +++ b/drivers/firmware/Makefile @@ -31,8 +31,7 @@ obj-y += broadcom/ obj-y += cirrus/ obj-y += meson/ obj-$(CONFIG_GOOGLE_FIRMWARE) += google/ -obj-$(CONFIG_EFI) += efi/ -obj-$(CONFIG_UEFI_CPER) += efi/ +obj-y += efi/ obj-y += imx/ obj-y += psci/ obj-y += smccc/ diff --git a/drivers/firmware/efi/Kconfig b/drivers/firmware/efi/Kconfig index 4720ba98cec3..7aa4717cdcac 100644 --- a/drivers/firmware/efi/Kconfig +++ b/drivers/firmware/efi/Kconfig @@ -193,6 +193,9 @@ config EFI_TEST Say Y here to enable the runtime services support via /dev/efi_test. If unsure, say N. +config EFI_DEV_PATH_PARSER + bool + config APPLE_PROPERTIES bool "Apple Device Properties" depends on EFI_STUB && X86 @@ -255,40 +258,15 @@ config EFI_DISABLE_PCI_DMA options "efi=disable_early_pci_dma" or "efi=no_disable_early_pci_dma" may be used to override this option. -endmenu - -config EFI_EMBEDDED_FIRMWARE - bool - depends on EFI - select CRYPTO_LIB_SHA256 - -config UEFI_CPER - bool - -config UEFI_CPER_ARM - bool - depends on UEFI_CPER && ( ARM || ARM64 ) - default y - -config UEFI_CPER_X86 - bool - depends on UEFI_CPER && X86 - default y - -config EFI_DEV_PATH_PARSER - bool - depends on ACPI - default n - config EFI_EARLYCON def_bool y - depends on EFI && SERIAL_EARLYCON && !ARM && !IA64 + depends on SERIAL_EARLYCON && !ARM && !IA64 select FONT_SUPPORT select ARCH_USE_MEMREMAP_PROT config EFI_CUSTOM_SSDT_OVERLAYS bool "Load custom ACPI SSDT overlay from an EFI variable" - depends on EFI && ACPI + depends on ACPI default ACPI_TABLE_UPGRADE help Allow loading of an ACPI SSDT overlay from an EFI variable specified @@ -314,7 +292,6 @@ config EFI_DISABLE_RUNTIME config EFI_COCO_SECRET bool "EFI Confidential Computing Secret Area Support" - depends on EFI help Confidential Computing platforms (such as AMD SEV) allow the Guest Owner to securely inject secrets during guest VM launch. @@ -327,3 +304,22 @@ config EFI_COCO_SECRET for usage inside the kernel. This will allow the virt/coco/efi_secret module to access the secrets, which in turn allows userspace programs to access the injected secrets. + +config EFI_EMBEDDED_FIRMWARE + bool + select CRYPTO_LIB_SHA256 + +endmenu + +config UEFI_CPER + bool + +config UEFI_CPER_ARM + bool + depends on UEFI_CPER && ( ARM || ARM64 ) + default y + +config UEFI_CPER_X86 + bool + depends on UEFI_CPER && X86 + default y -- 2.30.2