1、之前已经将uboot写到nandflash里面了,接下来将内核zImage、文件系统写到nandflash。
2、编译内核
cd linux-2.6.28_smdk6410
make clean
make distclean
cp smdk6410_config .config
make menuconfig
将Device Drivers ---》Graphics support ---> Support for frame buffer devices ---> select LCD Type 分辨率调到480*272 保存(之后要校准屏幕)
make
make 完成之后将 /arch/arm/boot/zImage 复制到 /var/lib/tftpboot (tftp将zImage传输到开发板)
3、将zImage写入到nandflash并设为自动
uboot启动
nand erase 100000 400000 --------------擦出1M到4M的内存
tftp 50008000 zImage ---------------将内核传到DRAM 50008000地址
nand write 50008000 100000 400000 -----------------将内核写到nandflash 1M-4M间
set bootcmd nand read 50008000 100000 400000;bootm 50008000 ----------------------开启自动将nandflash 1M-4M内核文件读到DRAM 50008000地址并启动
save -----------------保存
完成!
4、将文件系统写到nandflash并设为自动
进入文件系统后,此时我们还是用的nfs,文件系统在PC机上。
ls /dev/mtdblock* -----------------查看nandflash一般有四块
mount /dev/mtdblock3 /mnt ---------------这里将第三块挂载到/mnt目录,对/mnt操作就相当于对mtdblock3操作
cp rootfs-qt-2.2.0.tar.gz ./
tar xf rootfs-qt-2.2.0.tar.gz
cd ..
chmod 777 /mnt/* -R
set bootages console=ttySAC0 root=/dev/mtdblock3 rootfs=yaffs2 --------------------------现在把文件系统写到mtdblock3里就可以自动挂载啦!
save
完成!现在可以不用插网线啦!有电源就可以裸奔。
5、屏幕校准
插上电源 6410一路裸奔到开机完成!
vi bin/qtopia
去掉 /usr/local/bin/ts_calibrate 前的注释符号 #
重启6410 即可进入校准界面,完成后,再在/usr/local/bin/ts_calibrate前加上注释符号#,不然每次都要校准!