payloads: Make PAYLOAD_NONE a bool outside of the choice

Instead of having the config option PAYLOADS_NONE inside the choice of
payloads, make that a separate choice that enables the payload menu.

If the no_payload option is selected, this hides the other options
and keeps them out of the saved config file and config.h

Signed-off-by: Martin Roth <martin.roth@amd.corp-partner.google.com>
Change-Id: I932c65630261a5b39809abf4dfbda5bf932c6684
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68595
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Sean Rhodes <sean@starlabs.systems>
diff --git a/payloads/Kconfig b/payloads/Kconfig
index 2e627d7..2a2773a 100644
--- a/payloads/Kconfig
+++ b/payloads/Kconfig
@@ -1,15 +1,8 @@
 menu "Payload"
 
-config NO_DEFAULT_PAYLOAD
-	bool
-
-choice
-	prompt "Add a payload"
-	default PAYLOAD_NONE if NO_DEFAULT_PAYLOAD || !ARCH_X86
-	default PAYLOAD_SEABIOS if ARCH_X86
-
 config PAYLOAD_NONE
-	bool "None"
+	bool "Don't add a payload"
+	default y if !ARCH_X86
 	help
 	  Select this option if you want to create an "empty" coreboot
 	  ROM image for a certain mainboard, i.e. a coreboot ROM image
@@ -18,6 +11,11 @@
 	  For such an image to be useful, you have to use 'cbfstool'
 	  to add a payload to the ROM image later.
 
+if !PAYLOAD_NONE
+choice
+	prompt "Payload to add"
+	default PAYLOAD_SEABIOS if ARCH_X86
+
 config PAYLOAD_ELF
 	bool "An ELF executable payload"
 	help
@@ -58,7 +56,7 @@
 	prompt "Payload compression algorithm"
 	default COMPRESSED_PAYLOAD_LZMA
 	default COMPRESSED_PAYLOAD_NONE if PAYLOAD_LINUX || PAYLOAD_LINUXBOOT || PAYLOAD_FIT
-	depends on !PAYLOAD_NONE && !PAYLOAD_LINUX && !PAYLOAD_LINUXBOOT && !PAYLOAD_FIT
+	depends on !PAYLOAD_LINUX && !PAYLOAD_LINUXBOOT && !PAYLOAD_FIT
 	help
 	  Choose the compression algorithm for the chosen payloads.
 	  You can choose between None, LZMA, or LZ4.
@@ -178,4 +176,7 @@
 source "payloads/external/*/Kconfig.secondary"
 
 endmenu # "Secondary Payloads"
+
+endif # !PAYLOAD_NONE
+
 endmenu