uboot常用命令
一. 常用简单命令
1.1. help命令
a. 帮助查看其他命令的使用方法,类型linux下man
b. 示例: help help
x210 # help help
help [command ...]
- show help information (for 'command')
'help' prints online help for the monitor commands. Without arguments, it prints a short usage message for all commands. To get detailed help information for specific commands you can type
'help' with one or more command names as arguments. x210 #
1.2. printenv命令
a. printenv命令可以简化为print
b. print命令不用带参数,作用是打印出系统中所有的环境变量。
x210 # print
baudrate=
ethaddr=::5c::0a:5b
gatewayip=192.168.1.1
ipaddr=192.168.1.20
netmask=255.255.255.0
serverip=192.168.1.141
bootdelay=
bootcmd=movi read kernel ; bootm
bootargs=console=ttySAC2, root=/dev/mmcblk0p2 rw init=/linuxrc rootfstype=ext3 Environment size: / bytes
x210 #
1.3. setenv命令
1.3.1. setenv可以简化为set
1.3.2. 设置(添加/更改)环境变量
a. 新建一个环境变量,使用set var value
b. 更改一个环境变量,使用set var value
c. 删除一个环境变量,使用set var
PS:使用set设置时,uboot的有些命令带的参数非常长,为了告诉uboot这个非常长而且中间有好多个空格的东西是给他的一整个参数,所以用单引号将这个很长且中间有空格隔开的参数引起来
x210 # print
baudrate=
ethaddr=::5c::0a:5b
gatewayip=192.168.1.1
ipaddr=192.168.1.20
netmask=255.255.255.0
serverip=192.168.1.141
bootdelay=
bootcmd=movi read kernel ; bootm
bootargs=console=ttySAC2, root=/dev/mmcblk0p2 rw init=/linuxrc rootfstype=ext3 Environment size: / bytes
x210 # set mytest
x210 # print
baudrate=
ethaddr=::5c::0a:5b
gatewayip=192.168.1.1
ipaddr=192.168.1.20
netmask=255.255.255.0
serverip=192.168.1.141
bootdelay=
bootcmd=movi read kernel ; bootm
bootargs=console=ttySAC2, root=/dev/mmcblk0p2 rw init=/linuxrc rootfstype=ext3
mytest= Environment size: / bytes
x210 # set mytest
x210 # print
baudrate=
ethaddr=::5c::0a:5b
gatewayip=192.168.1.1
ipaddr=192.168.1.20
netmask=255.255.255.0
serverip=192.168.1.141
bootdelay=
bootcmd=movi read kernel ; bootm
bootargs=console=ttySAC2, root=/dev/mmcblk0p2 rw init=/linuxrc rootfstype=ext3
mytest= Environment size: / bytes
x210 # set mytest
x210 # print
baudrate=
ethaddr=::5c::0a:5b
gatewayip=192.168.1.1
ipaddr=192.168.1.20
netmask=255.255.255.0
serverip=192.168.1.141
bootdelay=
bootcmd=movi read kernel ; bootm
bootargs=console=ttySAC2, root=/dev/mmcblk0p2 rw init=/linuxrc rootfstype=ext3 Environment size: / bytes
x210 #
1.4. saveenv命令
a. saveenv命令可以简化为save
b. saveenv/save命令不带参数,直接执行,作用是将内存中的环境变量的值同步保存到Flash中环境变量的分区
c. 彻底更改一个环境变量的值,需要2步:第一步set命令来更改内存中的环境变量,第二步用save命令将其同步到Flash中环境变量的分区
二. 与网络相关命令
2.1. ping命令
a. ping是测试开发板和主机之间的网络链接
b. 命令用法: ping ip地址
2.2. tftp命令
a. tftp 命令用于从服务器下载内容到客户端
b. 示例:tftp 0x30000000 zImage-qt :将服务器上名为zImage-qt的文件下载到开发板内存的0x30000000地址处
2.3. nfs命令
a. 这个命令在uboot开发中使用很少,如需要请自行百度。
三. SD卡/iNand操作指令movi簇
3.1. movi指令是一个命令集,有很多子命令,具体用法可以help movi查看。
3.2. help movi分析
x210 # help movi
movi init - Initialize moviNAND and show card info
movi read {u-boot | kernel} {addr} - Read data from sd/mmc
movi write {fwbl1 | u-boot | kernel} {addr} - Write data to sd/mmc
movi read rootfs {addr} [bytes(hex)] - Read rootfs data from sd/mmc by size
movi write rootfs {addr} [bytes(hex)] - Write rootfs data to sd/mmc by size
movi read {sector#} {bytes(hex)} {addr} - instead of this, you can use "mmc read"
movi write {sector#} {bytes(hex)} {addr} - instead of this, you can use "mmc write" x210 #
3.2.1. movi write {fwbl1 | u-boot | kernel} {addr}这种通用型的描述说明:
a. movi 和 read外面没有任何标记说明每一次使用这个指令都是必选的
b. 一对大括号{}括起来的部分必选1个,大括号中的竖线表是多选一
c. 中括号[]表示可选参数(可以有也可以没有)
3.3. 示例: movi read u-boot 0x30000000 意思就是把iNand中的u-boot分区读出到DDR的0x30000000起始的位置处。
PS:uboot代码中将iNand分成了很多个分区,每个分区有地址范围和分区名,uboot程序操作中可以使用直接地址来操作iNand分区,也可以使用分区名来操作分区;注意这里的0x30000000也可以直接写作30000000,意思是一样的(uboot的命令行中所有数字都被默认当作十六进制处理,不管你加不加0x都一样
四. 内存操作指令
4.1. DDR内存中是没有分区的(只听说过对硬盘、Flash进行分区,没听说过对内存进行分区····),但是内存使用时要注意,千万不能越界
4.2. md(memory display)命令
4.2.1. 用来显示内存中的内容。
4.2.2. help md
x210 # help md
md [.b, .w, .l] address [# of objects]
- memory display
a. .b表示也字节形式查看;.w表示也半字形式查看;.l表示也字形式查看;# of object表示查看长度
b. 示例: md.b 0x30000000 10
x210 # md.b 0x30000000
: ff ef ff ff 7f ff ff ff ff ee ff ff ff fd ff ff ................
x210 #
4.3. mw(memory write)命令
4.3.1. 将内容写到内存中
4.3.2. help mw
x210 # help mw
mw [.b, .w, .l] address value [count]
- write memory x210 #
4.4. mm(memory modify)
4.4.1. 修改内存中的某一块,说白了还是写内存(如果需要批量的逐个单元的修改内存,用mm最合适)
4.4.2. help mm
x210 # help mm
mm [.b, .w, .l] address
- memory modify, auto increment address x210 #
五. 启动内核命令
5.1. bootm命令
a. bootm启动内核同时给内核传参,bootm专门用于启动内核的
b. help bootm分析
x210 # help bootm
bootm [addr [arg ...]]
- boot application image stored in memory
passing arguments 'arg ...'; when booting a Linux kernel,
'arg' can be the address of an initrd image x210 #
5.2. go命令
a. 此命令虽然可以启动内核但并不是专门用于启动内核
b. help go分析
x210 # help go
go addr [arg ...]
- start application at address 'addr'
passing 'arg' as arguments x210 #
ps:go命令本来不是专为启动内核设计的,go命令内部其实就是一个函数指针指向一个内存地址然后直接调用那个函数,go命令的实质就是PC直接跳转到一个内存地址去运行而已。go命令可以用来在uboot中执行任何的裸机程序(有一种调试裸机程序的方法就是事先启动uboot,然后在uboot中去下载裸机程序,用go命令去执行裸机程序)
参考《朱老师.1.2ARM裸机课件》
uboot常用命令的更多相关文章
- UBoot常用命令手册
UBoot常用命令手册 U-Boot还提供了更加详细的命令帮助,可以通过”?”显示支持的命令列表,通过help [CommandName]命令还可以查看每个命令的参数说明. 1.bootm bootm ...
- 编译u-boot命令和u-boot常用命令
一.编译u-boot命令 1.配置开发板 #make TQ2440_config 2.编译 #make all 3.交叉编译器是crosstools_3.4.5_softfloat” 使用4.3.3版 ...
- uboot常用命令详解
dnw:在进入系统之前进入指令行,输入该指令可下载烧录文件. re:重新启动嵌入式系统. printenv:打印当前系统环境变量. setenv:设置环境变量,格式:setenv name value ...
- UBoot常用命令及内核下载与引导
一.常用命令 1. 获取帮助 ① help 或 ? 2. 环境变量与相关命令 (1)环境变量 ① bootdely ② baudrate ③ netmask ④ ethaddr ⑤ bootfile ...
- 嵌入式Linux系统移植——uboot常用命令
flash的一般分区: 其它数据 环境变量 可执行程序.如bootloader print(可缩写为:pri):打印查看uboot这个软件中集成的环境变量setenv.saveenv:设置.保存环境变 ...
- uboot常用命令及其使用
环境变量设置 setenv 设置一个环境变量 # 格式:setenv key vlaue setenv bootdelay 5 # 设置uboot启动延时5s 删除一个环境变量 uboot对于一个没有 ...
- u-boot常用命令
查看ip地址等信息 print tftp相关 设置ip地址 set ipaddr 192.168.1.5 设置tftp所在电脑ip set serverip 192.168.1.8 最后必须输入sav ...
- uboot的常用命令及用法
转自:https://blog.csdn.net/jklinux/article/details/72638830 https://blog.csdn.net/dagefeijiqumeiguo/ar ...
- 0、驱动及应用小技巧、uboot指令及环境变量配置、linux常用命令
(内核make menuconfig之后,通过insmod安装的驱动都应该重新make,可能会出现一些莫名的问题) (nor flash/SDRAM/DM9000都受内存控制器控制,需要配置内存控制器 ...
随机推荐
- 【shell】文本匹配问题
原文本通过TITLE分段 TITLE1 xxx yyy TITLE2 xxx yyy hello zzz hello TITLE3 xxx hello 类似于这样的,hello可能有多个,需要打印出含 ...
- 为什么要用setTimeout模拟setInterval ?
setInterval有两个缺点: 使用setInterval时,某些间隔会被跳过: 可能多个定时器会连续执行: 在前一个定时器执行完前,不会向队列插入新的定时器(解决缺点一) 保证定时器间隔(解决缺 ...
- Lambda表达式匿名类实现接口方法
Lamb表达式匿名类实现接口方法 import java.util.ArrayList; public class HandlerDemo{ public static void main(Strin ...
- js-点击tab按钮,同一页面显示不同的内容
效果: html: JS: css: .tabs-two{ .two{ display: inline-block; font-size:14px; height: 17px; font-weight ...
- jsonp跨域实例
一.什么是跨域 二.如何解决跨域 1.前端常用 JSONP 2.服务器端配置 HTTP 协议的 header 解析 三.JSONP实现的实例 <!DOCTYPE html> <htm ...
- Mybatis mysql 一个搜索框多个字段模糊查询 几种方法
第一种 or 根据搜索框给定的关键词,模糊搜索用户名和账号都匹配的用户集合 <select id="list" parameterType="com.user.Us ...
- WebStorm 在 Mac 版本的基本设置,包括 ES6、Node.js、字体大小等
WebStorm 在 Mac 和 win 的设置有区别,便于以后用到快速查找,记之. 要设置先点击 WebStorm 字样如下图: 后点击 Preferences 字样如下图: 设置 es6 语法, ...
- bitmap相关工具类
一,bitmap工具 封装了以下方法: 1,获取activity屏幕截图,保存为图片文件 2,从文件中获取截图,返回bitmap对象 package com.ctbri.weather.utils; ...
- android和网络连接相关的类URL,URLConnection,HttpURLConnection,HttpClient
这几个类都是用于和服务器端的连接,有些功能都能够实现,关系是: 一.URL URL标识着网络上的一个资源:该类包含一些URL自身的方法,如获取URL对应的主机名称,端口号,协议,查询字符串外,还有些方 ...
- group by 与 order by 一起使用的时候
select 后面的列+order by 后面的列 必须在group by 里面 也就是说 select 和 order by 后面的列是 group by 列的子集 而 select 和 order ...