[U-Boot] Q: NAND read/write: unaligned offset

Ran Shalit ranshalit at gmail.com
Sat Jul 2 08:16:01 CEST 2011


>
> >  When using nand_write_skip_bad, the aligned offset refers to page (not
> > sector or block), so if as I understand , I can read from the start of
> > page the whole relevant data, then modify only the parts which is
> changed,
>
> That's not the same thing as just filling in the parts you're not writing
> with 0xFFs, but still it's not safe unless you erase the block.  Even if
> the
> main portion of the page doesn't contain any bits that go from 0 to 1, and
> you've got the data to calculate the proper new ECC, the ECC itself will
> probably have bits going from 0 to 1.
>
> Plus, some chips may not take writing 0xFFs as a no-op -- see the
> recent patches to support skipping pages with all 0xFFs on write.
>
> -Scott
>
> I wanted to write different parts of the page each time. And now I
undertsand that
the ECC is stored for each page, which mean that what I am trying to do , is
impossible  (if I am using ecc),
i.e. writing the same page without erasing is not allowed when using ecc. Am
I right about this conclusion ?

Thanks, Ran


More information about the U-Boot mailing list