参照博文:http://blog.csdn.net/q1302182594/article/details/52433583
1格式化SD卡,对其进行分区
先在windows下面将卡格式化为FAT32格式,然后将SD接入到ubuntu下面,通过脚本文件 mkcard.sh 对SD卡进行分区。执行以下步骤:
1 解除SD卡的挂载: umount /media/xxx
2 利用脚本进行分区: sudo ./mkcard.sh /dev/sdb
3 分区完成后,检验分区是否成功: ls /media 看/media目录下是否有分区后的boot 和 rootfs盘符
2拷贝内核镜像uImage.bin,模块描述文件uImage.dtb到boot分区,并解压根文件系统rootfs.tar.bz2到rootfs分区
1 拷贝uImage.bin,uImage.dtb到boot分区
2 先创建临时文件夹解压根文件系统,然后将其拷贝到rootfs分区
mkdir /home/xxx/tmp
sudo tar -xzvf fsl-image-full-ls1021atwr.rootfs.tar.gz -C /home/xxx/tmp
sudo cp -a /home/xxx/tmp/* /media/rootfs
3烧写u-boot到SD卡
在ubuntu下执行dd命令: sudo dd if=u-boot-with-spl-pbl-ls1021atwr_sdcard-2013.10+fslgit-r0.bin of=/dev/sdb bs=512 seek=8
4配置u-boot启动命令
将SD卡插入开发板,硬件跳线配置为SD卡启动,此时应该能在终端上看到u-boot的启动信息,然后配置启动环境变量bootcmd和bootargs
=> setenv bootargs root=/dev/mmcblk0p2 rw rootfstype=ext3 rootdelay=1 console=ttyS0,115200
=> setenv bootcmd fatload mmc 0:1 0x82000000 uImage.bin\;fatload mmc 0:1 0x8f000000 uImage.dtb\;bootm 82000000 - 8f000000
=> saveenv
=> boot
完成以上步骤后,此时内核就能通过sd卡上的u-boot来进行引导启动了