]> git.sur5r.net Git - u-boot/commitdiff
sunxi_nand_spl: Do not bother writing the spare-area reg in syndrome mode
authorHans de Goede <hdegoede@redhat.com>
Sat, 15 Aug 2015 10:43:26 +0000 (12:43 +0200)
committerHans de Goede <hdegoede@redhat.com>
Mon, 31 Aug 2015 06:43:41 +0000 (08:43 +0200)
In syndrome mode we set the NFC_SEQ bit in the command register, so the
spare-area register is not used. Also the value currently being written is
actual wrong, the ecc sits at "column + CONFIG_NAND_SUNXI_SPL_ECC_PAGE_SIZE"
not just CONFIG_NAND_SUNXI_SPL_ECC_PAGE_SIZE.

So the current code only serves to confuse the user -> remove it.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Acked-by: Ian Campbell <ijc@hellion.org.uk>
drivers/mtd/nand/sunxi_nand_spl.c

index 56c0be02f5b6c8ac93b979447aa126203a44eae4..f6f49289f8f69a3ad47965fab482d222256a27fa 100644 (file)
@@ -256,10 +256,7 @@ static void nand_read_page(unsigned int real_addr, dma_addr_t dst,
        val = readl(SUNXI_NFC_BASE + NFC_CTL);
        writel(val | NFC_CTL_RAM_METHOD, SUNXI_NFC_BASE + NFC_CTL);
 
-       if (syndrome) {
-               writel(CONFIG_NAND_SUNXI_SPL_ECC_PAGE_SIZE,
-                      SUNXI_NFC_BASE + NFC_SPARE_AREA);
-       } else {
+       if (!syndrome) {
                oob_offset = CONFIG_NAND_SUNXI_SPL_PAGE_SIZE
                        + (column / CONFIG_NAND_SUNXI_SPL_ECC_PAGE_SIZE)
                        * ecc_off;