如何设置uboot环境变量bootcmd

如何设置uboot环境变量bootcmd,第1张

直接 setenv bootcmdtftp;

setenv 既可以增加变量,也可以修改,也可以删除。

setenv bootcmdtftp 20008000,是修改和增加

setenv bootcmdtftp是删除

1.把附件下载到自己的电脑上。

2.本地网卡的IP为固定的192.168.8.100.

3.附件解压打开tftp工具(注意:ip应为192.168.8.100

上面那个地址应该为你所下载的u-boot改名为u-boot。bin放入的文件夹)

4.执行目录下的telnet.exe

输入命令: open 192.168.8.1

5.输入

用户名 admin

密码admin(linux系统密码不显示直接输入回车即可)

6.执行下面的命令,下载u-boot,并写入flash.

# cd tmp

# tftp -g -r u-boot.bin 192.168.8.100u-boot.bin

# ls

# mtd_write write u-boot.bin /dev/mtd0

# reboot

注意:输完后如果没有u-boot.bin出现请不要继续,请重新来过。

3

然后,自己重启一下路由器,路由器就刷进不死uboot了。

这里涉及到两个问题:

 环境变量在哪个地方存着(从哪个地方取)

 将环境变量存储到哪里(放到哪)

(1)环境变量位于存储器(norflash、nandflash )

“CFG_ENV_IS_IN_XXX”(CFG_ENV_IS_IN_FLASH、CFG_ENV_IS_IN_NAND等等)定义了则这种情况有效,以在flash上为例。

ENV_IS_EMBEDDED定义了

详细工作原理,见”ENV_IS_EMBEDDED“解惑以及相关的移植实验。这种情况的环境变量在flash上存着(但是占了flash一个扇区),并且随着代码段(因为环境变量区嵌在代码段内)在start.s重定位时一同载入内存。在环境变量初始化时候,如果这部分能通过校验,就不需要先在堆区开辟空间然后搬移的工作,而是直接使用这部分环境变量(省了搬移工作)。倘若不能通过校验,则使用默认环境变量放到重定位时环境变量所占的空间中。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/bake/11657285.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-17
下一篇2023-05-17

发表评论

登录后才能评论

评论列表(0条)

    保存