mtd: vf610_nfc: allow bitflips in an empty page
[oweals/u-boot.git] / drivers / mtd / nand / ndfc.c
index 94b90332d622acb518d3006857ca6e9ecba99dd7..8a68cb0a67a7fc226e1f805097561667b196d2c4 100644 (file)
  *     Thomas Gleixner
  *     Copyright 2006 IBM
  *
- * See file CREDITS for list of people who contributed to this
- * project.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; either version 2 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
+ * SPDX-License-Identifier:    GPL-2.0+
  */
 
 #include <common.h>
@@ -120,7 +104,6 @@ static void ndfc_read_buf(struct mtd_info *mtdinfo, uint8_t *buf, int len)
                *p++ = in_be32((u32 *)(base + NDFC_DATA));
 }
 
-#ifndef CONFIG_NAND_SPL
 /*
  * Don't use these speedup functions in NAND boot image, since the image
  * has to fit into 4kByte.
@@ -135,19 +118,6 @@ static void ndfc_write_buf(struct mtd_info *mtdinfo, const uint8_t *buf, int len
                out_be32((u32 *)(base + NDFC_DATA), *p++);
 }
 
-static int ndfc_verify_buf(struct mtd_info *mtdinfo, const uint8_t *buf, int len)
-{
-       struct nand_chip *this = mtdinfo->priv;
-       ulong base = (ulong) this->IO_ADDR_W & 0xffffff00;
-       uint32_t *p = (uint32_t *) buf;
-
-       for (; len > 0; len -= 4)
-               if (*p++ != in_be32((u32 *)(base + NDFC_DATA)))
-                       return -1;
-
-       return 0;
-}
-
 /*
  * Read a byte from the NDFC.
  */
@@ -164,8 +134,6 @@ static uint8_t ndfc_read_byte(struct mtd_info *mtd)
 
 }
 
-#endif /* #ifndef CONFIG_NAND_SPL */
-
 void board_nand_select_device(struct nand_chip *nand, int chip)
 {
        /*
@@ -223,21 +191,10 @@ int board_nand_init(struct nand_chip *nand)
        nand->options |= NAND_BUSWIDTH_16;
 #endif
 
-#ifndef CONFIG_NAND_SPL
        nand->write_buf  = ndfc_write_buf;
-       nand->verify_buf = ndfc_verify_buf;
        nand->read_byte = ndfc_read_byte;
 
        chip++;
-#else
-       /*
-        * Setup EBC (CS0 only right now)
-        */
-       mtebc(EBC0_CFG, CONFIG_SYS_NDFC_EBC0_CFG);
-
-       mtebc(PB0CR, CONFIG_SYS_EBC_PB0CR);
-       mtebc(PB0AP, CONFIG_SYS_EBC_PB0AP);
-#endif
 
        return 0;
 }