如何设置uboot环境变量bootcmd

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

直接 setenv bootcmdtftp;

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

setenv bootcmdtftp 20008000,是修改和增加

setenv bootcmdtftp是删除

这里涉及到两个问题:

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

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

(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重定位时一同载入内存。在环境变量初始化时候,如果这部分能通过校验,就不需要先在堆区开辟空间然后搬移的工作,而是直接使用这部分环境变量(省了搬移工作)。倘若不能通过校验,则使用默认环境变量放到重定位时环境变量所占的空间中。

Printenv 打印环境变量。

uboot>printenv

baudrate=115200

ipaddr=192.168.0.111

ethaddr=32:34:46:78:9A:DC

serverip=192.168.0.100

Environment size: 80/8188 bytes

2. Setenv 设置新的变量

如:

uboot>setenv myboard AT91RM9200DK

uboot>saveenv

uboot>printenv

baudrate=115200

ipaddr=192.168.0.111

ethaddr=32:34:46:78:9A:DC

serverip=192.168.0.100

myboard=AT91RM9200DK

Environment size: 102/8188 bytes

又如想重置启动参数bootargs:

uboot>setenv bootargs 'noinitrd root=/dev/mtdblock2 init=/linuxrc console=ttySAC0'

uboot>saveenv

3. saveenv 保存变量 命令将当前定义的所有的变量及其值存入 flash 中。 用来存储变量及其值的空间只有 8k 字节,应不要超过。 (如上例,每次与setenv配合使用)

4. loadb 通过串口 Kermit 协议下载二进制数据。

5. tftp 通过网络下载程序,需要先设置好网络配置

简单配置:

uboot>setenv ethaddr 32:34:46:78:9A:DC

uboot>setenv ipaddr 192.168.0.111

uboot>setenv serverip 192.168.0.100

//下载 bin 文件到地址 0x20000000 处。

uboot>tftp 20000000 application.bin (application.bin 应位于 tftp 服务程序的目录)

uboot>tftp 32000000 zImage.bin

把 server (IP=环境变量中设置的 serverip) 中 FTP配置的默认目录下的 zImage.bin通过 TFTP 读入到物 理内存 32000000 处。

6. md 显示内存区的内容。

7. mm 修改内存,地址自动递增。

8. nm 修改内存,地址不自动递增。

9. mw 用模型填充内存

uboot>mw 32000000 ff 10000(把内存 0x32000000 开始的 0x10000 字节设为 0xFF)

10. cp 拷贝一块内存到另一块

11. cmp 比较两块内存区

这些内存 *** 作命令后都可加一个后缀表示 *** 作数据的大小, 比如 cp.b 表示按字节拷贝。 Protect 写保护 *** 作 protect on 1:0-3(就是对第一块 FLASH 的 0-3 扇区进行保护) protect off 1:0-3 取消写保护 Erase 擦除扇区。

12. nfs

uboot>nfs 32000000 192.168.0.2:zImage.bin 把 192.168.0.2(LINUX 的 NFS 文件系统)中的 NFS 文件系统中的 aa.txt 读入内存 0x32000000 处 (192.168.0.2是配置的NFS服务器地址,且要复制的文件必须在NFS配置的服务目录下)

uboot 命令使用教程(uboot参数设置)的更多相关文章

U-Boot命令大全(功能参数及用法)

U-Boot上电启动后,按任意键可以退出自动启动状态,进入命令行. U-Boot 2010.03 (Sep 25 2011 - 16:18:50) DRAM: 64 MB Flash: ...

uboot命令及内核启动参数

修改:mw [内存地址] [值] [长度] 例如:mw 0x02000000 0 128 表示修改地址为0x02000000~0x02000000+128的内存值为0. 显示:md [内存地址 ...

PM2用法简介【命令行启动 --env 参数设置使用问题】

环境切换 正式开发中分为不同的环境(开发环境.测试环境.生产环境),我们需要根据不同的情景来切换各种环境 pm2通过在配置文件中通过env_xx来声明不同环境的配置,然后在启动应用时,通过--env参 ...

u-boot 环境变量参数设置

今天本来是烧写内核,结果一不小心把uboot也整不能用了,无奈之下只好重新烧个uboot,等都弄好以后,发现系统还是启动不了,原来是启动参数设置不对,于是找到了这篇文章,//是我添加的内容. 原文地址 ...

Uboot 命令行 介绍

背景 基本上,本文转载自:<ARM板移植Linux系统启动(五)Uboot命令行>上次说到uboot的启动方式,最后会使用autoboot(自主模式)尝试引导kernel,如果失败或者被 ...

uboot命令简介

uboot下的命令行 1.典型嵌入式linux系统启动过程: 嵌入式系统上电后先执行uboot.然后uboot负责初始化DDR,初始化Flash,然后将OS从Flash中读取到DDR中,然后启动OS( ...

烧写ARM开发板系统教程----->uboot 、内核以及文件系统

一.sd启动 将u-boot镜像写入SD卡,将SD卡通过读卡器接上电脑(或直接插入笔记本卡槽),通过"cat /proc/partitions"找出SD卡对应的设备,我的设备节点是 ...

1.ok6410移植bootloader,移植u-boot,学习u-boot命令

ok6410移植u-boot 既然是移植u-boot当然首先需要u-boot源码,这里的u-boot代码是由国嵌提供的. 一.配置编译u-boot A. 解压 u-boot 压缩文件 B. 进入解压生 ...

转载 uboot 命令

1.bootm bootm [addr [arg ...]] - boot application image stored in memory passing arguments 'arg ...' ...


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

原文地址: http://outofmemory.cn/tougao/7822827.html

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

发表评论

登录后才能评论

评论列表(0条)

保存