[PATCH 04/13] doc: Add a description for bootmeth_pxe
Simon Glass
sjg at chromium.org
Tue Jul 16 09:04:42 CEST 2024
Hi Heinrich,
On Mon, 15 Jul 2024 at 23:47, Heinrich Schuchardt <xypron.glpk at gmx.de> wrote:
>
> On 7/15/24 12:13, Simon Glass wrote:
> > Add documentation for the pxe bootmeth.
> >
> > Signed-off-by: Simon Glass <sjg at chromium.org>
> > ---
> >
> > doc/develop/bootstd/index.rst | 1 +
> > doc/develop/bootstd/overview.rst | 2 +-
> > doc/develop/bootstd/pxelinux.rst | 27 +++++++++++++++++++++++++++
> > 3 files changed, 29 insertions(+), 1 deletion(-)
> > create mode 100644 doc/develop/bootstd/pxelinux.rst
> >
> > diff --git a/doc/develop/bootstd/index.rst b/doc/develop/bootstd/index.rst
> > index 5bbb3d633a3..5052afe448f 100644
> > --- a/doc/develop/bootstd/index.rst
> > +++ b/doc/develop/bootstd/index.rst
> > @@ -8,3 +8,4 @@ Standard Boot
> >
> > overview
> > extlinux
> > + pxelinux
> > diff --git a/doc/develop/bootstd/overview.rst b/doc/develop/bootstd/overview.rst
> > index 086a0b1281d..fd0692daf0d 100644
> > --- a/doc/develop/bootstd/overview.rst
> > +++ b/doc/develop/bootstd/overview.rst
> > @@ -413,7 +413,7 @@ Available bootmeth drivers
> > Bootmeth drivers are provided for:
> >
> > - :doc:`extlinux / syslinux <extlinux>` boot from a disk
> > - - extlinux boot from a network (PXE)
> > + - :doc:`extlinux / syslinux <extlinux>` boot from a network (PXE)
> > - U-Boot scripts from disk, network or SPI flash
> > - EFI boot using bootefi from disk
> > - VBE
> > diff --git a/doc/develop/bootstd/pxelinux.rst b/doc/develop/bootstd/pxelinux.rst
> > new file mode 100644
> > index 00000000000..08ba67e09c5
> > --- /dev/null
> > +++ b/doc/develop/bootstd/pxelinux.rst
> > @@ -0,0 +1,27 @@
> > +.. SPDX-License-Identifier: GPL-2.0+:
> > +
> > +PXE Bootmeth
> > +============
> > +
> > +PXE (Preboot eXecution-Environment) provides a way to boot an Operating System
>
> %s/Operating System/operating system/
>
> > +over a network interface. The PXE bootmeth supports PXELINUX and allows U-Boot to
>
> %s/bootmeth/boot method/
>
> > +provide a menu of possible Operating Systems from which the user can choose.
>
> PXELINUX is a binary. Does U-Boot really provide a menu when the
> PXELINUX binary is downloaded and executed?
It downloads a config file which is what includes information about
the menu. I think I was a bit unclear about this when I wrote this
doc.
>
> > +
> > +U-Boot includes a parser for the `extlinux.conf` file described
> > +`here <https://uapi-group.org/specifications/specs/boot_loader_specification>`_.
> > +It consists primarily of a list of named OSes along with the kernel, initial
> > +ramdisk and other settings. The file is retrieved from a network server using
> > +tftpboot.
>
> Does this paragraph relate to PXELINUX?
>
> tftpboot is a command and not a protocol. Shouldn't boot methods work
> when the command line interface is disabled? I guess you want to replace
>
> %s/tftpboot/the TFTP protocol/
>
> > +
> > +When invoked on a bootdev, this bootmeth searches for the file and creates a
>
> %s/bootdev/boot device/
> %s/bootmeth/boot method/
>
> > +bootflow if found. See
>
> %s/bootflow/boot flow/
>
> > +`PXELINUX <https://wiki.syslinux.org/wiki/index.php?title=PXELINUX>`_ for
> > +a full description of the search procedure.
> > +
> > +When the bootflow is booted, the bootmeth calls pxe_setup_ctx() to set up the
> > +context, then pxe_process() to process the file. Depending on the contents, this
> > +may boot an OS or provide a list of options to the user, perhaps with a timeout.
> > +
> > +The compatible string "u-boot,extlinux-pxe" is used for the driver. The driver
> > +is automatically instantiated if there are no bootmeth drivers in the
> > +devicetree.
>
> Device-trees contain compatible strings for drivers, not the drivers
> themselves.
>
> If every configured boot method is enabled if there is no compatible
> string for boot methods in the device-tree, why don't we mention this in
> the overview instead of repeating ourselves?
OK done
>
> Please, mention the relevant configuration option.
Regards,
Simon
More information about the U-Boot
mailing list