Bad Blocks On JFFS2/NAND
Simon Haynes
simon at baydel.com
Tue Oct 19 11:18:25 EDT 2004
I am using an old mtd layer which has nand.c and not nand_base.c.
I have hacked this accordingly and I will see if I can produce the same
problem.
I did try to update my kernel but patchin.sh failed and I had to hack some
header files to get a kernel. This kernel crashed in a couple of different
places when writing to my SSFDC partition. I guess things have changed here
again ?
Cheers
Simon.
On Tuesday 19 Oct 2004 4:02 pm, Thomas Gleixner wrote:
> On Tue, 2004-10-19 at 16:39, Simon Haynes wrote:
> > Thomas,
> >
> > I am using the ready pin.
>
> Hmm, the strange thing is, that it does not complain about a failed
> erase. It complaines, when checking if the chip is really erased.
>
> Can you try the hack below, which invalidates the page cachen
> unconditionally on erase ?
>
> tglx
>
> RCS file: /home/cvs/mtd/drivers/mtd/nand/nand_base.c,v
> retrieving revision 1.121
> diff -u -r1.121 nand_base.c
> --- nand_base.c 6 Oct 2004 19:53:11 -0000 1.121
> +++ nand_base.c 19 Oct 2004 15:09:35 -0000
> @@ -2091,8 +2091,7 @@
>
> /* Invalidate the page cache, if we erase the block
> which contains
> the current cached page */
> - if (page <= this->pagebuf && this->pagebuf < (page +
> pages_per_block))
> - this->pagebuf = -1;
> + this->pagebuf = -1;
>
> this->erase_cmd (mtd, page & this->pagemask);
>
>
>
>
> ______________________________________________________
> Linux MTD discussion mailing list
> http://lists.infradead.org/mailman/listinfo/linux-mtd/
More information about the linux-mtd
mailing list