[PATCH 2/2] doc: Add description for bootmeth rauc

Martin Schwan m.schwan at phytec.de
Wed Jan 29 15:25:26 CET 2025


Add documentation for the bootmeth "rauc", which boots an A/B system
with RAUC from MMC.

Signed-off-by: Martin Schwan <m.schwan at phytec.de>
---
 doc/develop/bootstd/index.rst    |  1 +
 doc/develop/bootstd/overview.rst |  1 +
 doc/develop/bootstd/rauc.rst     | 55 ++++++++++++++++++++++++++++++++++++++++
 3 files changed, 57 insertions(+)

diff --git a/doc/develop/bootstd/index.rst b/doc/develop/bootstd/index.rst
index 4c4e26ccdb707e55f88660395f23d7e7cda6b78d..ec74fc2fb9d7cccc48f3d16e781537190b5b6ced 100644
--- a/doc/develop/bootstd/index.rst
+++ b/doc/develop/bootstd/index.rst
@@ -12,5 +12,6 @@ Standard Boot
    qfw
    android
    cros
+   rauc
    script
    sandbox
diff --git a/doc/develop/bootstd/overview.rst b/doc/develop/bootstd/overview.rst
index e3ce97cc4f5fad8fc6a5ce3f5ea76c7b93697b32..c046889b7fb25653969a65cd3c7b80589b833466 100644
--- a/doc/develop/bootstd/overview.rst
+++ b/doc/develop/bootstd/overview.rst
@@ -442,6 +442,7 @@ Bootmeth drivers are provided for booting from various media:
    - :doc:`extlinux / syslinux <extlinux>` boot from a storage device
    - :doc:`extlinux / syslinux <extlinux>` boot from a network (PXE)
    - :doc:`sandbox <sandbox>` used only for testing
+   - :doc:`RAUC distro <rauc>`: A/B system with RAUC from MMC
    - :doc:`U-Boot scripts <script>` from disk, network or SPI flash
    - :doc:`QFW <qfw>`: QEMU firmware interface
    - :doc:`VBE </develop/vbe>`: Verified Boot for Embedded
diff --git a/doc/develop/bootstd/rauc.rst b/doc/develop/bootstd/rauc.rst
new file mode 100644
index 0000000000000000000000000000000000000000..74ce24e8570d5cbcba7ec2066c20ef4fb5481455
--- /dev/null
+++ b/doc/develop/bootstd/rauc.rst
@@ -0,0 +1,55 @@
+.. SPDX-License-Identifier: GPL-2.0+:
+
+RAUC Bootmeth
+=============
+
+This bootmeth provides a way to locate and run a A/B system with RAUC as its
+update client. The booted distro must supply a script on an MMC device
+containing the final boot instructions necessary.
+
+The boot script must be located in the partition provided by the slot
+configuration in the environment variable ``rauc_slots``. The bootmeth searches
+for "boot.scr.uimg" first, then "boot.scr" if not found.
+
+In addition, the RAUC binary and system configuration file must be present in
+the specified root filesystem.
+
+The settings for configuring the layout and partitions are done through the
+following variables:
+
+rauc_slots
+    If ``BOOT_ORDER`` is not set, this variable is used to set the default boot
+    order. It also specifies the order in which partition indexes are specified
+    in ``rauc_partitions``.
+
+rauc_partitions
+    This variable configures the boot and root partitions for each slot. The
+    content must be a list of pairs, with the following syntax: ``1,2 3,4``,
+    where 1 and 3 are the slots' boot partition and 2 and 4 the slots' root
+    partition.
+
+rauc_slot_default_tries
+    If slots have no variable ``BOOT_*_LEFT`` set, they are set with the value
+    of this variable.
+
+When the bootflow is booted, the bootmeth sets these environment variables:
+
+devtype
+    device type (e.g. "mmc")
+
+devnum
+    device number, corresponding to the device 'sequence' number
+    ``dev_seq(dev)``
+
+distro_bootpart
+    partition number on the device (numbered from 1)
+
+raucargs
+    kernel command line arguments needed for RAUC to detect the currently booted
+    slot
+
+The script file must be a FIT or a legacy uImage. It is loaded into memory and
+executed.
+
+The compatible string "u-boot,distro-rauc" is used for the driver. It is present
+if ``CONFIG_BOOTMETH_RAUC`` is enabled.

-- 
2.48.1



More information about the U-Boot mailing list