u-boot命令

U-BOOT源代码下载:ftp://ftp.denx.de/pub/u-boot/

一 目录结构:
board:和开发板有关的文件,每个开发板都以一个子目录出现在当前目录中。
common:实现u-boot支持的命令。
cpu:与特定cpu架构相关的代码,每一块u-boot下支持的cpu在该目录下对应一个子
目录。
disk:对磁盘的支持。
doc:文档目录。
drivers: u-boot支持的设备驱动程序都放在该目录下。
fs:文件系统的支持
include:u-boot使用的头文件。该目录下configs目录有与开发板相关的配置头文
件,如smdk2410.h。该目录下的asm目录有与cpu体系结构相关的头文件。
net:与网络协议栈相关的代码。
tools:生成u-boot的工具。

二 编译:
u-boot的Makefile从功能上可以分成两个部分:
1 执行每种board相关的配置
2 编译生成u-boot.bin文件


u-boot.bin的生成也分为两步,以mini2440为例说明,如下:
1 选择要使用的board:
$make mini2440_config
2 编译生成u-boot.bin
$make CROSS_COMPILE=arm-linux-

三 u-boot命令
1 help:列出u-boot所支持的命令

2 环境变量
printenv:查看环境变量
setenv:添加,修改,删除环境变量
saveenv:保存环境变量

3 一般
md 显示内存区的内容 # md 32000000
mm 修改内存,地址自动递增 # mm 32000000

4 flash操作
flinfo 查看flash扇区信息

protect flash写保护
打开或关闭扇区写保护
用法:
protect off all
关闭所有扇区的写保护
protect on all
打开所有扇区的写保护
protect off start end
关闭从start到end扇区的写保护(start为要关闭的第1个扇区地址,end为要关闭的
最后一个扇区的结束地址)
protect on start end
打开从start到end扇区的写保护

erase擦除flash扇区
用法:erase start end
例:erase 30000 1effff

cp 数据拷贝
cp[.b,.w,.l] saddress daddress len

5 执行程序
go 执行内存中的二进制代码,一个简单的跳转到指定的地址。
go addr [arg...]

bootm 执行内存中的二进制代码
bootm [addr [arg...]]

(go和bootm的区别:bootm规定zImage需要有个头)

6 开发板信息
bdinfo 显示开发板信息

7 自动启动
setenv bootcmd tftp 31000000 uImage \; bootm 31000000
saveenv


四 文件下载
tftp 通过网络下载文件
注意:使用头发图片,需要先配置好网络
setenv ethaddr $网卡物理地址
setenv ipaddr $开发板ip
setenv serverip $tftp服务器的地址
例:
ftfp 32000000 uImage
把server(IP=环境变量中设置的serverip)中服务目录下的uImage通过tftp
读入到0x32000000处

 

/*************************/

Author: Daniel.G

QQ: 448146607

邮件: guodaijing.hhr@gmail.com

/*************************/

posted on 2012-10-12 18:39  Daniel.G  阅读(353)  评论(0编辑  收藏  举报