Re: [PATCH] NAND: Fix NAND ECC errors on AMD Au1550

Leif Lindholm
2005-11-01T15:50:45Z

On Tue, 2005-11-01 at 18:29 +0300, Sergei Shtylylov wrote:
> > Attached is an incremental patch on top of Sergeys latest patch
> > (yesterday). Is that's ok, or should I do the same for the old one?
>
> Alas, I have to NAK your patch.

Ok.

> Note, that with NAND_CMD_READID page_addr of -1 is always passed (so we
> only write out the 1-byte column address) on the address phase, and we just
> won't get there for READID command....

> Therefore, neither -CE wil be overridden nor local_irq_save() be executed
> for READID case...

Well, I guess I cheated a bit.

In the more well-tested version of the driver (using your older patch),
I actually do the force-assert for (column != -1) as well.

When doing the merge here, I must have messed up something while testing
and out of pure confusion decided that I didn't have to include that
part.

> > + if (ce_override) {
> > /* Apply a short delay always to ensure that we do wait tWB. */
> > ndelay(100);
> > /* Wait for a chip to become ready... */
> > @@ -442,6 +431,19 @@ static void au1550_command(struct mtd_in
> > local_irq_restore(flags);
>
> ... and later you get the CPU flags corrupted.

Oops...
See above.

> Has your READID problem arisen with or without my patch?

Your patch fixed the problem of a collision with the NOR flash.
But only after I added the READID force-assert. Before that it caused
the NAND chip to stop being detected.

regards
/
Leif