bootflow: extlinux and menu
Simon Glass
sjg at chromium.org
Fri Apr 25 16:36:16 CEST 2025
Hi Heiko,
On Fri, 25 Apr 2025 at 02:20, Heiko Thiery <heiko.thiery at gmail.com> wrote:
>
> Hi Tom,
>
> Am Do., 24. Apr. 2025 um 19:49 Uhr schrieb Heiko Thiery
> <heiko.thiery at gmail.com>:
> >
> > Hi,
> >
> > Am Do., 24. Apr. 2025 um 19:45 Uhr schrieb Tom Rini <trini at konsulko.com>:
> > >
> > > On Thu, Apr 24, 2025 at 07:36:06PM +0200, Heiko Thiery wrote:
> > >
> > > > Hi,
> > > >
> > > > I tried bootflow for the first time and wanted to test my extlinux
> > > > configuration with separate menu entries. But I don't see that the
> > > > menu is shown. The default value is always selected. Am I right in
> > > > thinking that this is not supported with extlinux?
> > >
> > > I suspect Simon also found this recently and fixed it as part of another
> > > series. It's likely in:
> > > https://patchwork.ozlabs.org/project/uboot/list/?series=449177&state=*
> > > It wasn't based on master or next:
> > > https://patchwork.ozlabs.org/project/uboot/cover/20250319143820.2385092-1-sjg@chromium.org/
> > > And some of the tidying up lead to size growth in a number of platforms:
> > > https://patchwork.ozlabs.org/project/uboot/patch/20250319143820.2385092-2-sjg@chromium.org/
> > > Along with needing to document some of the user visible changes:
> > > https://patchwork.ozlabs.org/project/uboot/patch/20250319143820.2385092-7-sjg@chromium.org/
> > >
> > > You might want to see if just patches 7 / 8 / 9 resolve the issue you
> > > see and if so we can get just those merged in.
> >
> > Sounds promising. I will try to test this in the next days (when I'm
> > back in office) and give you a feedback.
>
> Unfortunately it does not solve the problem. What I have is the
> following extlinux config file on my boot partition:
>
> >>>> extlinux.conf
> label Kontron SMARC-sAM67
> kernel /Image
> devicetree /k3-am67a-kontron-sa67.dtb
> append root=PARTUUID=f615c46d-fe53-4547-8875-4c21438d931e rootwait
>
> label Kontron SMARC-sAM67 on Evaluation Carrier 2.0
> kernel /Image
> devicetree /k3-am67a-kontron-sa67.dtb
> devicetree-overlay /k3-am67a-kontron-sa67-ads2.dtbo
> append root=PARTUUID=f615c46d-fe53-4547-8875-4c21438d931e rootwait
> >>>>
>
> >>>> output
> [SDHC] => bootflow scan
> Cannot persist EFI variables without system partition
> Bus usb at 31000000: Register 1000840 NbrPorts 1
> Starting the controller
> USB XHCI 1.10
> Bus usb at 31200000: cdns-usb3-host usb at 31200000: set 1 has failed, back to 0
> scanning bus usb at 31000000 for devices... 1 USB Device(s) found
> scanning bus usb at 31200000 for devices... 1 USB Device(s) found
>
> Error: ethernet at 8000000ethernet@800000 No valid MAC address found.
>
> Error: ethernet at 8000000ethernet@800000 No valid MAC address found.
> [SDHC] => bootflow list
> Showing all bootflows
> Seq Method State Uclass Part Name Filename
> --- ----------- ------ -------- ---- ------------------------
> ----------------
> 0 efi_mgr ready (none) 0 <NULL>
> 1 extlinux ready mmc 1 mmc at fa10000.bootdev.part_
> /extlinux/extlinux.conf
> 2 extlinux ready mmc 1 mmc at fa00000.bootdev.part_
> /extlinux/extlinux.conf
> --- ----------- ------ -------- ---- ------------------------
> ----------------
> (3 bootflows, 3 valid)
> [SDHC] => bootflow select 1
> [SDHC] => bootflow info
> Name: mmc at fa10000.bootdev.part_1
> Device: mmc at fa10000.bootdev
> Block dev: mmc at fa10000.blk
> Method: extlinux
> State: ready
> Partition: 1
> Subdir: (none)
> Filename: /extlinux/extlinux.conf
> Buffer: ffad2b80
> Size: 17f (383 bytes)
> OS: Kontron SMARC-sAM67 on Evaluation Carrier 2.0
> Cmdline: (none)
> Logo: (none)
> FDT: <NULL>
> Error: 0
> [SDHC] => bootflow select 2
> [SDHC] => bootflow info
> Name: mmc at fa00000.bootdev.part_1
> Device: mmc at fa00000.bootdev
> Block dev: mmc at fa00000.blk
> Method: extlinux
> State: ready
> Partition: 1
> Subdir: (none)
> Filename: /extlinux/extlinux.conf
> Buffer: ffad3b80
> Size: 17f (383 bytes)
> OS: Kontron SMARC-sAM67 on Evaluation Carrier 2.0
> Cmdline: (none)
> Logo: (none)
> FDT: <NULL>
> Error: 0
> [SDHC] =>
> >>>>
>
> For both found extlinux based entries it shows in the OS info line
> "Kontron SMARC-sAM67 on Evaluation Carrier 2.0" that is the name/label
> of the seconds entry. But when booting either 1 or 2 it always loads
> the first entry of extlinux without loading and applying the overlay.
>
> Also support for having the menu shown is also not available.
The behaviour you should see is that (after the bootflow menu) you
should see a separate 'extlinux' menu which allows you to choose the
correct entry. So you will need 'menu label' instead of label.
As Tom mentions my tree has some additional patches here:
https://sjg.u-boot.org/u-boot/u-boot.git
in case that helps.
As to what you really want (putting each extlinux item in a separate
bootflow), that's the next step. I will get back to it, but most
likely not before the end of June. If you would like to try
implementing it yourself, let me know and I can send some pointers.
Regards,
Simon
More information about the U-Boot
mailing list