tftp uclibc_64k.jffs2
sf probe 0
sf erase 0x380000 0x600000
sf write 0x80008000 0x380000 0x500000(内存起始地址 flash起始地址大小)
Uboot相关命令介绍
printenv 查看环境变量
setenv 添加,修改,删除环境变量
例 setenv aaa 123 //添加环境变量aaa其值为123
setenv aaa 789 //在上行变量基础上把aaa的值修改(重设)为789
setenvaaa //把aaa变量删除
saveenv 保存环境变量
flinfo 查看flash信息
bdinfo 查看开发板信息
查看和修改内存值的指令(可以查看和修改SDRAM和寄存器值)
[.b, .w,.l]代表了查看和修改形式:bit、word、long
md 查看内存
参数 md.b [address]//按字节显示
md.w [address] //按字显示
md.l [address] //按长字显示
nm 修改内存值 (指定地址)
参数 nm.b[address] //按字节显示
nm.w [address] //按字显示
nm.l [address] //按长字显示
mm 内存修改,地址自动递增
参数 mm.b[address] //按字节显示
mm.w [address] //按字显示
mm.l [address] //按长字显示
mw 用指定的数据填充内存
参数 mw.b[address value ] //按字节显示
mw.w [address value ] //按字显示
mw.l [address value ] //按长字显示
cp 内存的拷贝(包括内存与Nor Flash间的数据拷贝)
参数 cp.b[source target count] //按字节显示
cp.w [source target count]//按字显示
cp.l [source target count] //按长字显示
例 cp source dest len
protect 扇区写保护(对Flash 写保护)
protect on all 保护全开
protect off all 保护解除
protect on startend //startend是照起始地址和结束地址定义范围
protect off startend //start是保护块的起始地址;
//end 是保护末尾块的结束地址。
例如:保护Sector 2和Sector 3区域命令为protect 20000 3ffff
protect on start+size //start +size是照起始地址和操作字节数定义范围
protect off start +size //start是保护块的起始地址;
//size 是保护的字节数。
例如:保护Sector 2和Sector 3区域命令为protect 20000 +20000
protect on N:SF[-SL]
protect off N:SF[-SL]
//N:SF[-SL]是按照组和扇区,N 表示Flash 的Block号,
//SF 表示保护起始Sector号,SL 表示保护结束Sector号。
例如:保护Block1 的Sector 2和Sector 3区域命令为protect1:2-3
protect on bankN //bank N是保护整个Block,
protect off bankN //保护Block号为N 的整个Flash
erase 擦除Flash的命令
erase all擦除全部
erase startend //start end是照起始地址和结束地址定义范围,
//start是擦除块的起始地址;
//end 是擦除末尾块的结束地址。
例如:擦除Sector 2和Sector 3区域命令为erase 20000 3ffff
erase start+size //start +size是照起始地址和操作字节数定义范围
//start是擦除块的起始地址;
//size 是擦除的字节数。
例如:擦除Sector 2和Sector 3区域命令为erase 20000 +20000
erase N:SF[-SL]
//N:SF[-SL]是按照组和扇区,N 表示Flash 的Block号,
//SF 表示擦除起始Sector号,SL 表示擦除结束Sector号。
例如:保护Block1 的Sector 2和Sector 3区域命令为erase 1:2-3
erase bankN //bank N是擦除整个Block,
//擦除Block号为N 的整个Flash
从Nand flash中读数据
Nand read dest(sdram) src(Flash) size
对Nand flash擦除数据
Nand erase start size
向Nand flash中写数据
Nand write src(sdram) dest size
---------------------------------bootarg--------------------------------
bootfile=uImage
serverip=192.168.1.177
nfshost=192.168.1.177
setbootargs=console=ttyS0,115200n8=noinitrd rw ip=192.168.1.80video:output=pal root=/dev/nfsnfsroot=192.168.1.177:/work/ramdisk,nolock mem=28M
setbootcmd='tftp;bootm'
setsetboot setenv bootargs \$(bootargs) eth=\$(ethaddr)
setbootcmd 'run setboot; bootm 0x2040000'
1.得到所有命令列表
2.help: help usb, 列出USB功能的使用说明
3.ping:注:只能开发板PING别的机器
4.setenv: 设置互环境变量:
5.setenv serverip 192.168.0.1
6.setenv ipaddr 192.168.0.56
7.setenv bootcmd ‘tftp 32000000 vmlinux; kgo 32000000’
8.saveenv: 保存环境变量
9.在设置好环境变量以后, 保存变量值
10.tftp: tftp 32000000 vmlinux,把server(IP=环境变量中设置的serverip)中/tftpdroot/下的vmlinux通过TFTP读入到物理内存32000000处。
11.kgo: 起动没有压缩的linux内核,kgo 32000000
12.bootm:起动UBOOT TOOLS制作的压缩LINUX内核, bootm 3200000
13.protect: 对FLASH进行写保护或取消写保护, protect on1:0-3(就是对第一块FLASH的0-3扇区进行保护),protect off 1:0-3取消写保护
14.erase: 删除FLASH的扇区, erase 1:0-2(就是对每一块FLASH的0-2扇区进行删除)
15.cp: 在内存中复制内容, cp 32000000 040000(把内存中0x32000000开始的0x40000字节复制到0x0处)
16.mw: 对RAM中的内容写操作, mw 32000000 ff10000(把内存0x32000000开始的0x10000字节设为0xFF)
17.md: 修改RAM中的内容, md 32000000(内存的起始地址)
18.usb:
lusb start: 起动usb 功能
lusb info: 列出设备
lusb scan: 扫描usb storage(u 盘)设备
19.fatls:列出DOS FAT文件系统, 如:fatls usb 0列出第一块U盘中的文件
20.fatload: 读入FAT中的一个文件,如:fatload usb 0:0 32000000 aa.txt
21.把USB中的aa.txt 读到物理内存0x32000000处!
22.flinfo: 列出flash的信息
23.loadb: 准备用 KERMIT协议接收来自kermit或超级终端传送的文件。
24.nfs: nfs 32000000 192.168.0.2:aa.txt , 把192.168.0.2(LINUX的NFS文件系统)中的NFS文件系统中的aa.txt 读入内存0x32000000处。