@@ -350,13 +350,16 @@ compare:
* Clear any previous address calculation by doing a dummy read of an
- * error address register.
+ * error address register. UNDOCUMENTED that the ECC engine won't
+ * recover after 5-bit ECC errors without this step.
/* Start address calculation, and wait for it to complete.
* We _could_ start reading more data while this is working,
- * to speed up the overall page read.
+ * to speed up the overall page read. UNDOCUMENTED that
+ * reading some ERRVAL register is needed in all cases, not
+ * just when an error must be corrected.
davinci_nand_readl(info, NANDFCR_OFFSET) | BIT(13));