u-boot-brain/drivers/mtd/nand
Stefan Agner 7653fc288a mtd: vf610_nfc: mark page as dirty on block erase
The driver tries to re-use the page buffer by storing the page
number of the current page in the buffer. The page is only read
if the requested page number is not currently in the buffer. When
a block is erased, the page number is marked as invalid if the
erased page equals the one currently in the cache. However, since
a erase block consists of multiple pages, also other page numbers
could be affected.

The commands to reproduce this issue (on a written page):
> nand dump 0x800
> nand erase 0x0 0x20000
> nand dump 0x800

The second nand dump command returns the data from the buffer,
while in fact the page is erased (0xff).

Avoid the hassle to calculate whether the page is affected or not,
but set the page buffer unconditionally to invalid instead.

Signed-off-by: Stefan Agner <stefan@agner.ch>
2015-03-30 23:33:42 -05:00
..
am335x_spl_bch.c mtd: nand: am335x: Fix 'bit-flip' errors in SPL 2014-09-25 13:43:00 -05:00
atmel_nand_ecc.h mtd: atmel_nand: according to pmecc version to perform 0xff page correction 2015-02-07 23:42:57 +01:00
atmel_nand.c mtd: atmel_nand: according to pmecc version to perform 0xff page correction 2015-02-07 23:42:57 +01:00
bfin_nand.c mtd: resync with Linux-3.7.1 2013-05-31 17:12:03 -05:00
davinci_nand.c nand: Remove CONFIG_MTD_NAND_VERIFY_WRITE 2015-03-30 23:24:39 -05:00
denali_spl.c linux/kernel.h: sync min, max, min3, max3 macros with Linux 2014-11-23 06:48:30 -05:00
denali.c mtd: denali: set some registers after nand_scan_ident() 2014-11-26 19:53:22 -06:00
denali.h mtd: denali: use CONFIG_SYS_NAND_SELF_INIT 2014-11-26 19:53:19 -06:00
docg4_spl.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
docg4.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
fsl_elbc_nand.c nand: Remove CONFIG_MTD_NAND_VERIFY_WRITE 2015-03-30 23:24:39 -05:00
fsl_elbc_spl.c Coding Style cleanup: replace leading SPACEs by TABs 2013-10-14 16:06:54 -04:00
fsl_ifc_nand.c nand: Remove CONFIG_MTD_NAND_VERIFY_WRITE 2015-03-30 23:24:39 -05:00
fsl_ifc_spl.c arm: ls102xa: Add NAND boot support for LS1021AQDS board 2014-12-11 09:40:24 -08:00
fsl_upm.c nand: Remove CONFIG_MTD_NAND_VERIFY_WRITE 2015-03-30 23:24:39 -05:00
fsmc_nand.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
jz4740_nand.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
kb9202_nand.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
Kconfig kconfig: remove unneeded dependency on !SPL_BUILD 2015-02-24 17:06:27 -05:00
kirkwood_nand.c arm: marvell: Move arch/kirkwood.h to arch/soc.h 2014-10-23 09:59:20 -04:00
kmeter1_nand.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
Makefile Merge remote-tracking branch 'u-boot-imx/master' 2014-10-08 21:20:49 +02:00
mpc5121_nfc.c nand: Remove CONFIG_MTD_NAND_VERIFY_WRITE 2015-03-30 23:24:39 -05:00
mxc_nand_spl.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
mxc_nand.c nand: Remove CONFIG_MTD_NAND_VERIFY_WRITE 2015-03-30 23:24:39 -05:00
mxc_nand.h Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
mxs_nand_spl.c spl: nand: add support for mxs nand 2014-06-06 10:07:25 +02:00
mxs_nand.c mtd: nand: mxs: fix PIO_WORDs in mxs_nand_write_buf() 2015-03-30 22:25:54 -05:00
nand_base.c nand: Remove CONFIG_MTD_NAND_VERIFY_WRITE 2015-03-30 23:24:39 -05:00
nand_bbt.c kbuild: force to define __UBOOT__ in all the C sources 2014-09-16 12:23:56 -04:00
nand_bch.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
nand_ecc.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
nand_ids.c kbuild: force to define __UBOOT__ in all the C sources 2014-09-16 12:23:56 -04:00
nand_plat.c mtd: nand_plat: add simple GPIO framework DEV_READY option 2010-07-08 16:52:12 -05:00
nand_spl_load.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
nand_spl_simple.c mtd: nand: force NAND_CMD_READID onto 8-bit bus 2014-06-06 17:46:03 -04:00
nand_util.c nand: yaffs: Remove the "nand write.yaffs" command 2015-03-30 23:24:39 -05:00
nand.c nand: Introduce CONFIG_SYS_NAND_SELF_INIT 2012-01-26 16:09:06 -06:00
ndfc.c nand: Remove CONFIG_MTD_NAND_VERIFY_WRITE 2015-03-30 23:24:39 -05:00
nomadik.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
omap_elm.c mtd: nand: omap: fix error-codes returned from omap-elm driver 2014-06-06 17:46:00 -04:00
omap_gpmc.c omap: gpmc: 'nandecc sw' can use HAM1 or BCH8 2015-03-05 20:49:43 -05:00
s3c2410_nand.c mtd: nand: s3c: Unify the register definition and naming 2014-11-26 23:21:43 -06:00
tegra_nand.c dm: tegra: nand: Remove use of fdtdec GPIO support 2015-01-29 17:09:52 -07:00
tegra_nand.h Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
vf610_nfc.c mtd: vf610_nfc: mark page as dirty on block erase 2015-03-30 23:33:42 -05:00