我很困惑这两个文件的启动configuration。 他们似乎做同样的事情,我不明白为什么我会需要或者。
如果我使用uEnv.txt ,我把它设置为
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
或者,我可以创buildboot.cmd :
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
而且他们都工作…
bootloader(如grub,lilo …)如何find内核映像?
内核的参数
引导程序如何在“使用命令重新启动系统”之后提取命令?
在Windows Vista和更高版本上检索BootMgr的分区号
为什么x86的引导程序首先使用16位代码?
强制机器从Live CD启动
NTLDR技术信息
在哪里可以find所有参数可以通过内核启动cmdline传递文档?
在C中写入Bootloader
如何将一个二进制文件刻录到通过Windows 10专业版64位上的软盘USB插入的软盘扇区0
这是非常依赖于平台的。 要查看控制引导过程的内容,请在内核引导启动之前进入u-boot提示符(命中串口)。 然后
printenv
将展示环境。 下面是sunxi / u-boot环境的一个摘录,这个命令依次尝试不同的fatload来源,直到一个作品
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};
…更多的选项
在每个平台U-Boot源中默认的环境是硬编码的。
那么,他们有不同的角色:
在运行bootcmd之前,uEnv.txt允许预设U-Boot环境变量值
boot.scr允许在运行bootcmd之前运行U-Boot脚本文件
很显然,您可以在脚本文件中设置环境值,在这个范围内功能重叠。
但是,如果你只想设置一些env值(例如一个电路板ID),那么使用uEnv.txt是最简单的方法。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。