Hi Tom, On Fri, Oct 10, 2025 at 1:07 PM Tom Rini <[email protected]> wrote: > > On Fri, Oct 10, 2025 at 12:38:58PM -0700, Tony Dinh wrote: > > Hi Tom & Simon, > > > > On Fri, Oct 10, 2025 at 7:28 AM Tom Rini <[email protected]> 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 <[email protected]> > > > > --- > > > > > > > > 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? > > > > I'm simply trying to compile out PXE for a board that I'm working on! > > The only thing I need is booting with scripts on a block device. And > > it looks like we have to include everything in bootstd to use it. It > > seems wrong to make the image a lot larger than needed for boards that > > never use a specific feature. > > > > I would agree about "defaults isn't supposed to be so easy to get out > > of". But in this case (and similarly in other CMD_x), CMD_PXE brings > > in all dependencies for PXE including pxe_utils. > > So, as a preface, it's quite likely that we do need to tweak some of the > Kconfig logic here. To help better understand the use case: > - Does this platform have networking devices in U-Boot? > - Are you wanting to support arbitrary off the shelf OS distributions?
Yes to both. Networking is enabled in U-Boot, but not used for booting. And it should boot various off-the-shell OS. U-Boot is on a 512KB partition on SPI flash (why I want to keep u-boot image as small as possible). Thanks for your reply! Tony > Because if you don't have networking at all, then we should indeed be > able to bring the library part of PXE (parse extlinux.conf style files) > without bringing in all of PXE. > > If you don't want to allow arbitrary OS distributions then it should be > possible to turn off the CONFIG that brings in everything an arbitrary > OS might want (for example, install via network) and still have > standard boot available for block devices and scripts and extlinux > support. > > -- > Tom

