From 3809fd35a5dbdbd62043ba0a72c3f37f58e69f9d Mon Sep 17 00:00:00 2001 From: Martyn Welch Date: Wed, 9 Oct 2024 14:15:40 +0100 Subject: bootstd: Add command to enable setting of bootmeth specific properties We have previously added logic to allow a "fallback" option to be specified in the extlinux configuration. Provide a command that allows us to set this as the preferred default option when booting. Combined with the bootcount functionality, this allows the "altbootcmd" to provide a means of falling back to a previously known good state after a failed update. For example, if "bootcmd" is set to: bootflow scan -lb We would set "altbootcmd" to: bootmeth set extlinux fallback 1; bootflow scan -lb Causing the boot process to boot from the fallback option. Reviewed-by: Simon Glass Signed-off-by: Martyn Welch --- doc/usage/cmd/bootmeth.rst | 38 +++++++++++++++++++++++++++++++++++++- 1 file changed, 37 insertions(+), 1 deletion(-) (limited to 'doc/usage') diff --git a/doc/usage/cmd/bootmeth.rst b/doc/usage/cmd/bootmeth.rst index c3d2ec1574b..4f899d92b2e 100644 --- a/doc/usage/cmd/bootmeth.rst +++ b/doc/usage/cmd/bootmeth.rst @@ -12,7 +12,8 @@ Synopsis :: bootmeth list [-a] - list selected bootmeths (-a for all) - bootmeth order "[ ...]" - select the order of bootmeths\n" + bootmeth order "[ ...]" - select the order of bootmeths + bootmeth set - set optional property Description @@ -112,3 +113,38 @@ which are not:: - 4 efi_mgr EFI bootmgr flow ----- --- ------------------ ------------------ (5 bootmeths) + + +bootmeth set +~~~~~~~~~~~~ + +Allows setting of bootmeth specific configuration. This allows finer grain +control over the boot process in specific instances. + + +Supported Configuration Options +------------------------------- + +The following configuration options are currently supported: + +======== =================== ====== =============================== +Property Supported Bootmeths Values Description +======== =================== ====== =============================== +fallback extlinux 0 | 1 Enable or disable fallback path +======== =================== ====== =============================== + + +Bootmeth set Example +-------------------- + +With the bootcount functionality enabled, when the bootlimit is reached, the +`altbootcmd` environment variable lists the command used for booting rather +than `bootcmd`. We can set the fallback configuration to cause the fallback +boot option to be preferred, to revert to a previous known working boot option +after a failed update for example. So if `bootcmd` is set to:: + + bootflow scan -lb + +We would set "altbootcmd" to:: + + bootmeth set extlinux fallback 1; bootflow scan -lb -- cgit v1.3.1