- 论坛徽章:
- 0
|
第四章 使用u-boot引导系统
一般的,储存设备我们都挂到LocalBus上,在/include/configs/MPC8360EMDS.h中可以修改各个储存设备的物理地址。
我的系统中NAND Flash地址空间是0xFE00,0000-0xFFFF,FFFF。0x4000,0000以下的低地址空间为DDR内存物理地址。
Flash空间的使用划分是
Start End Definition
0xfe000000 0xfe0fffff U-Boot 1M
0xfe100000 0xfe8fffff JFFS2 file system 8M
0xfe900000 0xfecfffff Ramdisk file system 4M
0xfed00000 0xffcfffff Reserved 16M
0xffd00000 0xffefffff Linux kernel 2M
0xfff00000 0xffffffff DTB 1M
1.1 用CodeWarrior烧写U-Boot
1) 自然不必多说,先插上仿真器。
2) 点击Tools->Flash Programmer
3) 选择初始化配置文件:MPC8360MDS_rev2_init.cfg. 路径是:PowerPC_EABI_Support\Initialization_Files\PQ2\
4) 擦除的地址是 0xfe000000 ~0xffffffff.
5) 选择LTIB生成的u-boot文件 u-boot.bin写入地址是0xfe000000~0xfe0fffff
如果出现初始化失败的提示,注意按硬件平台修改MPC8360MDS_rev2_init.cfg。如果出现读写出错,问题多半处在读写的地址是否正确。
1.2 从U-Boot里烧写内核、文件系统和dtb
首先现在在PC架设一个TFTP服务器,Windows下或者Linux下都可以。我们需要使用tftp通过网线将文件下载到开发板上去。
上电,从串口进入U-Boot的命令行。应该能看到如下的提示符:
=>
=>pri
此命令可查看现在U-Boot的配置
=>help
查看帮助
先配置服务器
=>setenv ipaddr 192.168.1.3
这是设置开发板的IP
=>setenv serverip 192.168.1.2
这是设置PC机也就是TFTP服务器的IP
=>saveenv
保存一下配置
以下烧写内核到Flash
=>tftp 200000 /tftproot/uImage
将内核映像通过TFTP下载到内存中去,200000是一个任意内存地址。
=>protect off all
关保护,否则不能写Flash
=>erase ffd00000 ffefffff
擦除Flash
=>cp.b 200000 ffd00000 $filesize
将内核映像从内存拷贝到Flash中去。
=>protect on all
关保护
这样内核映像的烧写就完成了,以此类推,还需要将文件系统和DTB用同样的方法下载到Flash中去。
1.3 配置U-Boot启动参数。
对于不同类型的文件系统,启动参数也不一样。
1) Ramdisk文件系统
Ramdisk文件系统在启动后会将文件系统解压到内存中运行。所以它的运行速度较快,在内存容量比较大的时候推荐使用。但是这样的话,在其里面保存的文件也就启动后就没有了。所以我们一般还需要挂载一个小一点的JFFS2分文件系统来保存一下启动后仍需保留的文件。
启动参数配置为:
=>setenv bootargs root=/dev/ram console=ttyS0,115200
2) JFFS2文件系统
JFFS2文件系统存在Flash中,运行速度有点慢,特别当文件系统越来越大以后哦更明显。
启动参数配置为:
=>setenv bootargs root=/dev/mtdblock1 rootfstype=jffs2 rw console=ttyS0,115200
3) NFS文件系统
NFS文件系统通过网络启动,是调试时经常使用的文件系统。
启动参数配置为:
=>setenv bootargs root=/dev/nfs rw nfsroot=192.168.1.2:/tftproot/root/ ip=192.168.1.3:192.168.1.2:192.168.1.1:255.255.255.0::eth0:off mac=00:16:12:19:06:30 console=ttyS0,115200
最后还要配置启动命令:
=>bootm ffd00000 fe900000 fff00000
第一个地址是内核地址,第二个是文件系统,第三个是DTB。
=>save
别忘了保存。
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/86510/showart_1804238.html |
|