CC: Jerome Hi Jan, and Heinrich, et al.
On 8/19/25 07:45, Heinrich Schuchardt wrote: > On 19.08.25 16:33, Jan Kiszka wrote: >> From: Jan Kiszka <jan.kis...@siemens.com> >> >> This is needed because distro_efi_read_bootflow_net will then need >> dhcp_run which is not already enabled by CMD_NET. >> >> Signed-off-by: Jan Kiszka <jan.kis...@siemens.com> >> --- >> lib/efi_loader/Kconfig | 1 + >> 1 file changed, 1 insertion(+) >> >> diff --git a/lib/efi_loader/Kconfig b/lib/efi_loader/Kconfig >> index c2aa88f59fb..a4055e1cb43 100644 >> --- a/lib/efi_loader/Kconfig >> +++ b/lib/efi_loader/Kconfig >> @@ -564,6 +564,7 @@ config EFI_HTTP_BOOT >> bool "EFI HTTP Boot support" >> depends on NET || NET_LWIP >> select CMD_NET >> + select CMD_DHCP > > It would be preferable to get rid of all CMD_* symbols here. They are > just the result of missing separation of CLI and library. > > DHCP is not needed to boot via HTTP. You can manually set up a network > interface. > > Please, change your patch to use "implies". > > Best regards > > Heinrich > >> select CMD_DNS >> select CMD_WGET >> select BLKMAP > Yes this is the overall trouble I see and why I am writing [1] about symbol names being shortened too much. It would be self-documenting and more readable to refactor the network protocol symbol names throughout U-Boot allowing as: select PROTO_NET_DHCP select PROTO_NET_DNS select PROTO_NET_HTTP select BLKMAP ...where there is no question what is intended. Compare to: select DHCP select DNS select HTTP select BLKMAP ...is very short, but not helpful for code maintenance, and in my opinion very quickly reading this code block I do not understand which symbols are network protocols; and searching the code base for all network protocols in config is not simple, there is not enough information. It makes most sense to me reading that CONFIG_CMD_DNS selects PROTO_NET_DNS and if I am writing some code elsewhere this example is easy to understand I should select PROTO_NET_DNS I favor a wider change of renaming symbols for legacy network NET to become LNET and then the result can be "NET" refers to any network stack including LNET and LWIP. Then what I have suggested here for the context of this patch will not be confused about selecting legacy network protocols; it is about being readable and simple to understand quickly. 1: "Re: [PATCH] net: introduce CONFIG_DNS" https://lore.kernel.org/u-boot/d77f193b-0b0a-44cd-b0e0-7da83a6a8...@freeshell.de/ - E Shattow