efi bootmenu

Simon Glass sjg at chromium.org
Sat Jan 8 15:53:21 CET 2022


Hi Ilias,

On Fri, 7 Jan 2022 at 02:20, Ilias Apalodimas
<ilias.apalodimas at linaro.org> wrote:
>
> Hi Mark,
>
> [...]
> >
> > > > Also, keep in mind that BootOrder and Boot#### only really work if
> > > > there is runtime EFI variable support.  So the boot menu should
> > > > include options to select a device to boot from and use the default
> > > > (removable media) bootloader from the ESP on that device.  And a way
> > > > to make this selection stick!  Pretty much all x86 EFI implementations
> > > > provide functionality like that.  I suppose this could be done by
> > > > populating the EFI variable store with appropriate Boot#### variables
> > > > and manipulating BootOrder.  But that would make it hard to generalize
> > > > the boot menu to non-EFI boot flows.
> > >
> > > We are talking here about an EFI boot menu. Why do you mention non-EFI?
> >
> > Because Simon did, and I agree with him that U-Boot would be better of
> > with a way to select a boot device that is independent of the boot
> > mechanism.  Suppose that as a user I want to install a Linux distro on
> > my machine.  I copy the installer for that distro to a USB key and I
> > want to boot it.  But my system is set up to boot from eMMC.  U-Boot
> > should make it easy to do a one-off boot from USB without burdening
> > the user with making a choice between EFI and non-EFI boot methods and
> > just pick the boot method that makes the machine boot from the USB
> > key.
>
> The concept here is fine,  but I think we should agree on how we
> implement that.  IMHO Simon's boot series patches is a huge step
> forward compared to the distro_bootcmd.  However EFI has it's own boot
> manager and logic.  So I see two ways forward:
> 1.  Simon's bootmethod has an abstract entry called 'EFI' or something
> similar.  In that case we just invoke the efi bootmgr.
> 2.  We merge the efibootmgr code into Simon's patches.
>
> But isn't that orthogonal to the current discussion?  We can just go
> implement it for EFI now and then wire it up to whatever Simon does.

Just one tweak here...I think the concept of a boot device (bootdev)
could be useful as a way for EFI to find boot devices, so that U-Boot
and EFI can share this logic / configuration.

Regards,
Simon


More information about the U-Boot mailing list