bootflow: extlinux and menu
Heiko Thiery
heiko.thiery at gmail.com
Tue Apr 29 11:38:39 CEST 2025
Hi Simon,
Am Fr., 25. Apr. 2025 um 16:36 Uhr schrieb Simon Glass <sjg at chromium.org>:
> 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.
>
You are right. I added the missing keywords and now it works as expected.
The menu appears.
>
> 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.
>
This is not what I expected to work. But it would also be good/nice to
have. Unfortunately I cannot provide help here.
>
> Regards,
> Simon
>
More information about the U-Boot
mailing list