summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorTom Rini <[email protected]>2024-10-15 09:18:04 -0600
committerTom Rini <[email protected]>2024-10-15 11:38:44 -0600
commit4378732d5658accd07d2fb245417262a23f578ce (patch)
tree06b50e26d4b1582fb4c00393e83b4ede06537fa6 /doc
parent4f777c2ef20ad294af1d3447baf7dfffb7514ab3 (diff)
parent87980311fbb64369c29d8725fc8fb4fb35ae2f3c (diff)
Merge patch series to add a "fallback" keyword to extlinux.conf parsing
This series from Martyn Welch <[email protected]> adds the ability to have a "fallback" option in extlinux.conf parsing, which can be in turn used in A/B style update mechanisms. Link: https://lore.kernel.org/u-boot/[email protected]/
Diffstat (limited to 'doc')
-rw-r--r--doc/README.pxe5
-rw-r--r--doc/develop/bootstd/overview.rst10
-rw-r--r--doc/usage/cmd/bootmeth.rst38
3 files changed, 50 insertions, 3 deletions
diff --git a/doc/README.pxe b/doc/README.pxe
index 172201093d0..af2e64a5776 100644
--- a/doc/README.pxe
+++ b/doc/README.pxe
@@ -120,6 +120,11 @@ Unrecognized commands are ignored.
default <label> - the label named here is treated as the default and is
the first label 'pxe boot' attempts to boot.
+fallback <label> - the label named here is treated as a fallback option that
+ may be attempted should it be detected that booting of
+ the default has failed to complete, for example via
+ U-Boot's boot count limit functionality.
+
menu title <string> - sets a title for the menu of labels being displayed.
menu include <path> - use tftp to retrieve the pxe file at <path>, which
diff --git a/doc/develop/bootstd/overview.rst b/doc/develop/bootstd/overview.rst
index c6f003851b2..a2913cd47be 100644
--- a/doc/develop/bootstd/overview.rst
+++ b/doc/develop/bootstd/overview.rst
@@ -103,6 +103,12 @@ provide a `read_bootflow()` method which checks whatever bootdevs it likes, then
returns the bootflow, if found. Some of these bootmeths may be very slow, if
they scan a lot of devices.
+The extlinux bootmeth also allows for bootmeth specific configuration to be
+set. A bootmeth that wishes to support this provides the `set_property()`
+method. This allows string properties and values to be passed to the bootmeth.
+It is up to the bootmeth to determine what action to take when this method is
+called.
+
Boot process
------------
@@ -459,8 +465,8 @@ Three commands are available:
See :doc:`/usage/cmd/bootflow`
`bootmeth`
- Allow listing of available bootmethds and setting the order in which they
- are tried. See :doc:`/usage/cmd/bootmeth`
+ Allow listing of available bootmethds, setting the order in which they are
+ tried and bootmeth specific configuration. See :doc:`/usage/cmd/bootmeth`
.. _BootflowStates:
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 "[<bm> ...]" - select the order of bootmeths\n"
+ bootmeth order "[<bm> ...]" - select the order of bootmeths
+ bootmeth set <bootmeth> <property> <value> - 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