[U-Boot] PATCH: bugfix for nand erase failure with bad blocks
Wolfgang Denk
wd at denx.de
Wed Jun 17 11:18:09 CEST 2009
Dear Scott,
In message <4A37FE47.3030203 at freescale.com> you wrote:
>
> > I see - thanks for the explanation.
> >
> > Hm... actually I think the write should fail in such a case...
> >
> > Scott, what do you think?
>
> I think the current behavior is reasonable. You're erasing a specific
> region of flash, not an amount needed to hold a certain amount of data.
>
> While I can see the appeal of Michele's suggestion, I think it would be
> more error-prone as people trying to erase a region rather than just the
> size of data could erase too much.
That was my initial thought, too, which is why I asked Michele for an
explanation.
when I think about typiical use cases like automatic uypdate script
similar to:
=> tftp 200000 filename
=> nand erase 0 +${filesize}
=> nand write 200000 0 ${filesize}
I (and probably any other user) will expect that the "erase" and
"nand write" commands use the same interpretation for the size
argument, i. e. that and "erase" followed by a "write" will have made
sufficient room to write all data.
Thus I reconsidered and think the patch is actually reasonable, as it
does what is the most practical use case needs.
> It definitely should not be an error to erase a region that happens to
> contain a bad block. Bad blocks are expected and we need to work around
> them.
Agreed.
But it should be an error when writing to not erase flash blocks.
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
"...this does not mean that some of us should not want, in a rather
dispassionate sort of way, to put a bullet through csh's head."
- Larry Wall in <1992Aug6.221512.5963 at netlabs.com>
More information about the U-Boot
mailing list