Skip to contentSkip to conversation

efi: make EFI a menuconfig to ease disabling it all

PATCH In review Vincent Legoll 4 participants 7 messages Dec 9, 2017 – Dec 16, 2017 EFI

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 efi: make EFI a menuconfig to ease disabling it all

No need to get into the submenu to disable all related config entries.

This makes it easier to disable all EFI config options without entering the submenu. It will also enable one to see that en/dis-abled state from the outside menu.

This is only intended to change menuconfig UI, not change the config dependencies.

---
 drivers/firmware/efi/Kconfig | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)
drivers/firmware/efi/Kconfig +8 -5
index 2b4c39fdfa91..8727b1aa8ef6 100644
@@ -1,6 +1,9 @@
-menu "EFI (Extensible Firmware Interface) Support"
+menuconfig EFI_MENU
+	bool "EFI (Extensible Firmware Interface) Support"
 	depends on EFI
 
+if EFI_MENU
+
 config EFI_VARS
 	tristate "EFI Variable Support via sysfs"
 	depends on EFI
@@ -81,9 +84,6 @@ config EFI_PARAMS_FROM_FDT
 	  the EFI runtime support gets system table address, memory
           map address, and other parameters from the device tree.
 
-config EFI_RUNTIME_WRAPPERS
-	bool
-
 config EFI_ARMSTUB
 	bool
 
@@ -161,7 +161,10 @@ config RESET_ATTACK_MITIGATION
 	  still contains secrets in RAM, booting another OS and extracting the
 	  secrets.
 
-endmenu
+endif # EFI_MENU
+
+config EFI_RUNTIME_WRAPPERS
+	bool
 
 config UEFI_CPER
 	bool
Signature · 1 line
2.14.1
#1 lore raw
Quoted 7 lines · Vincent Legoll

No need to get into the submenu to disable all related config entries.

This makes it easier to disable all EFI config options without entering the submenu. It will also enable one to see that en/dis-abled state from the outside menu.

Quoted 7 lines

This is only intended to change menuconfig UI, not change the config dependencies.

---
 drivers/firmware/efi/Kconfig | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

This looks fine to me. Ard?

#2 lore raw
Quoted 11 lines · Matt Fleming
Quoted 10 lines · Vincent Legoll

No need to get into the submenu to disable all related config entries.

This makes it easier to disable all EFI config options without entering the submenu. It will also enable one to see that en/dis-abled state from the outside menu.

This is only intended to change menuconfig UI, not change the config dependencies.

Quoted 6 lines
Quoted 4 lines
---
 drivers/firmware/efi/Kconfig | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

This looks fine to me. Ard?

Doesn't this break existing configs?

#3 lore raw

Hello,

Quoted 3 lines
Quoted 1 line

This looks fine to me. Ard?

Doesn't this break existing configs?

Would adding a "default yes" on the new menuconfig be OK.

If yes, I'd respin it for a v2

Signature · 1 line
Vincent Legoll
#4 lore raw
Quoted 10 lines · Vincent Legoll

Hello,

Quoted 3 lines
Quoted 1 line

This looks fine to me. Ard?

Doesn't this break existing configs?

Would adding a "default yes" on the new menuconfig be OK.

If yes, I'd respin it for a v2

Alternatively, would it not make some degree of sense to just turn the CONFIG_EFI symbol into the menuconfig? It already controls all the EFI related stuff except GPT support (which should not be dependent on EFI support), so anyone who wants EFI support already has it enabled, and it would be a bit nicer to work with when actually configuring a kernel (It is rather annoying to have to effectively enable something twice).

The same (in theory) goes for pretty much any other patch like this where there's already a config option controlling it all that just isn't a menuconfig.

#5 lore raw

PATCH v2 1/1 efi: make EFI a menuconfig to ease disabling it all

The following v2 patch adds the "default y" to avoid breaking existing configs.

I don't know if using the CONFIG_EFI symbol would be better, it is spread in multiple arch/*/Kconfig files, and would make the changes more invasive.

Please advise the way forward

Thanks

#6 lore raw

PATCH 1/1 efi: make EFI a menuconfig to ease disabling it all

No need to get into the submenu to disable all related config entries.

This makes it easier to disable all EFI config options without entering the submenu. It will also enable one to see that en/dis-abled state from the outside menu.

This is only intended to change menuconfig UI, not change the config dependencies.

v2: added "default y" to menuconfig to avoid breaking existing configs.

---
 drivers/firmware/efi/Kconfig | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)
drivers/firmware/efi/Kconfig +9 -5
index 2b4c39fdfa91..2ad237b24afb 100644
@@ -1,5 +1,9 @@
-menu "EFI (Extensible Firmware Interface) Support"
+menuconfig EFI_MENU
+	bool "EFI (Extensible Firmware Interface) Support"
 	depends on EFI
+	default y
+
+if EFI_MENU
 
 config EFI_VARS
 	tristate "EFI Variable Support via sysfs"
@@ -81,9 +85,6 @@ config EFI_PARAMS_FROM_FDT
 	  the EFI runtime support gets system table address, memory
           map address, and other parameters from the device tree.
 
-config EFI_RUNTIME_WRAPPERS
-	bool
-
 config EFI_ARMSTUB
 	bool
 
@@ -161,7 +162,10 @@ config RESET_ATTACK_MITIGATION
 	  still contains secrets in RAM, booting another OS and extracting the
 	  secrets.
 
-endmenu
+endif # EFI_MENU
+
+config EFI_RUNTIME_WRAPPERS
+	bool
 
 config UEFI_CPER
 	bool
Signature · 1 line
2.14.1