Q:在啟動過程中出現(xiàn)at91sam user.warn kernel: Empty flash at 0x00f0fffc ends at 0x00f10000問題
A:在mkfs.jffs2的時候,加上-e 0x20000指定擦除塊的大小。-e是指定擦除塊的大小,我們使用的nandflash的塊大小為128K字節(jié),因此-e后的參數(shù)為(128*1024)10=(20000)16。
Q:啟動的時候出現(xiàn)CLEANMARKER node found at 0x00f10000 has totlen 0xc != normal 0x0問題。
A:在mkfs.jffs2的時候,加上-n選項。-n, --no-cleanmarkers。指明不添加清楚標(biāo)記(nand flash有自己的校檢塊,存放相關(guān)的信息。)如果掛載后會出現(xiàn)類似:CLEANMARKER node found at 0x0042c000 has totlen 0xc != normal 0x0的警告,則加上-n 就會消失。
Q:解決jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x01649298: 0xa25e instead問題的方法
A:在mkfs.jffs2的時候加上-s 2048(頁大小,由芯片決定)以及-l(小端模式)兩個選項。-s是指明頁的大小,我們使用的nandflash的頁的大小為2048字節(jié)。-l指明為小端模式,一般嵌入式下均為小端模式。
說明:
1、 在文件系統(tǒng)制作的過程,均需要使用root用戶權(quán)限;
2、 一般嵌入式下只有root用戶登錄,因此文件系統(tǒng)中的所有文件都需要具有root可執(zhí)行權(quán)限,如果用其他用戶登錄,請保證文件系統(tǒng)中文件(特別是自己添加的文件)的相應(yīng)可執(zhí)行權(quán)限。