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