NAND Configuration

Thomas Gleixner tglx at linutronix.de
Wed Aug 7 06:49:05 EDT 2002


On Wed, 2002-08-07 at 12:19, Steve Tsai wrote:
> > > 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 ? 

-- 
Thomas 
____________________________________________________
linutronix - competence in embedded & realtime linux
http://www.linutronix.de
mail: tglx at linutronix.de





More information about the linux-mtd mailing list