最近公司有个iptv项目,采用trident芯片,盒子里存储芯片只有一颗64MB 的nand flash。
nand flash 暂定分4个区:
1 bootloaderA(uldr + uboot)
2 kernel
3 update()
3 rootfs
4 appfs
第一步 使用mkffs.jffs2命令制作文件系统的镜像:
mkfs.jffs2 -n -p -e 0x20000 -l -d rootfs -o rootfs.jffs2.nand
mkfs.jffs2 -n -p -e 0x20000 -l -d appfs -o appfs.jffs2.nand
第二步 烧录
直接在u-boot里 调用nand erase ,nand write 命令 将镜像烧写到特定的地址上。
第三步 为了便于工厂批量烧录,可以做一个专门用于升级的u-boot文件,直接通过串口下载到板子上,启动起来后,自动从tftp服务器上下载bootloader ,kernel和镜像文件,并烧写到nand flash 的相应地址上。(这有个确定,时间长,速度慢)
另一个方法是找到nand flash的烧录器,直接烧录这样的镜像文件。希望是可以跳过坏块的。这样速度就有很大的提升。这种烧录器现在正在寻找。在未找到合适的之前只能采取第三步的方法了。
阅读(1502) | 评论(0) | 转发(0) |