config FIT_IMAGE_POST_PROCESS
bool "Enable post-processing of FIT artifacts after loading by U-Boot"
depends on FIT
- depends on TI_SECURE_DEVICE || SOCFPGA_SECURE_VAB_AUTH
- default y if TI_SECURE_DEVICE
+ depends on SOCFPGA_SECURE_VAB_AUTH
help
Allows doing any sort of manipulation to blobs after they got extracted
from FIT images like stripping off headers or modifying the size of the
U-Boot)
- bootflow - a description of how to boot (owned by the distro)
-config BOOTSTD_FULL
- bool "Enhanced features for standard boot"
- default y if SANDBOX
- help
- This enables various useful features for standard boot, which are not
- essential for operation:
-
- - bootdev, bootmeth commands
- - extra features in the bootflow command
- - support for selecting the ordering of bootmeths ("bootmeth order")
- - support for selecting the ordering of bootdevs using the devicetree
- as well as the "boot_targets" environment variable
-
config SPL_BOOTSTD
bool "Standard boot support in SPL"
depends on SPL && SPL_DM && SPL_OF_CONTROL && SPL_BLK
if BOOTSTD
+config BOOTSTD_FULL
+ bool "Enhanced features for standard boot"
+ default y if SANDBOX
+ help
+ This enables various useful features for standard boot, which are not
+ essential for operation:
+
+ - bootdev, bootmeth commands
+ - extra features in the bootflow command
+ - support for selecting the ordering of bootmeths ("bootmeth order")
+ - support for selecting the ordering of bootdevs using the devicetree
+ as well as the "boot_targets" environment variable
+
config BOOTSTD_DEFAULTS
bool "Select some common defaults for standard boot"
depends on BOOTSTD
imply USE_BOOTCOMMAND
select BOOT_DEFAULTS
+ select BOOTMETH_DISTRO
help
These are not required but are commonly needed to support a good
selection of booting methods. Enable this to improve the capability
EFI bootmgr, since they take full control over which bootdevs are
selected to boot.
-config BOOTMETH_DISTRO
- bool "Bootdev support for distro boot"
+config BOOTMETH_CROS
+ bool "Bootdev support for Chromium OS"
+ depends on X86 || ARM || SANDBOX
+ default y if !ARM
+ select EFI_PARTITION
+ select PARTITION_TYPE_GUID
+ select PARTITION_UUIDS
+ help
+ Enables support for booting Chromium OS using bootdevs. This uses the
+ kernel A slot and obtains the kernel command line from the parameters
+ provided there.
+
+ Note that only x86 devices are supported at present.
+
+config BOOTMETH_EXTLINUX
+ bool "Bootdev support for extlinux boot"
select PXE_UTILS
default y
help
- Enables support for distro boot using bootdevs. This makes the
+ Enables support for extlinux boot using bootdevs. This makes the
bootdevs look for a 'extlinux/extlinux.conf' on each filesystem
they scan.
+ The specification for this filed is here:
+
+ https://uapi-group.org/specifications/specs/boot_loader_specification/
+
This provides a way to try out standard boot on an existing boot flow.
-config BOOTMETH_DISTRO_PXE
- bool "Bootdev support for distro boot over network"
+config BOOTMETH_EXTLINUX_PXE
+ bool "Bootdev support for extlinux boot over network"
depends on CMD_PXE && CMD_NET && DM_ETH
default y
help
- Enables support for distro boot using bootdevs. This makes the
+ Enables support for extlinux boot using bootdevs. This makes the
bootdevs look for a 'extlinux/extlinux.conf' on the tftp server.
+ The specification for this file is here:
+
+ https://uapi-group.org/specifications/specs/boot_loader_specification/
+
This provides a way to try out standard boot on an existing boot flow.
config BOOTMETH_EFILOADER
bool "Bootdev support for EFI boot"
- depends on CMD_BOOTEFI
+ depends on EFI_LOADER
default y
help
Enables support for EFI boot using bootdevs. This makes the
supports selection of various firmware components, seleciton of an OS to
boot as well as updating these using fwupd.
+config BOOTMETH_DISTRO
+ bool # Options needed to boot any distro
+ select BOOTMETH_SCRIPT # E.g. Armbian uses scripts
+ select BOOTMETH_EXTLINUX # E.g. Debian uses these
+ select BOOTMETH_EXTLINUX_PXE if CMD_PXE && CMD_NET && DM_ETH
+ select BOOTMETH_EFILOADER if EFI_LOADER # E.g. Ubuntu uses this
+
config SPL_BOOTMETH_VBE
bool "Bootdev support for Verified Boot for Embedded (SPL)"
depends on SPL && FIT
config BOOTMETH_SCRIPT
bool "Bootdev support for U-Boot scripts"
default y if BOOTSTD_FULL
+ select HUSH_PARSER
help
Enables support for booting a distro via a U-Boot script. This makes
the bootdevs look for a 'boot/boot.scr' file which can be used to
config BOOTSTAGE_STASH_ADDR
hex "Address to stash boot timing information"
- default 0
+ default 0x0
help
Provide an address which will not be overwritten by the OS when it
starts, so that it can read this information when ready.
config BOOTCOMMAND
string "bootcmd value"
depends on USE_BOOTCOMMAND && !USE_DEFAULT_ENV_FILE
- default "bootflow scan -lb" if BOOTSTD_BOOTCOMMAND && CMD_BOOTFLOW_FULL
- default "bootflow scan" if BOOTSTD_BOOTCOMMAND && !CMD_BOOTFLOW_FULL
+ default "bootflow scan -lb" if BOOTSTD_DEFAULTS && CMD_BOOTFLOW_FULL
+ default "bootflow scan" if BOOTSTD_DEFAULTS && !CMD_BOOTFLOW_FULL
default "run distro_bootcmd" if !BOOTSTD_BOOTCOMMAND && DISTRO_DEFAULTS
help
This is the string of commands that will be used as bootcmd and if
If no initramfs was provided by previous bootloader, no env variables
will be created.
+menu "Configuration editor"
+
+config CEDIT
+ bool "Configuration editor"
+ depends on BOOTSTD
+ help
+ Provides a way to deal with board configuration and present it to
+ the user for adjustment.
+
+ This is intended to provide both graphical and text-based user
+ interfaces, but only graphical is support at present.
+
+endmenu # Configuration editor
+
endmenu # Booting