[PATCH v2] spl: fix incorrect dependency for SPL_NET
Quentin Schulz
foss+uboot at 0leil.net
Thu Jan 8 13:28:36 CET 2026
From: Quentin Schulz <quentin.schulz at cherry.de>
When SPL_NET is included, scripts/Makefile.xpl includes net/. However,
in this directory, the Makefile only compiles things if CONFIG_NET or
CONFIG_NET_LWIP is defined (it doesn't use $(PHASE_)). Therefore, at
least one networking stack needs to be enabled for SPL_NET=y to do
anything meaningful.
In certain cases (e.g. am62px_evm_r5_ethboot_defconfig + NO_NET=y via
menuconfig), it is possible to fail the build with undefined references
(since include/net-common.h does check with CONFIG_IS_ENABLED(NET) which
would be true for SPL_NET, but the implementation wouldn't be compiled).
Fix this oversight by making sure a network stack (and the legacy one)
is available when selecting SPL_NET.
Fixes: 8cb330355bd5 ("net: introduce alternative implementation as net/lwip/")
Reviewed-by: Jerome Forissier <jerome.forissier at linaro.org>
Signed-off-by: Quentin Schulz <quentin.schulz at cherry.de>
---
I'm wondering if this is the proper fix... Maybe we should migrate
net/Makefile to use $(PHASE_) there instead? This would allow SPL_NET
(haven't checked the whole codebase, maybe we still have CONFIG_NET
checks instead of IS_ENABLED(NET) where we shouldn't) to build without
any network stack in proper (meaning that SPL_NET is selecting the
legacy networking stack for SPL only), and maybe even that would allow
us to have legacy stack in SPL and lwip stack in proper? This seems like
a much bigger task than this simple patch here.
---
Changes in v2:
- Added Rb from Jerome,
- Reworded commit log,
- Added question on whether this is the proper fix now that I spent a
bit more time looking at it,
- Rebased on top of master,
- Link to v1: https://patch.msgid.link/20251218-spl_net-deps-v1-1-e943f3899574@cherry.de
---
common/spl/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/common/spl/Kconfig b/common/spl/Kconfig
index 4f4119f5806..c7db88345b4 100644
--- a/common/spl/Kconfig
+++ b/common/spl/Kconfig
@@ -1153,7 +1153,7 @@ config SPL_DM_SPI_FLASH
config SPL_NET
bool "Support networking"
- depends on !NET_LWIP
+ depends on NET
select SPL_USE_TINY_PRINTF_POINTER_SUPPORT if SPL_USE_TINY_PRINTF
help
Enable support for network devices (such as Ethernet) in SPL.
---
base-commit: 141be72e2a9d43aa4e3d1a6a6e0ab8f9eb8784c6
change-id: 20251218-spl_net-deps-62072f51243a
Best regards,
--
Quentin Schulz <quentin.schulz at cherry.de>
More information about the U-Boot
mailing list