bootstd: Add some default filesystems and commands

We need to support a basic set of filesystems for booting to work in most
cases. Add these in via a new option, letting the board disable them
individually (for space reasons) if desired.

This enables the filesystem commands as well as the actual functionality,
even though bootstd is quite happy to use ext4 without the ext4 command.
Further work would be needed to disintangle this and reduce code size.

Add several other options as well, providing sensible defaults.

We cannot enable this by default, since it expands the size of many
boards quite a lot.

Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Simon Glass 2023-01-28 15:00:21 -07:00 committed by Tom Rini
parent a710f5b2eb
commit 22353fa6b5
3 changed files with 32 additions and 0 deletions

View file

@ -406,6 +406,33 @@ config VPL_BOOTSTD
if BOOTSTD
config BOOTSTD_DEFAULTS
bool "Select some common defaults for standard boot"
depends on BOOTSTD
imply USE_BOOTCOMMAND
# Bring in some defaults which are generally needed. Boards can drop
# these as needed to save code space. Bootstd does not generally require
# the commands themselves to be enabled, but this is how some of the
# functionality is controlled at present
imply CMD_EXT2
imply CMD_EXT4
imply CMD_FAT
imply CMD_FS_GENERIC
imply CMD_PART
imply CMD_DHCP if NET
imply CMD_MII if NET
imply CMD_PING if NET
imply CMD_PXE if NET
imply USB_STORAGE
imply SUPPORT_RAW_INITRD
imply ENV_VARS_UBOOT_CONFIG
imply EFI_PARTITION
imply ISO_PARTITION
help
These are not required but are commonly needed to support a good
selection of booting methods. Enable this to improve the capability
of U-Boot to boot various images.
config BOOTSTD_BOOTCOMMAND
bool "Use bootstd to boot"
default y if !DISTRO_DEFAULTS

View file

@ -12,6 +12,7 @@ CONFIG_FIT_SIGNATURE=y
# CONFIG_BOOTMETH_VBE is not set
CONFIG_USE_BOOTCOMMAND=y
CONFIG_BOOTCOMMAND="run distro_bootcmd"
# CONFIG_AVB_VERIFY is not set
# CONFIG_CMD_BOOTD is not set
# CONFIG_CMD_BOOTM is not set
# CONFIG_CMD_ELF is not set

View file

@ -396,6 +396,10 @@ To enable all feature sof standard boot, use `CONFIG_BOOTSTD_FULL`. This
includes the full set of commands, more error messages when things go wrong and
bootmeth ordering with the bootmeths environment variable.
You should probably also enable `CONFIG_BOOTSTD_DEFAULTS`, which provides
several filesystem and network features (if `CONFIG_NET` is enabled) so that
a good selection of boot options is available.
Available bootmeth drivers
--------------------------