184 lines
5.2 KiB
Plaintext
184 lines
5.2 KiB
Plaintext
menu "Payload"
|
|
|
|
config PAYLOAD_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
|
|
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.
|
|
|
|
if !PAYLOAD_NONE
|
|
choice
|
|
prompt "Payload to add"
|
|
default PAYLOAD_SEABIOS if ARCH_X86
|
|
|
|
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"
|
|
depends on ARCH_ARM64 || ARCH_RISCV || ARCH_ARM
|
|
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.
|
|
|
|
source "payloads/external/*/Kconfig.name"
|
|
|
|
endchoice
|
|
|
|
source "payloads/external/*/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
|
|
default COMPRESSED_PAYLOAD_NONE if 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.
|
|
|
|
config COMPRESSED_PAYLOAD_NONE
|
|
bool "Use no compression for payloads"
|
|
help
|
|
Do not compress the payload.
|
|
|
|
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 "Additional cbfstool options"
|
|
default ""
|
|
help
|
|
Additional cbfstool options for the payload
|
|
|
|
config PAYLOAD_IS_FLAT_BINARY
|
|
bool "Payload is a flat binary"
|
|
default 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 || ARCH_RISCV)
|
|
depends on ARCH_ARM64 || ARCH_RISCV || ARCH_ARM
|
|
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 GRUB2_SECONDARY_PAYLOAD
|
|
bool "Load GRUB2 as a secondary payload"
|
|
default n
|
|
depends on !PAYLOAD_GRUB2
|
|
select PAYLOAD_BUILD_GRUB2
|
|
help
|
|
GRUB2 can be loaded as a secondary payload under SeaBIOS 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 && HAVE_OPTION_TABLE
|
|
help
|
|
nvramcui can be loaded as a secondary payload under SeaBIOS, GRUB,
|
|
or any other payload that can load additional payloads.
|
|
|
|
config SEABIOS_SECONDARY_PAYLOAD
|
|
bool "Load SeaBIOS as a secondary payload"
|
|
default n
|
|
depends on ARCH_X86
|
|
depends on !PAYLOAD_SEABIOS
|
|
depends on !PAYLOAD_SEAGRUB
|
|
select PAYLOAD_BUILD_SEABIOS
|
|
help
|
|
SeaBIOS can be loaded as a secondary payload under 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.
|
|
|
|
config COREDOOM_SECONDARY_PAYLOAD
|
|
bool "Load coreDOOM as a secondary payload"
|
|
default n
|
|
depends on ARCH_X86
|
|
help
|
|
coreDOOM can be loaded as a secondary payload under SeaBIOS, GRUB,
|
|
or any other payload that can load additional payloads. Requires a
|
|
linear framebuffer. If built as a secondary payload for SeaBIOS, the
|
|
generated VGA BIOS option rom is also required.
|
|
|
|
source "payloads/external/*/Kconfig.secondary"
|
|
|
|
endmenu # "Secondary Payloads"
|
|
|
|
endif # !PAYLOAD_NONE
|
|
|
|
endmenu
|