blob: 8e05df3ae75b46c9d082fd29656869431d5d29dd [file] [log] [blame]
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"
help
Select this option if you want to create an "empty" coreboot
ROM image for a certain mainboard, i.e. a coreboot ROM image
which does not yet contain a payload.
For such an image to be useful, you have to use 'cbfstool'
to add a payload to the ROM image later.
config PAYLOAD_ELF
bool "An ELF executable payload"
help
Select this option if you have a payload image (an ELF file)
which coreboot should run as soon as the basic hardware
initialization is completed.
You will be able to specify the location and file name of the
payload image later.
config PAYLOAD_FIT
bool "A FIT payload"
select PAYLOAD_FIT_SUPPORT
help
Select this option if you have a payload image (a FIT file) which
coreboot should run as soon as the basic hardware initialization
is completed.
You will be able to specify the location and file name of the
payload image later.
config PAYLOAD_BAYOU
bool "Bayou"
help
Select this option if you want to set bayou as your primary
payload.
source "payloads/external/*/Kconfig.name"
endchoice
source "payloads/external/*/Kconfig"
source "payloads/bayou/Kconfig"
config PAYLOAD_FILE
string "Payload path and filename"
depends on PAYLOAD_ELF || PAYLOAD_FIT
default "payload.elf" if PAYLOAD_ELF
default "uImage" if PAYLOAD_FIT
help
The path and filename of the ELF executable file to use as payload.
choice
prompt "Payload compression algorithm"
default COMPRESSED_PAYLOAD_LZMA
depends on !PAYLOAD_NONE && !PAYLOAD_LINUX && !PAYLOAD_LINUXBOOT && !PAYLOAD_FIT
help
Choose the compression algorithm for the chosen payloads.
You can choose between LZMA and LZ4.
config COMPRESSED_PAYLOAD_LZMA
bool "Use LZMA compression for payloads"
help
In order to reduce the size payloads take up in the ROM chip
coreboot can compress them using the LZMA algorithm.
config COMPRESSED_PAYLOAD_LZ4
bool "Use LZ4 compression for payloads"
help
In order to reduce the size payloads take up in the ROM chip
coreboot can compress them using the LZ4 algorithm.
endchoice
config PAYLOAD_OPTIONS
string
default ""
help
Additional cbfstool options for the payload
config PAYLOAD_IS_FLAT_BINARY
def_bool n
help
Add the payload to cbfs as a flat binary type instead of as an
elf payload
config PAYLOAD_FIT_SUPPORT
bool "FIT support"
default n
default y if PAYLOAD_LINUX && (ARCH_ARM || ARCH_ARM64)
select FLATTENED_DEVICE_TREE
help
Select this option if your payload is of type FIT.
Enables FIT parser and devicetree patching. The FIT is non
self-extracting and needs to have a compatible compression format.
config COMPRESS_SECONDARY_PAYLOAD
bool "Use LZMA compression for secondary payloads"
default y
help
In order to reduce the size secondary payloads take up in the
ROM chip they can be compressed using the LZMA algorithm.
menu "Secondary Payloads"
config COREINFO_SECONDARY_PAYLOAD
bool "Load coreinfo as a secondary payload"
default n
depends on ARCH_X86
help
coreinfo can be loaded as a secondary payload under SeaBIOS, GRUB,
or any other payload that can load additional payloads.
config MEMTEST_SECONDARY_PAYLOAD
bool "Load Memtest86+ as a secondary payload"
default n
depends on ARCH_X86
help
Memtest86+ can be loaded as a secondary payload under SeaBIOS, GRUB,
or any other payload that can load additional payloads.
config NVRAMCUI_SECONDARY_PAYLOAD
bool "Load nvramcui as a secondary payload"
default n
depends on ARCH_X86
help
nvramcui can be loaded as a secondary payload under SeaBIOS, GRUB,
or any other payload that can load additional payloads.
config TINT_SECONDARY_PAYLOAD
bool "Load tint as a secondary payload"
default n
depends on ARCH_X86
help
tint can be loaded as a secondary payload under SeaBIOS, GRUB,
or any other payload that can load additional payloads.
source "payloads/external/*/Kconfig.secondary"
endmenu # "Secondary Payloads"
endmenu