- 用于将内核镜像加载到内存的指定地址处
bootm 0x82000000
- 常用环境变量列表:
bootdelay 执行自动启动(bootcmd中的命令)的等候秒数 baudrate 串口控制台的波特率 bootfile 默认的下载文件名 bootargs 传递给Linux内核的启动参数 bootcmd 自动启动时执行命令 stdin 标准输入设备, 一般是串口 stdout 标准输出, 一般是串口,也可是LCD(VGA) stderr 标准出错,一般是串口,也可是LCD(VGA) serverip TFTP服务器端的IP地址 ipaddr 本地的IP地址 ethaddr 以太网的MAC地址 netmask 以太网的网络掩码 gatewayip 以太网的网关
修改环境变量
第1个参数(setenvname)是环境变量的名称。
- 第2个参数(value)是要设置的值,如果没有第2个参数,表示删除这个环境变量
setenv serverip 192.168.1.12//添加环境变量serverip 其值为 192.168.1.12 setenv serverip 192.168.1.20//在上一行的基础上把环境变量serverip 值重新赋为 192.168.1.20 setenv serverip //把 serverip 变量删除
- 保存环境变量
查看环境变量
使用该命令返回:
bootdelay=1 baudrate=115200 bootfile="uImage" filesize=6600EC fileaddr=82000000 bootargs=mem=64M console=ttyAMA0,115200 root=/dev/mtdblock2 rootfstype=jffs2 mtdparts=hi_sfc:1M(boot),4M(kernel),27M(rootfs) bootcmd=sf probe 0;sf read 0x82000000 0x100000 0x400000;bootm 0x82000000 stdin=serial stdout=serial stderr=serial verify=n ver=U-Boot 2010.06 (Jan 20 2015 - 15:46:38) serverip=192.168.1.12 ipaddr=192.168.1.129 ethaddr=00:01:02:11:88:91 netmask=255.255.255.0 gatewayip=192.168.1.1
md[.b,.w,.l] address [count]
- 表示以[.b,.w,.l]为单位显示从地址address开始的内存数据,显示的数据个数为count
md.b 82000000 10 显示从地址0x82000000地址开始的0x10个字节的数据 返回信息: 82000000: d3 2c b4 4b 2c d3 4b b4 d3 d3 b4 b4 d3 2c b4 4b .,.K,.K......,.K
mm[.b,.w,.l] address
- 表示以[.b,.w,.l]为单位从地址address开始修改内存数据,执行mm命令后,输入新数据后回车,地址会自动增加,按“CTRL + c”退出;
把第一个字节数据0xd3修改为0xd4 mm.b 82000000 返回: 82000000: d3 ? d4 82000001: 2c ?
mw[.b,.w,.l] address value [count]
- 表示以[.b,.w,.l]为单位往开始地址为address的内存填充count个值为value的数据
mw.b 82000000 ff 100000 从地址0x82000000地址开始填充0x100000(1M字节)个值为0xff的数据
cp[.b,.w,.l] source target [count]
表示以[.b,.w,.l]为单位从源地址source的内存复制count个数据到 目的地址 target的内存中去;
这些命令都可以带上后缀 “.b”(字节 byte), ”.w”(字 word), ”.l”(4字节 long) 为单位进行操作
- 通过网口下载文件到设备
tftp address filename 把文件filename下载到地址address
下载 tftp 0x82000000 u-boot-hi3520d.bin 把TFTP目录下名为u-boot-hi3520d.bin的文件拷贝到SDRAM的 82000000 地址 上传 tftp 0x82000000 flash 2000000 把SDRAM的 82000000 地址开始的 0x2000000(32M)字节的拷贝到TFTP目录下并命名为flash
- erase start end
- erase start+len
- erase all
- 擦除所有
对于SPI NOR FLASH sf erase 0 100000 擦除flash 0 - 0x100000 的数据
- write addr off size
- 将SDRAM的 addr 地址处的 size 字节的数据烧写到 flash 的 off 偏移地址
对于SPI NOR FLASH sf write 82000000 0 100000 把SDRAM地址 0x82000000 处 0x100000(1M字节)的数据烧写到 flash 的 0 偏移地址
- read addr off size
- 从 Flash 的 off 偏移地址处读取 size 字节的数据到SDRAM的 addr地址
对于SPI NOR FLASH sf read 82000000 0 2000000 从 flash 的 0 偏移地址处读取 0x2000000(32M)字节的数据到 SDRAM的 82000000 地址
文章来源: uboot操作指令