U-boot: 1.3.3
Linux kernel: 2.6.24 + patches to approximate current git
NAND: 256MiB with 128KiB blocks and 2KiB pages

I tried flashing a kernel image into NAND on an mtd device using the
nandwrite utility from within Linux. u-boot cannot read the image
and it fails with "read error".

If I flash the image with u-boot's nand write, u-boot can boot it.
Reading it from Linux generates loads of correctable and
uncorrectable bitflip errors in dmesg. Also, comparing the result
read through Linux with the original image indeed shows a whole
bunch of bit flips all over the place (but with no pattern or
regularity).

This leads me to believe that perhaps the ECC layouts used by u-boot
and the kernel differ slightly. It seems that u-boot defines a
custom nand_oobinfo in davinci_nand_oobinfo. However, the
davinci_nand driver in the kernel does not and I gather it uses the
defaults in nand_base.c, which are significantly different. Should
these be both using the same ECC layout?

Has anybody else run into this, or am I doing something silly? All I
want to be able to do is drop a new kernel in for u-boot but from
Linux.

TIA,
Bernard.

_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to