mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-29 16:10:58 +00:00
1711add3dc
This is a fix made for the fsl_ifc_nand driver on linux kernel by Pavel Machek and is applied to uboot. It is currently on applied on linux-mtd. https://patchwork.kernel.org/patch/9758117/ IFC always raises ECC errors on erased pages. It is only ignored when the buffer is checked for all 0xFF by is_blank(). The problem is a single bitflip will cause is_blank() and then mtd_read to fail. The fix makes use of nand_check_erased_ecc_chunk() to check for empty pages instead of is_blank(). This also makes sure that reads are made at ECC page size granularity to get a proper bitflip count. If the number of bitflips does not exceed the ECC strength, the page is considered empty and the bitflips will be corrected when data is sent to the higher layers (e.g. ubi). Signed-off-by: Darwin Dingel <darwin.dingel@alliedtelesis.co.nz> Cc: Pavel Machek <pavel@denx.de> Cc: Scott Wood <oss@buserror.net> Acked-by: Pavel Machek <pavel@denx.de> [Kurt: Replaced dev_err by printf due to compiler warnings] Tested-by: Kurt Kanzenbach <kurt@linutronix.de> Signed-off-by: Kurt Kanzenbach <kurt@linutronix.de> Reviewed-by: York Sun <york.sun@nxp.com> |
||
---|---|---|
.. | ||
nand | ||
onenand | ||
spi | ||
ubi | ||
ubispl | ||
altera_qspi.c | ||
cfi_flash.c | ||
cfi_mtd.c | ||
jedec_flash.c | ||
Kconfig | ||
Makefile | ||
mtd-uclass.c | ||
mtd_uboot.c | ||
mtdconcat.c | ||
mtdcore.c | ||
mtdcore.h | ||
mtdpart.c | ||
mw_eeprom.c | ||
pic32_flash.c | ||
renesas_rpc_hf.c | ||
st_smi.c | ||
stm32_flash.c | ||
stm32_flash.h |