This is a demo implementation of a Linux command line tool to access the U-Boot's environment variables. Configuration is done via #defines in the fw_env.h file. The following lines are relevant: #define HAVE_REDUND /* For systems with 2 env sectors */ #define DEVICE1_NAME "/dev/mtd1" #define DEVICE2_NAME "/dev/mtd2" #define ENV1_SIZE 0x4000 #define DEVICE1_ESIZE 0x4000 #define ENV2_SIZE 0x4000 #define DEVICE2_ESIZE 0x4000 Current configuration matches the environment layout of the TRAB board. Un-define HAVE_REDUND, if you want to use the utlities on a system that does not have support for redundant environment enabled. The DEVICEx_NAME constants define which MTD character device(s) is (are) to be used to access the environment. If HAVE_REDUND is undefined, DEVICE2_NAME is ignored, as is ENV2_SIZE and DEVICE2_ESIZE. ENVx_SIZE defines the size in bytes taken by the environment, which may be less then flash sector size, if the environment takes less then 1 sector. DEVICEx_ESIZE defines the size of the first sector in the flash partition where the environment resides. It is assumed that the environment is located in the first ENVx_SIZE bytes of the device DEVICEx_NAME.