NAND Configuration

Steve Tsai startec at ms11.hinet.net
Wed Aug 7 22:47:49 EDT 2002


> > > > JFFS2 on NOR type flash does not use buffering, OOB 
> check and bad
> > > > block management, but it can be used now. I meant that 
> > > > CONFIG_JFFS2_FS_NAND is not defined, maybe the driver still 
> > > can work,
> > > > but it is not good as the original one.
> > > 
> > > JFFS2 cannot work on NAND flash without the extra code enabled by
> > > CONFIG_JFFS2_FS_NAND. You need to batch writes into 
> > > page-sized chunks and 
> > > use ECC. It looks like you have enabled CONFIG_JFFS2_FS_NAND 
> > > in the log you 
> > > show -- is that correct?
> > > 
> > 
> > Yes, I enable CONFIG_JFFS2_FS_NAND. I follow 
> > http://www.linux-mtd.infradead.org/tech/nand.html to config the 
> > settings. Can I do not care ECC on NAND flash?
> > 
> ECC _HAS_ to be enabled !
> 
> Have you ever erased your flash with erase /dev/mtdX ?
> This may have caused the problem, because erase is not aware 
> of bad block handling and may have erased a block, which was 
> marked as bad already and erased the bad block marker too. So 
> if you write to this block, you get a write failure and 
> therefor a read failure afterwards. 
> I will change nand.c, so that bad blocks cannot be erased anymore.
> 
> Another problem could be your command delay time. You have 
> set it to 15µsec. Is that correct for your chip ? Which chip 
> are you using ? Have you tried to set it to a higher value ? 
> 

Yes, I use eraseall /dev/mtd1 to erase the partition. But I check the
page that causes the problem, it is fine to read/write all the page.

I use Samsung K9F6408 and I try to set the delay time to 20µsec and it
can not solve the problem.

Could I use the content of the page that the error occures to trace the
problem? Can it help to solve the problem? Thanks.


Steve Tsai





More information about the linux-mtd mailing list