Hi Diego,
Diego Dompe wrote:
DM6446 and DM355 uses a different OOB layout for NAND booting than the
one used by the Linux kernels. This forces the bootloader to use a
custom OOB layout since the UBL needs to be loaded by the ROM code of
the SoC. The OOB layout is not only different in the position of the ECC
bytes, but in the location of the OOB, which uses syndrome mode (at
least on DM355, not sure on DM6446). I assume for simplicity uboot
should be using the same OOB for himself and the images it writes (our
bootloader uses the custom OOB only for the UBL, and the standard one
for the rest of the software).
I'm aware of the different layouts, but last I heard, upstream u-boot
did not support reading or writing the RBL/UBL OOB layout on DM6446 either.
[http://linux.omap.com/pipermail/davinci-linux-open-source/2008-February/005378.html]
So u-boot if it doesn't support the RBL's layout, that's okay. But
surely it should then support Linux's layout and not a different one yet
again? That's just lunacy (IMHO :)
If you want to be able to burn the software from Linux, the best you can
do is to modify the OOB layout of the davinci nand driver in Linux to
match the one used by your u-boot, or write and small application in
user space that uses a custom oob to write the nand (take a look at the
nandwrite program of the mtdutils package).
I may well end up taking this path (custom app). I'm surprised that
nobody else has run up against this yet - possibly because people use
JFFS2, which has its own thoughts on OOB layout which are consistent
(out of necessity) between the kernel and u-boot.
I can't see a reason why u-boot needs to have a different layout, and it
would be controversial to change it as it'll break existing devices.
It's a shame it wasn't made consistent in the beginning. Oh well :)
Cheers,
Bernard.
_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source