On Fri, May 24, 2024 at 06:19:55PM +0200, Jerome Forissier wrote:

> Prepare the introduction of the lwIP (lightweight IP) TCP/IP stack by
> adding a new net-lwip/ directory and the NET_LWIP symbol. At this
> point, enabling NET_LWIP simply disables NET. Subsequent commits will
> introduce the lwIP code, re-work the NETDEVICE integration and port
> some of the NET commands and features to lwIP.
> 
> SPL_NET cannot be enabled when NET_LWIP=y. SPL_NET pulls some symbols
> that are part of NET (such as arp_init(), arp_timeout_check(),
> arp_receive(), net_arp_wait_packet_ip()). lwIP support in SPL may be
> added later.
> 
> Similarly, DFU_TFTP is not compatible with NET_LWIP because it depends
> on net_loop(), tftp_timeout_ms, tftp_timeout_count_max. Let's add a
> dependency on !NET_LWIP for now.
> 
> Signed-off-by: Jerome Forissier <jerome.foriss...@linaro.org>
[snip]
> diff --git a/Kconfig b/Kconfig
> index 82df59f176e..758256ab121 100644
> --- a/Kconfig
> +++ b/Kconfig
> @@ -747,6 +747,8 @@ source "env/Kconfig"
>  
>  source "net/Kconfig"
>  
> +source "net-lwip/Kconfig"
> +
>  source "drivers/Kconfig"
>  
>  source "fs/Kconfig"

I think we need to instead rework this to a choice statement instead so
that in the end we have something like:
choice "Networking stack"
config NO_NET
  bool "No networking support"
config NET
  bool "Legacy U-Boot networking stack"
config NET_LWIP
  bool "Use lwIP for networking stack"

if NET_LEGACY
source "net/Kconfig"
endif

if NET_LWIP
source "net-lwip/Kconfig"
endif

And then SPL_NET still depends on !NET_LWIP for now and we sort out the
problems with different networking stacks in SPL vs full U-Boot later
on.

-- 
Tom

Attachment: signature.asc
Description: PGP signature

Reply via email to