参考资料
简介
uboot,全称universal boot loader,是遵循GPL协议的开源项目。用于初始化系统外设并引导系统启动。
uboot的特性
- 支持包括linux、netBSD、VxWorks、android等系统。
- 支持包括PowerPC、ARM、x86、MIPS等处理器。
- 丰富的设备驱动,以太网、SDRAM、FLASH等。
- 系统引导支持NFS挂载、RAMDISK(压缩或非压缩)的根文件系统,支持NFS挂载、从FLASH中引导系统内核。
工作模式
- 启动加载模式
bootloader的正常工作模式,将操作系统从flash中加载到ram中运行。 - 下载模式
bootloader通过(串口、tftp、usb等)通讯方式将内核映像下载到flash中。
uboot常用命令
环境变量命令
命令 | 功能 |
---|
printenv | 打印环境变量 |
setenv envname value | 设置变量的值 |
saveenv | 保存修改 |
网络命令
命令 | 功能 |
---|
ping | 发送ICMP协议包,测试网络层是否连通 |
nfs | 使用nfs协议 |
tftpboot | 使用TFTP协议 |
NandFlash操作命令
命令 | 功能 |
---|
nand info | 显示可使用的Nand Flash |
nand device [dev] | 显示或设定当前使用的Nand Flash |
nand read addr off size | Nand Flash读取命令,从Nand的off偏移地址处读取size字节的数据到SDRAM的addr地址。 |
nand write addr off size | Nand Flash烧写命令,将SDRAM的addr地址处的size字节的数据烧写到Nand的off偏移地址。 |
nand write[.yaffs[1]] addr off size | 烧写yaffs 映像专用的命令,.yaffs1 for 512+16 NAND |
nand erase [clean] [off size] | Nand Flash檫除命令,擦除Nand Flash的 off 偏移地址处的size 字节的数据 |
nand bad | 显示Nand Flash的坏块 |
nand dump[.oob] off | 显示Nand Flash中的数据(16进制) |
nand scrub | 彻底擦除整块Nand Flash中的数据,包括OOB。可以擦除软件坏块标志。 |
nand markbad off | 标示 Nand的 off 偏移地址处的块为坏块 |
内存、寄存器操作命令
命令 | 功能 |
---|
nm [.b, .w, .l] address | 修改指定内存地址的值 |
mm [.b, .w, .l] address | 修改内存值(地址自动加一) |
md [.b, .w, .l] addres | 显示内存值 |
mw [.b, .w, .l] address value [count] | 用指定的数据填充内存 |
cp [.b, .w, .l] source target count | 内存的拷贝(包括内存与Nor Flash间的数据拷贝) |
USB操作命令
使用USB操作命令前必须确保USB设备连接好,首先初始化USB控制器,获取设备信息。
命令 | 功能 |
---|
usb reset | 初始化USB控制器 |
usb stop [f] | 关闭USB控制器 |
usb tree | 已连接的USB设备树 |
usb info [dev] | 显示USB设备[dev]的信息 |
usb storage | 显示已连接的USB存储设备 |
usb dev [dev] | 显示和设置当前USB存储设备 |
usb part [dev] | 显示USB存储设备[dev]的分区信息 |
usb read addr blk# cnt | 读取USB存储设备数据 |