[PATCH v4 00/33] Initial implementation of standard boot

Simon Glass sjg at chromium.org
Sun Mar 13 23:23:15 CET 2022


Hi Mark,

On Sun, 13 Mar 2022 at 09:47, Mark Kettenis <mark.kettenis at xs4all.nl> wrote:
>
> > From: Simon Glass <sjg at chromium.org>
> > Date: Sun,  6 Mar 2022 05:49:43 -0700
> >
> > The bootflow feature provide a built-in way for U-Boot to automatically
> > boot an Operating System without custom scripting and other customisation.
> > This is called 'standard boot' since it provides a standard way for
> > U-Boot to boot a distro, without scripting.
> >
> > It introduces the following concepts:
> >
> >    - bootdev - a device which can hold a distro
> >    - bootmeth - a method to scan a bootdev to find bootflows (owned by
> >                 U-Boot)
> >    - bootflow - a description of how to boot (owned by the distro)
> >
> > This series provides an implementation of these, enabled to scan for
> > bootflows from MMC, USB and Ethernet. It supports the existing distro
> > boot as well as the EFI loader flow (bootefi/bootmgr). It works
> > similiarly to the existing script-based approach, but is native to
> > U-Boot.
> >
> > With this we can boot on a Raspberry Pi 3 with just one command:
> >
> >    bootflow scan -lb
> >
> > which means to scan, listing (-l) each bootflow and trying to boot each
> > one (-b). The final patch shows this.
> >
> > With a standard way to identify boot devices, booting become easier. It
> > also should be possible to support U-Boot scripts, for backwards
> > compatibility only.
>
> For the record.  In its current state this series breaks booting on
> Apple M1:
>
>   Hit any key to stop autoboot: 0
>   Flags not supported: enable CONFIG_BOOTFLOW_FULL
>   bootflow - Boot flows
>
>   Usage:
>   bootflow scan - boot first available bootflow
>
>   =>
>
> I'll see if I can actually convert this board to "standard boot".  But
> I think this means that this breaks the majority of the boards
> currently in the tree.

Ah yes, I put an error on that command when flags are given. You can
enable CONFIG_BOOTFLOW_FULL to get that back. For now, 'bootflow scan'
just scans and boots and does not support args. See
do_bootflow_scan().

I will update the cover letter so it just says 'bootflow scan'.

Regards,
SImon


More information about the U-Boot mailing list