Suspend Erase bug in cfi_cmdset0001.c

Joakim Tjernlund joakim.tjernlund at lumentis.se
Thu Feb 14 03:17:35 EST 2002


Hi again

Found the problem. It was the Flash itself, some of our flash is
marked(FPO number): U0120480P
The last "digit",P, is the revision and according to the chip errata there are
only three revisons: A,B and C. A and B has Erase Suspend bugs.

So where does revision P fit in? Is it some pre-production revison?(Intel is
very slow to respond).
Is there any way to query the flash for revision (or stepping) info? I would like to
detect the chip revision and disable the Suspend Erase feature.

Also, I have found a few other small bugs in cfi_cmdset0001.c and I am working
on support for Erase Suspend during writes.

   Jocke 

> -----Original Message-----
> From: Joakim Tjernlund [mailto:joakim.tjernlund at lumentis.se]
> Sent: Wednesday, February 13, 2002 8:57
> To: linux-mtd at lists.infradead.org
> Subject: Suspend Erase bug in cfi_cmdset0001.c
> 
> 
> Hi 
> 
> I have been hit by a bug in the Erase Suspend logic in do_read_onechip().
> If I mount a fresh JFFS2 FS(generated by mkfs.jffs2) I end up with one or two
> partially erased sectors(JFFS2 complains: Newly-erased block contain word 0xffffbfff 
> at offset xxxx). If I force it to sleep(goto sleep;) instead, it works.
> I have tried to figure out whats wrong with the Erase suspend logic 
> but no success so far.
> 
> I am using Intel Strata Flash, 28F128J3A in 16 bit mode, interleaved to fit 
> on a 32 bit bus. CPU: MPC860
> 
>  Jocke





More information about the linux-mtd mailing list