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)
committerLothar Waßmann <LW@KARO-electronics.de>
Thu, 10 Sep 2015 10:19:13 +0000 (12:19 +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 56c0be0..f6f4928 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;