[U-Boot] Writing u-boot to NAND from U-Boot results in "ecc unrecoverable error"

Adam Lee adam.yh.lee at gmail.com
Mon Jan 26 19:43:10 CET 2015


Hello everyone,

I have a Gumstix Overo (OMAP3) COM here that I am evaluating BCH8 ECC
scheme on boot-loader (2014.10) and the kernel (3.17.7).
Traditionally the board has been configured with 1 bit HAM, as are other
OMAP3 boards.

I have these changes in my board config:

+#define CONFIG_BCH
+#define CONFIG_SYS_NAND_MAX_ECCPOS  56
+#define CONFIG_SYS_NAND_ECCPOS      {2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, \
+                     13, 14, 16, 17, 18, 19, 20, 21, 22, \
+                     23, 24, 25, 26, 27, 28, 30, 31, 32, \
+                     33, 34, 35, 36, 37, 38, 39, 40, 41, \
+                     42, 44, 45, 46, 47, 48, 49, 50, 51, \
+                     52, 53, 54, 55, 56}
+#define CONFIG_SYS_NAND_ECCBYTES       13
+#define CONFIG_NAND_OMAP_ECCSCHEME     OMAP_ECC_BCH8_CODE_HW_DETECTION_SW
+#define CONFIG_SPL_MAX_SIZE            (58 * 1024)

And other than MLO, I make sure 'nandecc sw' before I do any NAND
write/read.

Now the first problem occurs after MLO executes and before U-Boot is
loaded. I get a whole bunch of "ecc unrecoverable error" from
`nand_spl_load_image` calls. Weird thing is that U-Boot image eventually
gets loaded after a couple hundred lines of these error messages.

This problem however does not occur when I write the U-Boot image from the
Kernel using flash_erase and nandwrite tools (my DTS has ti,nand-ecc-opt =
"bch8"; ".

Any pointers would be greatly appreciated,

Adam


More information about the U-Boot mailing list