[U-Boot] [PATCH 1/5] nand: Use common read function instead of verify_buf()
Peter Tyser
ptyser at xes-inc.com
Tue Jan 27 00:17:49 CET 2015
On Mon, 2015-01-26 at 16:33 -0600, Scott Wood wrote:
> On Mon, 2015-01-26 at 16:24 -0600, Peter Tyser wrote:
> > The driver-specific verify_buf() function can be replaced with the
> > standard read_page_raw() function to verify writes. This will
> > allow
> > verify_buf() to be removed from individual drivers. verify_buf()
> > is no
> > longer supported in mainline Linux, so it is a pain to continue
> > supporting.
>
> Any reason not to just remove this feature from U-Boot, as Linux has
> done?
The Linux change for reference:
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=657f28f8811c92724db10d18bbbec70d540147d6
I waffled about removing it, but leaned towards leaving it in because:
- I didn't want to change the existing U-Boot behavior for other
users. A google of 'u-boot "nand write"' shows a lot of examples that
don't include verification of writes, and they should if we remove
auto-verification.
- The reason it was removed in Linux was "Both UBI and JFFS2 are able
to read verify what they wrote already. There are also MTD tests
which do this verification." I thought U-Boot was more likely than
Linux to use raw NAND writes without a filesystem, so leaving it in U-
Boot made sense since the UBI/JFFS2 logic didn't apply as much here.
- I didn't think a lot of people would know they have to explicitly
verify NAND contents after a write, since they'd assume it was like
other memories that aren't as lossy.
- The penalty of slightly different code from Linux and a small
performance hit was worth the gain of auto-verification to me. I
viewed consolidating it into one small chunk of code as a happy medium.
The philosophical side of me said to remove it altogether, so I can
see that perspective too.
Peter
More information about the U-Boot
mailing list