[PATCH 06/13] doc: Add a description for bootmeth_cros
Simon Glass
sjg at chromium.org
Tue Jul 16 09:04:44 CEST 2024
Hi Heinrich,
On Tue, 16 Jul 2024 at 00:07, Heinrich Schuchardt <xypron.glpk at gmx.de> wrote:
>
> On 7/15/24 12:13, Simon Glass wrote:
> > Add documentation for the cros bootmeth.
>
> %s/bootmeth/boot method/
>
> throughout the patch.
>
> >
> > Signed-off-by: Simon Glass <sjg at chromium.org>
> > ---
> >
> > doc/develop/bootstd/cros.rst | 33 ++++++++++++++++++++++++++++++++
> > doc/develop/bootstd/index.rst | 1 +
> > doc/develop/bootstd/overview.rst | 1 +
> > 3 files changed, 35 insertions(+)
> > create mode 100644 doc/develop/bootstd/cros.rst
> >
> > diff --git a/doc/develop/bootstd/cros.rst b/doc/develop/bootstd/cros.rst
> > new file mode 100644
> > index 00000000000..96f148837ac
> > --- /dev/null
> > +++ b/doc/develop/bootstd/cros.rst
> > @@ -0,0 +1,33 @@
> > +.. SPDX-License-Identifier: GPL-2.0+:
> > +
> > +ChromiumOS Bootmeth
> > +===================
> > +
> > +ChromiumOS provides a mechanism for booting its Operating System from a block
> > +device, described
> > +`here <https://www.chromium.org/chromium-os/chromiumos-design-docs/verified-boot/>`_.
> > +
> > +U-Boot includes support for reading the associated data structures from the
> > +device and identifying a bootable ChromiumOS image. This structure includes the
> > +kernel itself, boot arguments (kernel command line), as well as the x86 setup
> > +block (for x86 only).
> > +
> > +When invoked on a bootdev, this bootmeth searches for kernel partitions with
>
> What does 'invoked on a boot device' mean? Do you mean "if ChromimumOS
> selects a boot device"?
No, this how bootstd works. It scans through the bootdevs one at a
time and invokes the bootmeths on each.
>
> > +the appropriate GUID (Globally Unique Identifier). When found, the information
> > +is loaded and a bootflow is created.
> > +
> > +When the bootflow is booted, the bootmeth reads the kernel and boot arguments.
> > +It then boots the kernel using zboot (on x86) or bootm (on ARM). The boot
> > +arguments are adjusted to replace %U with the UUID of the selected kernel
> > +partition. This results in the correct root disk being used, which is the next
> > +partition after the kernel partition.
> > +
> > +For ARM, a :doc:`/usage/fit/index` is used. The `CONFIG_FIT_BEST_MATCH` option
> > +must be enabled for U-Boot to select the correct devicetree to boot with.
> > +
> > +Note that a ChromiumOS image typically has two copies of the OS, each with its
>
> %s/OS/operating system/
>
> > +own kernel and root disk. There is no initial ramdisk (initrd). This means that
> > +this bootmeth typically locates two separate images.
> > +
> > +The compatible string "u-boot,cros" is used for the driver. The driver is
> > +automatically instantiated if there are no bootmeth drivers in the devicetree.
>
> The last sentence should be moved to the overview.
>
> Please, mention the relevant configuration option for the boot method
> driver.
>
[..]
Regards,
Simon
More information about the U-Boot
mailing list