U-Boot的常用命令详解(转)
上一篇 / 下一篇 2010-03-08 17:22:33 / 个人分类:Linux
我的栏目
- 栏目:Linux
(Refer tohttp://tech.uplooking.com/qianrushi/2009/0512/55.html)
I;r X7cKg8`7i0
U-Boot还提供了详细的命令帮助,通过help命令还可以查看每个命令的参数说明。由于开发过程的需要,有必要先把U-Boot命令的用法弄清楚。接下来,根据每一条命令的帮助信息,解释一下这些命令的功能和参数。
.giz$g].O)K01、bootm51Testing软件测试网1|W6i8w%R-M)h[4`
bootm [addr [arg ...]]
- boot application image stored in memory
E4rK:qX|~0~0passing arguments 'arg ...'; when booting a Linux kernel, 'arg' can be the address of an initrd image
z'L*_ L SpA0bootm命令可以引导启动存储在内存中的程序映像。这些内存包括RAM和可以永久保存的Flash。
)s7q%G4vH*op@;gdY0第1个参数addr是程序映像的地址,这个程序映像必须转换成U-Boot的格式。51Testing软件测试网/c.]3g.}2\T!?E l
第2个参数对于引导Linux内核有用,通常作为U-Boot格式的RAMDISK映像存储地址;也可以是传递给Linux内核的参数(缺省情况下传递bootargs环境变量给内核)。
G+zZ'B'uZ%j|1@02、bootp
m'z`z0JJj#? t0bootp [loadAddress] [bootfilename]51Testing软件测试网Ds]{y(?4x*?gp
bootp命令通过bootp请求,要求DHCP服务器分配IP地址,然后通过TFTP协议下载指定的文件到内存。
'B+F^%o_]"O/S0第1个参数是下载文件存放的内存地址。51Testing软件测试网~7H+an@p
第2个参数是要下载的文件名称,这个文件应该在开发主机上准备好。51Testing软件测试网n"AF f [N
51Testing软件测试网&A.b#l2~-QrE o
3、cmp51Testing软件测试网!xIV:X%Q{-NZpvS.hF
cmp [.b, .w, .l] addr1 addr2 count51Testing软件测试网E2hk ^ }N Q(aV6G.[
- compare memory
u;a`J^lP0cmp命令可以比较2块内存中的内容。.b以字节为单位;.w以字为单位;.l以长字为单位。注意:cmp.b中间不能保留空格,需要连续敲入命令。51Testing软件测试网8j&W_4^^%d\
第1个参数addr1是第一块内存的起始地址。51Testing软件测试网 AB8f9X_k^
第2个参数addr2是第二块内存的起始地址。
4RS*n@aZ$l0第3个参数count是要比较的数目,单位按照字节、字或者长字。
R3D3br3rAT:_;x0.Og1fR] E`5p x6B0
4、cp
p_3eFg*E-s0cp [.b, .w, .l] source target count51Testing软件测试网V/eqb]/` z2t
- copy memory51Testing软件测试网0P#Y-[/JC_QE v%T.?h
cp命令可以在内存中复制数据块,包括对Flash的读写操作。
5|up1?-zo^ \zs0第1个参数source是要复制的数据块起始地址。
[1eFC'L!~h^da-U0第2个参数target是数据块要复制到的地址。这个地址如果在Flash中,那么会直接调用写Flash的函数操作。所以U-Boot写Flash就使用这个命令,当然需要先把对应Flash区域擦干净。51Testing软件测试网} W$ZDC3d
第3个参数count是要复制的数目,根据cp.b cp.w cp.l分别以字节、字、长字为单位。
'gsz~r)DW-A051Testing软件测试网od%y~+B%r/A7FX b
5、crc32
dI$u/h}.@Bx0crc32 address count [addr]
T4Vj-@#z6?2}-d0- compute CRC32 checksum [save at addr]
kN;XiB\0crc32命令可以计算存储数据的校验和。
3`R&DS%{/b(L'K0第1个参数address是需要校验的数据起始地址。51Testing软件测试网pz7q!`_
第2个参数count是要校验的数据字节数。
"?.q!] p(Z XW*W0第3个参数addr用来指定保存结果的地址。
@vJjl"V e,ak051Testing软件测试网C'?+}%L6Wo4J c
6、echo
zLxq2G+[kf:j]0echo [args..]51Testing软件测试网D(icwX/Z_ a;m H
- echo args to console; c suppresses newline
.ecI+~ A$g-{[0echo命令回显参数。
t(U9wV4FE07、erase51Testing软件测试网(EZ? nN6Kf_R-E1I&Y
erase start end51Testing软件测试网P(I#K1r/_LA
- erase FLASH from addr 'start' to addr 'end'
@'J!~%c*B*w\]!W0erase N:SF[-SL]
"p5]L#tD0- erase sectors SF-SL in FLASH bank # N51Testing软件测试网'Y;jS8AV kZ0P
erase bank N
9Q%JEX%|t$U0- erase FLASH bank # N
2V ?ffFZ3eZ0A&F0erase all51Testing软件测试网5Rw4iKi*rfZ3Y
- erase all FLASH banks51Testing软件测试网 ?5t*h2rc1iW y
51Testing软件测试网 xBo|xE+S4z
erase命令可以擦Flash。51Testing软件测试网Y:C;i!kc DSP(o6~5q
参数必须指定Flash擦除的范围。51Testing软件测试网Fhn0NVw
按照起始地址和结束地址,start必须是擦除块的起始地址;end必须是擦除末尾块的结束地址。这种方式最常用。举例说明:擦除0x20000 – 0x3ffff区域命令为erase 20000 3ffff。
b$nW!k N3S L,~0按照组和扇区,N表示Flash的组号,SF表示擦除起始扇区号,SL表示擦除结束扇区号。另外,还可以擦除整个组,擦除组号为N的整个Flash组。擦除全部Flash只要给出一个all的参数即可。
Bj-_ U@'dQ051Testing软件测试网"X,G)L8{&JO
8、flinfo51Testing软件测试网@`t dp(F$? E u
flinfo
A9MG2y&F F,].f+R^0- print information for all FLASH memory banks
#W+m;[ NmL6B-PFn3v@0flinfo N
Y\s \OI1q0- print information for FLASH memory bank # N
G+p DNR@5u051Testing软件测试网'rL,P.Ys9G6yDi
flinfo命令打印全部Flash组的信息,也可以只打印其中某个组。一般嵌入式系统的Flash只有一个组。
'c{ vRl3_4r0;V0X3rxOd'k;Yr&]0
9、go51Testing软件测试网,LWy1P!~,Q
go addr [arg ...]51Testing软件测试网?s@-x,?*}N!Q W
- start application at address 'addr'51Testing软件测试网.aa}K*i FJ-W
passing 'arg' as arguments51Testing软件测试网:B:l"jcew
%VJxxDP4Y8M2B0
go命令可以执行应用程序。
!^6Qv5M Wg0第1个参数是要执行程序的入口地址。51Testing软件测试网+[/g[(h+z1z\A
第2个可选参数是传递给程序的参数,可以不用。
V{j,J(_{{0e6Zw?PEf0
10、iminfo
*spU(W:E}(o.jK0iminfo addr [addr ...]
7x:C6qq:FF-?+w0- print header information for application image starting at address 'addr' in memory; this includes verification of the image contents (magic number, header and payload checksums)
E0J$b)~R00RWHCRQ"Ls0
iminfo可以打印程序映像的开头信息,包含了映像内容的校验(序列号、头和校验和)。
YY(h V7{8^9g0第1个参数指定映像的起始地址。
'u Q!g Z @3wa0可选的参数是指定更多的映像地址。
2jYg!J"^8u9@l05_-R4Cq8x,Gs1g;m0
11、loadb51Testing软件测试网DV*XI]
loadb [ off ] [ baud ]51Testing软件测试网4x FK0})@ g5f
- load binary file over serial line with offset 'off' and baudrate 'baud'51Testing软件测试网AU C{zQ kQ{ Vt GA
51Testing软件测试网\1p%J6m'H_i3u
loadb命令可以通过串口线下载二进制格式文件。
12、loads51Testing软件测试网-ud?;i.xe-bi z
loads [ off ]51Testing软件测试网C Y7b1{8]? [0cD#n
- load S-Record file over serial line with offset 'off'51Testing软件测试网&c7W