u-boot-2016/drivers
Abhishek Sahu f7375a5dbe mtd: nand: ipq: erased page bitflips detection
Some of the newer nand parts can have bit flips in an erased
page due to the process technology used. In this case, ipq
nand controller is not able to identify that page as an erased
page. In case of bitflips, the ECC engine tries to correct the
data and then it generates the uncorrectable error. Now, this
data is not equal to original raw data.

Following logic is being added to identify the erased
codeword bitflips.

1. Maintain the bitmasks for the codewords which generated
   uncorrectable error.
2. Read the raw data again in temp buffer and count the
   number of zeros. Since spare bytes are unused in ECC layout and
   won’t affect ECC correctability so no need to count number of
   zero in spare bytes.
3. If the number of zero is below ECC correctability then it
   can be treated as erased CW. In this case, make all the data/oob
   of actual user buffers as 0xff.

Change-Id: I5a80cd371a926efa36c40b4db68e78ed78c30536
Signed-off-by: Abhishek Sahu <absahu@codeaurora.org>
2018-02-09 01:50:12 -08:00
..
adc sandbox: add ADC driver 2015-11-02 10:38:00 +09:00
bios_emulator Various Makefiles: Add SPDX-License-Identifier tags 2015-11-10 09:19:52 -05:00
block Fix typo: firstly -> first. 2015-12-05 18:22:23 -05:00
bootcount bootcount: Correct #endif comment to match, other aesthetics 2016-01-08 10:15:43 -05:00
clk ipq806x: enabled USB support 2017-12-27 09:32:30 +05:30
core dm: core: Fix Kconfig text to mention SPL in SPL_OF_TRANSLATE 2015-12-10 20:41:56 -07:00
cpu
crypto drivers/crypto/fsl: fix endianness issue in RNG 2015-12-15 08:57:35 +08:00
ddr move erratum a008336 and a008514 to soc specific file 2015-12-15 08:57:32 +08:00
demo
dfu dfu: dfu_sf: Pass duplicate devstr to parse_dev 2015-11-03 17:29:33 +01:00
dma qca: move ARM specific files to another sublevel 2017-01-06 12:33:30 +05:30
fpga Move console definitions into a new console.h file 2015-11-19 20:27:50 -07:00
gpio ipq807x: Fixed the AQ phy reset 2018-01-09 06:17:13 -08:00
hwmon
i2c ipq806x: fix i2c issues on AK 2018-01-09 00:11:38 -08:00
input Move console definitions into a new console.h file 2015-11-19 20:27:50 -07:00
led
memory Various Makefiles: Add SPDX-License-Identifier tags 2015-11-10 09:19:52 -05:00
misc Move console definitions into a new console.h file 2015-11-19 20:27:50 -07:00
mmc ipq40xx: fix emmc erase timeout issue 2018-01-23 15:10:35 +05:30
mtd mtd: nand: ipq: erased page bitflips detection 2018-02-09 01:50:12 -08:00
net ipq807x: Add ipq_mdio commands 2018-01-16 21:32:50 +05:30
pci ipq806x: Enabling pci for AP160 and Ap160_2xx board 2018-02-08 18:06:48 +05:30
pcmcia
pinctrl rockchip: rk3036: Add pinctrl driver 2015-12-01 08:07:22 -07:00
power sunxi: power: axp818: add support for axp818 driver 2015-12-10 11:14:22 +01:00
pwm
qe
ram
remoteproc drivers: remoteproc: rproc-uclass: Fix check for NULL pointers 2015-12-05 18:22:32 -05:00
rtc rtc: Add MCP79411 support to DS1307 rtc driver 2015-11-04 15:19:12 -08:00
serial ipq807x: Fix various KW warnings in drivers 2017-09-07 04:17:21 -07:00
soc Various Makefiles: Add SPDX-License-Identifier tags 2015-11-10 09:19:52 -05:00
sound
spi ipq40xx: enable SPI NAND support 2018-01-08 20:31:35 +05:30
thermal imx: mx7: fix the temperature checking for Rev1.1 2016-01-07 17:53:11 +01:00
timer x86: Move i8254_init() to x86_cpu_init_f() 2015-12-09 17:44:44 +08:00
tpm
twserial
usb ipq806x: xhci: Changing max packet size as per the spec 2018-01-30 12:46:46 +05:30
video Merge branch 'master' of git://www.denx.de/git/u-boot-imx 2015-12-04 08:21:28 -05:00
watchdog imx_watchdog: always set minimal timeout in reset_cpu 2016-01-07 17:54:53 +01:00
Kconfig dm: adc: add simple ADC uclass implementation 2015-11-02 10:38:00 +09:00
Makefile Fix compilation errors in clk driver 2016-09-29 21:03:49 +05:30