From bf6cb247a5df202fbed4fd43df477d863b68fbe1 Mon Sep 17 00:00:00 2001 From: Peter Tyser Date: Thu, 30 Sep 2010 11:25:48 -0500 Subject: [PATCH] rarp: Condtionally compile rarp support Most people don't use the 'rarpboot' command, so only enable it when CONFIG_CMD_RARP is defined. Signed-off-by: Peter Tyser Signed-off-by: Ben Warren --- common/cmd_net.c | 2 ++ include/config_cmd_all.h | 1 + net/Makefile | 2 +- net/net.c | 11 +++++++++-- 4 files changed, 13 insertions(+), 3 deletions(-) diff --git a/common/cmd_net.c b/common/cmd_net.c index 3ffb9df1de..44d17db19c 100644 --- a/common/cmd_net.c +++ b/common/cmd_net.c @@ -54,6 +54,7 @@ U_BOOT_CMD( "[loadAddress] [[hostIPaddr:]bootfilename]" ); +#ifdef CONFIG_CMD_RARP int do_rarpb (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) { return netboot_common (RARP, cmdtp, argc, argv); @@ -64,6 +65,7 @@ U_BOOT_CMD( "boot image via network using RARP/TFTP protocol", "[loadAddress] [[hostIPaddr:]bootfilename]" ); +#endif #if defined(CONFIG_CMD_DHCP) int do_dhcp (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) diff --git a/include/config_cmd_all.h b/include/config_cmd_all.h index 746bf18f04..cdc5ff10fa 100644 --- a/include/config_cmd_all.h +++ b/include/config_cmd_all.h @@ -70,6 +70,7 @@ #define CONFIG_CMD_PORTIO /* Port I/O */ #define CONFIG_CMD_REGINFO /* Register dump */ #define CONFIG_CMD_REISER /* Reiserfs support */ +#define CONFIG_CMD_RARP /* rarpboot support */ #define CONFIG_CMD_RUN /* run command in env variable */ #define CONFIG_CMD_SAVEENV /* saveenv */ #define CONFIG_CMD_SAVES /* save S record dump */ diff --git a/net/Makefile b/net/Makefile index 4f819dd515..216d1ec959 100644 --- a/net/Makefile +++ b/net/Makefile @@ -32,7 +32,7 @@ COBJS-$(CONFIG_CMD_DNS) += dns.o COBJS-$(CONFIG_CMD_NET) += eth.o COBJS-$(CONFIG_CMD_NET) += net.o COBJS-$(CONFIG_CMD_NFS) += nfs.o -COBJS-$(CONFIG_CMD_NET) += rarp.o +COBJS-$(CONFIG_CMD_RARP) += rarp.o COBJS-$(CONFIG_CMD_SNTP) += sntp.o COBJS-$(CONFIG_CMD_NET) += tftp.o diff --git a/net/net.c b/net/net.c index 33fcd90cd4..d5a5429d1c 100644 --- a/net/net.c +++ b/net/net.c @@ -80,7 +80,9 @@ #include #include "bootp.h" #include "tftp.h" +#ifdef CONFIG_CMD_RARP #include "rarp.h" +#endif #include "nfs.h" #ifdef CONFIG_STATUS_LED #include @@ -401,11 +403,13 @@ restart: BootpRequest (); break; +#if defined(CONFIG_CMD_RARP) case RARP: RarpTry = 0; NetOurIP = 0; RarpRequest (); break; +#endif #if defined(CONFIG_CMD_PING) case PING: PingStart(); @@ -1492,6 +1496,7 @@ NetReceive(volatile uchar * inpkt, int len) } break; +#ifdef CONFIG_CMD_RARP case PROT_RARP: debug("Got RARP\n"); arp = (ARP_t *)ip; @@ -1515,7 +1520,7 @@ NetReceive(volatile uchar * inpkt, int len) (*packetHandler)(0,0,0,0); } break; - +#endif case PROT_IP: debug("Got IP\n"); /* Before we start poking the header, make sure it is there */ @@ -1729,10 +1734,12 @@ static int net_check_prereq (proto_t protocol) } /* Fall through */ - case DHCP: +#ifdef CONFIG_CMD_RARP case RARP: +#endif case BOOTP: case CDP: + case DHCP: if (memcmp (NetOurEther, "\0\0\0\0\0\0", 6) == 0) { #ifdef CONFIG_NET_MULTI extern int eth_get_dev_index (void);