[U-Boot] [PATCH 1/9] net: Make CMD_NET a menuconfig
Duncan Hare
dh at synoia.com
Thu Mar 29 16:19:30 UTC 2018
From: Joe Hershberger <joe.hershberger at ni.com>
To: u-boot at lists.denx.de
Cc: Heinrich <Schuchardt.xypron.debian at gmx.de>; Michal Simek <michal.simek at xilinx.com>; Simon Glass <sjg at chromium.org>; Duncan Hare <dh at synoia.com>; Tom Rini <trini at konsulko.com>; Maxime Ripard <maxime.ripard at bootlin.com>; Joe Hershberger <joe.hershberger at ni.com>
Sent: Wednesday, March 28, 2018 1:53 PM
Subject: [PATCH 1/9] net: Make CMD_NET a menuconfig
Previously, CMD_NET was an alias for 2 commands (bootp and tftpboot) and
they we not able to be disabled. Separate out those 2 commands and move
CMD_NET up to the menu level, which more accurately represents the code.
Signed-off-by: Joe Hershberger <joe.hershberger at ni.com>
---
cmd/Kconfig | 25 +++++++++++++++++--------
cmd/net.c | 4 ++++
net/Kconfig | 19 +++++++++----------
net/Makefile | 4 ++--
4 files changed, 32 insertions(+), 20 deletions(-)
diff --git a/cmd/Kconfig b/cmd/Kconfig
index 136836d..f2a12ce 100644
--- a/cmd/Kconfig
+++ b/cmd/Kconfig
@@ -1010,25 +1010,35 @@ config CMD_SETEXPR
endmenu
-menu "Network commands"
-
if NET
-config CMD_NET
- bool "bootp, tftpboot"
+menuconfig CMD_NET
+ bool "Network commands"
+ default y
+
+if CMD_NET
+
+config CMD_BOOTP
+ bool "bootp"
default y
help
- Network commands.
bootp - boot image via network using BOOTP/TFTP protocol
+
+config CMD_TFTPBOOT
+ bool "tftpboot"
+ default y
+ help
tftpboot - boot image via network using TFTP protocol
config CMD_TFTPPUT
bool "tftp put"
+ depends on CMD_TFTPBOOT
help
TFTP put command, for uploading files to a server
config CMD_TFTPSRV
bool "tftpsrv"
+ depends on CMD_TFTPBOOT
help
Act as a TFTP server and boot the first received file
@@ -1039,13 +1049,12 @@ config CMD_RARP
config CMD_DHCP
bool "dhcp"
- depends on CMD_NET
+ depends on CMD_BOOTP
help
Boot image via network using DHCP/TFTP protocol
config CMD_PXE
bool "pxe"
- depends on CMD_NET
select MENU
help
Boot image via network using PXE protocol
@@ -1096,7 +1105,7 @@ config CMD_ETHSW
endif
-endmenu
+endif
menu "Misc commands"
diff --git a/cmd/net.c b/cmd/net.c
index d7c776a..67888d4 100644
--- a/cmd/net.c
+++ b/cmd/net.c
@@ -14,6 +14,7 @@
static int netboot_common(enum proto_t, cmd_tbl_t *, int, char * const []);
+#ifdef CONFIG_CMD_BOOTP
static int do_bootp(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
{
return netboot_common(BOOTP, cmdtp, argc, argv);
@@ -24,7 +25,9 @@ U_BOOT_CMD(
"boot image via network using BOOTP/TFTP protocol",
"[loadAddress] [[hostIPaddr:]bootfilename]"
);
+#endif
+#ifdef CONFIG_CMD_TFTPBOOT
int do_tftpb(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
{
int ret;
@@ -40,6 +43,7 @@ U_BOOT_CMD(
"boot image via network using TFTP protocol",
"[loadAddress] [[hostIPaddr:]bootfilename]"
);
+#endif
#ifdef CONFIG_CMD_TFTPPUT
static int do_tftpput(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
diff --git a/net/Kconfig b/net/Kconfig
index 143c441..d421a34 100644
--- a/net/Kconfig
+++ b/net/Kconfig
@@ -24,7 +24,7 @@ config NETCONSOLE
config NET_TFTP_VARS
bool "Control TFTP timeout and count through environment"
- depends on CMD_NET
+ depends on CMD_TFTPBOOT
default y
help
If set, allows controlling the TFTP timeout through the
@@ -35,39 +35,38 @@ config NET_TFTP_VARS
config BOOTP_BOOTPATH
bool "Enable BOOTP BOOTPATH"
- depends on CMD_NET
+ depends on CMD_BOOTP
config BOOTP_DNS
bool "Enable bootp DNS"
- depends on CMD_NET
+ depends on CMD_BOOTP
config BOOTP_GATEWAY
bool "Enable BOOTP gateway"
- depends on CMD_NET
+ depends on CMD_BOOTP
config BOOTP_HOSTNAME
bool "Enable BOOTP hostname"
- depends on CMD_NET
+ depends on CMD_BOOTP
config BOOTP_PXE
bool "Enable BOOTP PXE"
- depends on CMD_NET
+ depends on CMD_BOOTP
config BOOTP_SUBNETMASK
bool "Enable BOOTP subnetmask"
- depends on CMD_NET
- depends on CMD_NET
+ depends on CMD_BOOTP
config BOOTP_PXE_CLIENTARCH
hex
- depends on CMD_NET
+ depends on CMD_BOOTP
default 0x16 if ARM64
default 0x15 if ARM
default 0 if X86
config BOOTP_VCI_STRING
string
- depends on CMD_NET
+ depends on CMD_BOOTP
default "U-Boot.armv7" if CPU_V7 || CPU_V7M
default "U-Boot.armv8" if ARM64
default "U-Boot.arm" if ARM
diff --git a/net/Makefile b/net/Makefile
index ae54eee..ed102ec 100644
--- a/net/Makefile
+++ b/net/Makefile
@@ -9,7 +9,7 @@
obj-y += checksum.o
obj-$(CONFIG_CMD_NET) += arp.o
-obj-$(CONFIG_CMD_NET) += bootp.o
+obj-$(CONFIG_CMD_BOOTP) += bootp.o
obj-$(CONFIG_CMD_CDP) += cdp.o
obj-$(CONFIG_CMD_DNS) += dns.o
ifdef CONFIG_DM_ETH
@@ -24,7 +24,7 @@ obj-$(CONFIG_CMD_NFS) += nfs.o
obj-$(CONFIG_CMD_PING) += ping.o
obj-$(CONFIG_CMD_RARP) += rarp.o
obj-$(CONFIG_CMD_SNTP) += sntp.o
-obj-$(CONFIG_CMD_NET) += tftp.o
+obj-$(CONFIG_CMD_TFTPBOOT) += tftp.o
# Disable this warning as it is triggered by:
# sprintf(buf, index ? "foo%d" : "foo", index)
--
1.7.11.5
Reviewed by Duncan Hare, dh at synoia.com
More information about the U-Boot
mailing list