simon at baydel.com
simon at baydel.com
Thu Feb 19 11:48:45 EST 2004
I am having problems using JFFS2 filesystems on a NAND device. I have had
these problems in the past an decided not to use this method for storing my data.
I would really like to do this and I was wondering if anyone else had been able to
run such a system reliably ? The NAND device is a 128MB SMC and I have
downloaded the mtd code from CVS within the last week.
I am using mtdpart to provide partitions but for the moment I am only using mtd1 as
a root file system. To build this I perform the following steps.
1. Boot system via network and mount nfs root
2. eraseall /dev/mtd1
3. mount -t jffs2 /dev/mtdblock1 /smc
4. cd /smc
5. tar xvzf /rootfilesystem.tgz
6. unmount /smc
I then reboot using the SMC as my root filesystem. As the system gets rebooted
and incurrs more writes I get the following kinds of message
Empty flash at 0x00469ffcb ends at 0x0046a000
jffs2_scan_dirent_node(): Node CRC failed on node at 0x0046a7f0
read 0xffffffff calculated 0xdec8161b
I have written in before about these messages and I understand that the first is of
no concern but the second relates to write data which may not have been written to
The thing is I have had this happen on two completely different harware designs.
On an X86 board and the other a PPC.
I have checked and the OS umounts root as it shuts down. Also I cannot find
fsck.jffs2 in the util directory. Does it exist ?
In trying to debug this I noticed that the device was still reporting busy when
nand_command was entered. I have put a line of code in to delay until the device is
ready at the start of the routine. It is my understanding that if the device is busy
when you try and select/deselect or send a command the outcome cannot be
predicted. If this is not the case I would like to understand why. If it is how does any
of the NAND code work ?
Any help greatly appreciated
Simon Haynes - Baydel
Phone : 44 (0) 1372 378811
Email : simon at baydel.com
More information about the linux-mtd