作者:程姚根,華清遠見嵌入式學(xué)院講師。
1、zlib的編譯
解壓zlib-1.2.3.tar.bz2并進入zlib-1.2.3配置編譯安裝
$ tar xvf zlib-1.2.3.tar.bz2
$ cd zlib-1.2.3
$ ./configure
$ make
$ make install
2、mtd工具編譯
解壓mtd-snapshot-20050519.tar.bz2 并進入mtd/util編譯安裝
$ tar xvf mtd-snapshot-20050519.tar.bz2
$ cd mtd/util
$ make
$ make install
這樣我們的系統(tǒng)里就有了mkfs.jffs2這個工具了
3、jffs2文件系統(tǒng)鏡像制作
$ mkfs.jffs2 -r /source/rootfs -o rootfs.jffs2 -e 0x4000 --pad=0x800000 -n
(-e擦的塊大小更cat /proc/mtd下面的要統(tǒng)一,這個參數(shù)是根據(jù)nand flash芯片手冊查到的
--pad 如果根文件系統(tǒng)小于此參數(shù)指定的大小,那么制作成的文件系統(tǒng)鏡像會跟指定的參數(shù)一樣大。
-n指定小端模式)
$ cp rootfs.jffs2 /tftpboot
4、jffs2文件系統(tǒng)燒寫
# tftp 30008000 rootfs.jffs2
# nand erase 500000 800000
# nand write 30008000 500000 800000
5、設(shè)置u-boot啟動參數(shù)
# setenv bootcmd tftp 33000000 zImage\; go 33000000
# setenv bootargs root=/dev/mtdblock2 init=/linuxrc rootfstype=jffs2 rw
console=ttySAC0,115200
# savenv
6、重新啟動開發(fā)板,查看是否成功
注意:如果NAND FLASH分區(qū)比jffs2文件系統(tǒng)鏡像大,會提示一些信息,可以通過在內(nèi)核中找到打印這些信息的文件(可以用grep命令在內(nèi)核源碼樹下搜索),進入其中把相應(yīng)得prink注釋掉就行了。
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請
點擊舉報。