[PATCH] bootstd: Allow PXE boot to be disabled

Tony Dinh mibodhi at gmail.com
Sat Oct 11 21:41:06 CEST 2025


On Sat, Oct 11, 2025 at 7:37 AM Tom Rini <trini at konsulko.com> wrote:
>
> On Sat, Oct 11, 2025 at 01:03:39PM +0100, Peter Robinson wrote:
> > On Fri, 10 Oct 2025 at 15:28, Tom Rini <trini at konsulko.com> wrote:
> > >
> > > On Thu, Oct 09, 2025 at 10:29:17PM -0700, Tony Dinh wrote:
> > >
> > > > Make it possible to disable CMD_PXE.
> > > > Remove unnecessary PXE_UTILS selection in BOOTMETH_EXTLINUX config.
> > > > In extlinux_boot(), invoke pxe utils only when
> > > > CONFIG_BOOTMETH_EXTLINUX_PXE is enabled.
> > > >
> > > > This patch results in about 9K reduction in image size when
> > > > PXE boot is disabled.
> > > >
> > > > Signed-off-by: Tony Dinh <mibodhi at gmail.com>
> > > > ---
> > > >
> > > >  boot/Kconfig             |  3 +--
> > > >  boot/bootmeth_extlinux.c | 18 ++++++++++--------
> > > >  2 files changed, 11 insertions(+), 10 deletions(-)
> > >
> > > Is some part of the symbol logic here wrong? A challenge is that "PXE"
> > > is also where the logic to parse extlinux.conf style files came from,
> > > and I thought we had split those two out. And then there's this:
> > >
> > > >
> > > > diff --git a/boot/Kconfig b/boot/Kconfig
> > > > index 2993cd7f9ba..403ce4c3d46 100644
> > > > --- a/boot/Kconfig
> > > > +++ b/boot/Kconfig
> > > > @@ -421,10 +421,10 @@ config BOOT_DEFAULTS_CMDS
> > > >       select CMD_PART if PARTITIONS
> > > >       select CMD_DHCP if CMD_NET
> > > >       select CMD_PING if CMD_NET
> > > > -     select CMD_PXE if CMD_NET
> > > >       select CMD_BOOTI if ARM64
> > > >       select CMD_BOOTZ if ARM && !ARM64
> > > >       imply CMD_MII if NET
> > > > +     imply CMD_PXE if CMD_NET
> > >
> > > This is one of the things where defaults isn't supposed to be so easy to
> > > get out of. How many platforms are you wanting to then disable CMD_PXE
> > > on to save space?
> >
> > PXE is generally being removed in a lot of cases as it's not
> > considered secure and now we have HTTP Boot there are other means of
> > doing network booting so I think we'll see more and more situations
> > where we want to disable PXE.
> >
> > This is actually something I've been meaning to look at so it's
> > something I would love to see :)

Glad to hear :)

>
> And in the world where we also can't just remove ATAGS support because
> distros (Debian at least) still boots some modern platforms via ATAGS +
> appended device tree, the high level options for "boot this anywhere"
> need to perhaps be different from "very modern requirements only
> distro". I'm not objecting to be clear.

As Tom suggested previously, perhaps looking from a different angle.
We can disable BOOTSTD_FULL and then try adding only options that are
needed for a board. Unfortunately this approach did not work when I
tried it in the past. It seems for bootstd to work well, we need to
take the whole thing by enabling BOOTSTD_FULL.

All the best,
Tony

>
> --
> Tom


More information about the U-Boot mailing list