文件系统修改uboot环境变量

在uboot源代码tools/env中的工具可以在文件系统中改变环境变量的值

在uboot源码根目录下

make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- env

编译生成fw_printenv

将tools/env目录下的fw_printenv拷贝到开发板、fw_env.config拷贝到/etc目录下

cp fw_printenv fw_setenv

cat /proc/mtd

文件系统修改uboot环境变量_第1张图片

修改fw_env.config

dev offset erasesize sector

/dev/mtd6 0x0000 0x20000 0x20000

 

 

查看环境变量

./fw_printenv ipaddr

ipaddr=192.168.1.146

 

修改环境变量

./fw_setenv ipaddr 192.168.1.148

如果没有问题可以正常写进去

 

 

一直报:

Warning: Bad CRC, using default environment

确定是否分区是对的

 

出现重启没有修改,文件系统下读取又是有的

cat /dev/mtd6

 

将备份的那个区的也修改

修改fw_env.config

添加env.bak区

MTD device name Device offset Env. size Flash sector size Number of sectors

/dev/mtd6 0x0000 0x20000 0x20000

/dev/mtd7 0x0000 0x20000 0x20000

 

修改添加变量test

./fw_setenv test 7890

 

查看test值

./fw_printenv test

test=7890

还可以cat /dev/mtd6、cat /dev/mtd7,查看是否添加test

 

重启,查看环境变量

test=7890

修改成功

你可能感兴趣的:(am335x)