mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-28 15:41:40 +00:00
fw_env: add NAND support
Add support for environment in NAND with automatic NOR / NAND recognition, including unaligned environment, bad-block skipping, redundant environment copy. Signed-off-by: Guennadi Liakhovetski <lg@denx.de>
This commit is contained in:
parent
dd794323a2
commit
5608692104
3 changed files with 622 additions and 275 deletions
6
tools/env/README
vendored
6
tools/env/README
vendored
|
@ -22,9 +22,11 @@ following lines are relevant:
|
||||||
#define DEVICE1_OFFSET 0x0000
|
#define DEVICE1_OFFSET 0x0000
|
||||||
#define ENV1_SIZE 0x4000
|
#define ENV1_SIZE 0x4000
|
||||||
#define DEVICE1_ESIZE 0x4000
|
#define DEVICE1_ESIZE 0x4000
|
||||||
|
#define DEVICE1_ENVSECTORS 2
|
||||||
#define DEVICE2_OFFSET 0x0000
|
#define DEVICE2_OFFSET 0x0000
|
||||||
#define ENV2_SIZE 0x4000
|
#define ENV2_SIZE 0x4000
|
||||||
#define DEVICE2_ESIZE 0x4000
|
#define DEVICE2_ESIZE 0x4000
|
||||||
|
#define DEVICE2_ENVSECTORS 2
|
||||||
|
|
||||||
Current configuration matches the environment layout of the TRAB
|
Current configuration matches the environment layout of the TRAB
|
||||||
board.
|
board.
|
||||||
|
@ -46,3 +48,7 @@ then 1 sector.
|
||||||
|
|
||||||
DEVICEx_ESIZE defines the size of the first sector in the flash
|
DEVICEx_ESIZE defines the size of the first sector in the flash
|
||||||
partition where the environment resides.
|
partition where the environment resides.
|
||||||
|
|
||||||
|
DEVICEx_ENVSECTORS defines the number of sectors that may be used for
|
||||||
|
this environment instance. On NAND this is used to limit the range
|
||||||
|
within which bad blocks are skipped, on NOR it is not used.
|
||||||
|
|
885
tools/env/fw_env.c
vendored
885
tools/env/fw_env.c
vendored
File diff suppressed because it is too large
Load diff
6
tools/env/fw_env.config
vendored
6
tools/env/fw_env.config
vendored
|
@ -1,7 +1,11 @@
|
||||||
# Configuration file for fw_(printenv/saveenv) utility.
|
# Configuration file for fw_(printenv/saveenv) utility.
|
||||||
# Up to two entries are valid, in this case the redundand
|
# Up to two entries are valid, in this case the redundand
|
||||||
# environment sector is assumed present.
|
# environment sector is assumed present.
|
||||||
|
# Notice, that the "Number of sectors" is ignored on NOR.
|
||||||
|
|
||||||
# MTD device name Device offset Env. size Flash sector size
|
# MTD device name Device offset Env. size Flash sector size Number of sectors
|
||||||
/dev/mtd1 0x0000 0x4000 0x4000
|
/dev/mtd1 0x0000 0x4000 0x4000
|
||||||
/dev/mtd2 0x0000 0x4000 0x4000
|
/dev/mtd2 0x0000 0x4000 0x4000
|
||||||
|
|
||||||
|
# NAND example
|
||||||
|
#/dev/mtd0 0x4000 0x4000 0x20000 2
|
||||||
|
|
Loading…
Reference in a new issue