首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >uEnv.txt vs boot.scr

uEnv.txt vs boot.scr
EN

Stack Overflow用户
提问于 2015-03-06 10:03:56
回答 2查看 15.5K关注 0票数 8

我对引导配置的这两个文件感到非常困惑。他们似乎在做同样的事情,我不明白为什么我需要或。

如果我使用uEnv.txt,我将它设置为

代码语言:javascript
复制
bootargs=console=ttyS0,115200 root=/dev/mmcblk0p2 rootwait panic=10 ${extra}
aload_script=fatload mmc 0 0x43000000 script.bin;
aload_kernle=fatload mmc 0 0x48000000 uImage;  bootm 0x43000000 - 0x48000000;
uenvcmd=setenv run aload_script aload_kernel

或者,我可以创建boot.cmd

代码语言:javascript
复制
setenv bootargs console=console=ttyS0,115200 root=/dev/mmcblk0p2 rootwait panic=10 ${extra}
fatload mmc 0 0x43000000 script.bin
fatload mmc 0 0x48000000 uImage
bootm 0x48000000

而且它们都能工作。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-03-06 22:56:58

它非常依赖于平台。要查看是什么在控制引导过程,可以在内核引导开始之前进入u-boot提示(点击串行端口)。然后

代码语言:javascript
复制
printenv

将显示环境。以下是环境的摘录from sunxi/u-boot,其中包含依次尝试不同的脂肪加载源的命令,直到其中一个有效为止

代码语言:javascript
复制
bootscr=boot.scr
bootenv=uEnv.txt
loadbootscr=fatload mmc 0 ${scriptaddr} ${bootscr} || ext2load mmc 0 ${scriptaddr} ${bootscr} || ext2load mmc 0 ${scriptaddr} boot/${bootscr}
loadbootenv=fatload mmc 0 ${scriptaddr} ${bootenv} || ext2load mmc 0 ${scriptaddr} ${bootenv} || ext2load mmc 0 ${scriptaddr} boot/${bootenv}
boot_mmc=fatload mmc 0 0x43000000 script.bin && fatload mmc 0 0x48000000 ${kernel} && watchdog 0 && bootm 0x48000000
bootcmd=if run loadbootenv; then \
                echo Loaded environment from ${bootenv}; \
                env import -t ${scriptaddr} ${filesize}; \

..。更多选项如下

每个platform U-Boot源中都硬编码了一个默认环境。

票数 5
EN

Stack Overflow用户

发布于 2016-06-22 22:22:53

好吧,他们确实有不同的角色:

运行bootcmd

  • boot.scr之前,
  • uEnv.txt允许在运行bootcmd

之前运行U-Boot脚本文件

因此,很明显,您可以在脚本文件中设置环境值,以达到功能重叠的程度。

但是如果你只想设置一些env值(例如一个板子ID),那么使用uEnv.txt是最简单的方法。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28891221

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档