[syslinux] Purpose of 'localboot'
Tom Rini
trini at konsulko.com
Thu Jan 9 18:22:19 CET 2025
On Thu, Jan 09, 2025 at 04:30:53PM +0100, Frantisek Rysanek wrote:
> > Hi,
> >
> > The documentation on this feature[1] doesn't quite explain how the
> > system should actually do a localboot. Is this for BIOS / x86 only?
> > There was a recent discussion about this on the U-Boot mailing
> > list[2].
> >
> > Is someone able to help with how / if this should be implemented in
> > U-Boot?
> >
> > Regards,
> > Simon
> >
>
> I feel that you actually understand the whole point :-)
>
> Syslinux is a bootloader for the PC's - those have a BIOS and
> nowadays a Bios Boot Sequence (BBS). And, a specific member of the
> syslinux family (package) is pxelinux, which loads from the LAN.
>
> The "local" boot means, that while the PC is trying to boot, in a
> particular step of the BIOS Boot Sequence (= the order of bootable
> devices) it has loaded PXElinux, and now the user has a choice,
> either to chainload some "payload" (e.g. the Linux kernel + initrd or
> some such via TFTP), or to hand over to the next entry in the "BIOS
> Boot Sequence" - effectively by calling an "iret" at the top-level
> function called by its respective BBS entry, which is effectively a
> software interrupt... which will end up trying another boot media,
> the next one up in the BBS.
>
> Yes this is specific to machines having a BIOS.
>
> Not sure about UEFI, the bootloader loading mechanism is different,
> but Syslinux never quite got there with UEFI, so I believe this point
> is moot.
> I haven't actually tried this with iPXE, there doesn't seem to be an
> explicit keyword for this. Possibly if you "let the ipxe boot script
> fall off the end" or by calling an exit... or possibly not.
> https://www.google.com/search?q=UEFI+exit+ipxe+and+try+the+next+boot+e
> ntry%3F
>
> Now compare that to uBoot. Who typically has just a single purpose in
> life, and a single option what to boot: the one kernel and initrd,
> typically from a NAND flash MTD (or sometimes NOR flash for that
> matter). You can possibly break normal boot and try loading something
> via TFTP...
So the reason Simon is asking is that the syslinux / pxelinux file
format is used outside of just the syslinux project, but it's a little
unclear what the authoritative source is (systemd used to have a page,
but that moved and then got dropped). We're hoping to find what the real
intent of the keyword is, so that
https://docs.u-boot.org/en/latest/develop/distro.html#boot-configuration-files
can say the right thing, rather than the few stackoverflow examples of
how people use "localboot" within U-Boot today.
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20250109/b2ef9db8/attachment.sig>
More information about the U-Boot
mailing list