我们原来通过命令 U-BOOT# tftp 0x82000000 zImage;bootm 来加载内核并启动它;
但是这样太麻烦了,后来我们就像让UBOOt自己引导内核,我们只要将裁剪好的Linux内核写到某个位置即可。
步骤:
一、将Linux 镜像加载到内存起始地址0x82000000(这个地址以开饭板内存大小而定);
命令: #tftp 0x82000000 Boot3 【Boot3为我 的镜像名字】
二、擦除nand flash 将要被写的空间【此以0x100000--0x12000000为例】【此空间大小以镜像实际大小而定】
命令:#nand erase 0x100000 0x1100000
三、将镜像写到nand flash内
命令:#nand write 0x82000000 0x100000 0x11000000 【此句表示:从内存地址0x82000000 处将镜像写到nand flash 空间0x100000--0x12000000】
接下来就是配置UBOOT环境变量了```
四、选择UBOOT引导内核的存储位置
命令:# setenv bootargs console=ttyO0,57600n8 rw mem=128M root=/dev/mtdblock2 【此句表示:从mtdblock2引导内核,原本是从内存root=/dev/ram】
五、设置读取镜像的位置,即,刚才写入nand flash 的地址
命令:#setenv bootcmd nand read 0x82000000 0x100000 0x1100000\ ;bootm 0x82000000
到此,大功告成,掉电重启板子将自动进入内核。