1.cramfs制作
cramfs-1.1.tar.gz
>mkcramfs rootfs root.cramfs
2.jffs2制作
下载:mtd-utils-1.5.0.tar.bz2
》cd mtd-utils-1.5.0
>make
>make install(或者cp mkimage to /usr/bin)
$mkfs.jffs2 -n -s 512 -e 16KiB -d filesys -o filesys.jffs2
或$mkfs.jffs2 -r filesys -o filesys.jffs2 -e 0x4000 --pad=0x800000 -n(这个制作的,不管文件系统多大,--pad=0x800000 这个参数都让做成8MB)
例如:
mkfs.jffs2 -r ramdiskfs -o root.jffs2 -s 0x200 -e 0x4000 --pad=0x500000 -n(nand flash 型号K9F1208U0B ,页512,块大小512*32=2E14)
注释: 上面命令中,"-n"表示不要在每个擦除块上都加上清除标志,"-s 512"指明一页大小为512字节,"-e 16KiB”指明一个擦除块大小为16KB,"-d"表示根文件系统目录,"-o"表示输出文件(目标文件)。"--pad"表示用16进制输出文件的大小,也就是filesys.jffs2的size。 |
3.jffs2文件系统烧写
#tftp 30008000 filesys.jffs2
#nand erase 500000(偏移) 500000(大小)(根文件系统所在的分区,kernel启动的时候有显示)
#nand write 30008000 200000 800000 (nand write 下载的地址 偏移地址 大小 我们的是: #nand write 30008000 500000 500000)
注意:目前我们nandflash的分区:
0-128k(20000) u-booy1.1.6
128k(20000)-192k(30000) param
192k(30000)-5M(500000) kernel
5M(500000)-10M(a00000) jffs2
10M(a00000)-20M(1400000) cramfs
4. busybox制作
>wget http://busybox.net/downloads/busybox-1.20.2.tar.bz2
》make menuconfig(或者cp configs/defconfig .config)
选择静态编译
选择编译器前缀
选择安装目录
》make
》make install