net: lwip: nfs: Port the NFS code to work with lwIP

After the preparatory patches moved most of the NFS code into common
files we now add the code to enable NFS support with lwIP.

Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org>
Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
This commit is contained in:
Andrew Goodbody
2025-12-12 11:32:28 +00:00
committed by Jerome Forissier
parent 3bc1197e3d
commit 230cf3bc27
7 changed files with 317 additions and 15 deletions

View File

@@ -2116,20 +2116,6 @@ config CMD_RARP
help
Boot image via network using RARP/TFTP protocol
config CMD_NFS
bool "nfs"
help
Boot image via network using NFS protocol.
config NFS_TIMEOUT
int "Timeout in milliseconds for NFS mounts"
depends on CMD_NFS
default 2000
help
Timeout in milliseconds used in NFS protocol. If you encounter
"ERROR: Cannot umount" in nfs command, try longer timeout such as
10000.
config SYS_DISABLE_AUTOLOAD
bool "Disable automatically loading files over the network"
depends on CMD_BOOTP || CMD_DHCP || CMD_NFS || CMD_RARP
@@ -2224,6 +2210,20 @@ config CMD_MDIO
The MDIO interface is orthogonal to the MII interface and extends
it by adding access to more registers through indirect addressing.
config CMD_NFS
bool "nfs"
help
Boot image via network using NFS protocol.
config NFS_TIMEOUT
int "Timeout in milliseconds for NFS mounts"
depends on CMD_NFS
default 2000
help
Timeout in milliseconds used in NFS protocol. If you encounter
"ERROR: Cannot umount" in nfs command, try longer timeout such as
10000.
config CMD_PING
bool "ping"
select PROT_RAW_LWIP if NET_LWIP

View File

@@ -1,5 +1,6 @@
obj-$(CONFIG_CMD_DHCP) += dhcp.o
obj-$(CONFIG_CMD_DNS) += dns.o
obj-$(CONFIG_CMD_NFS) += nfs.o
obj-$(CONFIG_CMD_PING) += ping.o
obj-$(CONFIG_CMD_SNTP) += sntp.o
obj-$(CONFIG_CMD_TFTPBOOT) += tftp.o

11
cmd/lwip/nfs.c Normal file
View File

@@ -0,0 +1,11 @@
// SPDX-License-Identifier: GPL-2.0+
/* Copyright (C) 2025 Linaro Ltd. */
#include <command.h>
#include <net.h>
U_BOOT_CMD(nfs, 3, 1, do_nfs,
"boot image via network using NFS protocol",
"[loadAddress] [[hostIPaddr:]bootfilename]"
);