我正在使用运行u-boot的嵌入式linux工具包。为了让一切正常启动,我不得不修改一些环境变量并使用'saveenv'命令存储它们。
现在我想回过头来看看默认设置是什么,验证我确切知道改变了什么,并找出改变这些默认值的方法,这样生产中的每个单元都不需要单独启动和改性。
有没有办法告诉u-boot清除任何已保存的数据,以便我可以再次查看默认值?闪存类型是QSPI,如果这有所不同。
答案 0 :(得分:19)
在您的套件上,尝试
help env
并查找“env default”。
env default [-f] var [...] - [forcibly] reset variable(s) to their default values
这听起来像你在寻找。
env default -a
执行非持久性更改,然后“printenv”显示默认值。
要更改默认值,您可以使用以下更改来重建u-boot.bin到CONFIG_EXTRA_ENV_SETTINGS。
答案 1 :(得分:1)
eraseenv
在我的例子中没有定义。根据@Joshua 的回答,我发现以下命令执行 eraseenv
的操作。
env default -a
saveenv
答案 2 :(得分:0)
使用默认变量而不从闪存执行
中删除它们env default -a
在u-boot中然后执行$bootcmd
。 Joe Kul的解决方案。
要erase the vars from the SPI flash执行
run eraseenv
在u-boot中然后重新启动。
答案 3 :(得分:0)
# add uboot env variable
setenv my_var 1
# printenv my_var
my_var=1
# remove/unset uboot env variable
setenv my_var
# printenv my_var
## Error: "my_var" not defined