aboutsummaryrefslogtreecommitdiff
path: root/tools/env/fw_env.h
diff options
context:
space:
mode:
authorJoe Hershberger2012-10-03 09:38:46 +0000
committerTom Rini2012-10-15 11:54:05 -0700
commit497f2053f8cdd5df412e8dd01db525eb04201ebb (patch)
tree40fda235cd1febe9731cb8aac847563ccb962a76 /tools/env/fw_env.h
parent47708457f8e3e155fc656d9b6d176aa53ced4440 (diff)
tools/env: Use a board-specific default env
Originally added in aa701b94336b358798d676eef12a7b90bdac23f5 Before this patch, there was a hard-coded env that was used as default if the env in flash is detected as invalid. Now this tool (compiled for a given board) will share the default env with the u-boot for the board. Fix include of config.h Need to define "TEXT_BASE" when building the fw_env tool so that the default env will be correct for environments which use it. Define __ASSEMBLY__ when calling #include <config.h> so that we only get #defines (all we're interested in). Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
Diffstat (limited to 'tools/env/fw_env.h')
-rw-r--r--tools/env/fw_env.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/tools/env/fw_env.h b/tools/env/fw_env.h
index ad3244664a0..a1a68074458 100644
--- a/tools/env/fw_env.h
+++ b/tools/env/fw_env.h
@@ -21,6 +21,15 @@
* MA 02111-1307 USA
*/
+/* Pull in the current config to define the default environment */
+#ifndef __ASSEMBLY__
+#define __ASSEMBLY__ /* get only #defines from config.h */
+#include <config.h>
+#undef __ASSEMBLY__
+#else
+#include <config.h>
+#endif
+
/*
* To build the utility with the static configuration
* comment out the next line.
@@ -29,6 +38,7 @@
*/
#define CONFIG_FILE "/etc/fw_env.config"
+#ifndef CONFIG_FILE
#define HAVE_REDUND /* For systems with 2 env sectors */
#define DEVICE1_NAME "/dev/mtd1"
#define DEVICE2_NAME "/dev/mtd2"
@@ -40,14 +50,23 @@
#define ENV2_SIZE 0x4000
#define DEVICE2_ESIZE 0x4000
#define DEVICE2_ENVSECTORS 2
+#endif
+#ifndef CONFIG_BAUDRATE
#define CONFIG_BAUDRATE 115200
+#endif
+
+#ifndef CONFIG_BOOTDELAY
#define CONFIG_BOOTDELAY 5 /* autoboot after 5 seconds */
+#endif
+
+#ifndef CONFIG_BOOTCOMMAND
#define CONFIG_BOOTCOMMAND \
"bootp; " \
"setenv bootargs root=/dev/nfs nfsroot=${serverip}:${rootpath} " \
"ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}::off; " \
"bootm"
+#endif
extern int fw_printenv(int argc, char *argv[]);
extern char *fw_getenv (char *name);