1 2This is a demo implementation of a Linux command line tool to access 3the U-Boot's environment variables. 4 5For the run-time utiltity configuration uncomment the line 6#define CONFIG_FILE "/etc/fw_env.config" 7in fw_env.h. 8 9For building against older versions of the MTD headers (meaning before 10v2.6.8-rc1) it is required to pass the argument "MTD_VERSION=old" to 11make. 12 13See comments in the fw_env.config file for definitions for the 14particular board. 15 16Configuration can also be done via #defines in the fw_env.h file. The 17following lines are relevant: 18 19#define HAVE_REDUND /* For systems with 2 env sectors */ 20#define DEVICE1_NAME "/dev/mtd1" 21#define DEVICE2_NAME "/dev/mtd2" 22#define DEVICE1_OFFSET 0x0000 23#define ENV1_SIZE 0x4000 24#define DEVICE1_ESIZE 0x4000 25#define DEVICE1_ENVSECTORS 2 26#define DEVICE2_OFFSET 0x0000 27#define ENV2_SIZE 0x4000 28#define DEVICE2_ESIZE 0x4000 29#define DEVICE2_ENVSECTORS 2 30 31Current configuration matches the environment layout of the TRAB 32board. 33 34Un-define HAVE_REDUND, if you want to use the utlities on a system 35that does not have support for redundant environment enabled. 36If HAVE_REDUND is undefined, DEVICE2_NAME is ignored, 37as is ENV2_SIZE and DEVICE2_ESIZE. 38 39The DEVICEx_NAME constants define which MTD character devices are to 40be used to access the environment. 41 42The DEVICEx_OFFSET constants define the environment offset within the 43MTD character device. 44 45ENVx_SIZE defines the size in bytes taken by the environment, which 46may be less then flash sector size, if the environment takes less 47then 1 sector. 48 49DEVICEx_ESIZE defines the size of the first sector in the flash 50partition where the environment resides. 51 52DEVICEx_ENVSECTORS defines the number of sectors that may be used for 53this environment instance. On NAND this is used to limit the range 54within which bad blocks are skipped, on NOR it is not used. 55