linux/drivers/mtd/nand
Xiaolei Li 8840431255 mtd: nand: mtk: disable ecc irq when writing page with hwecc
Currently, ecc encode irq is enabled when writing page with hwecc, but
we actually do not wait for this irq done. Because NFI and ECC work in
parallel, nfi irq and ecc irq almost come together.

Now, there are two steps to check whether page data are totally written.
First, wait for nfi irq INTR_AHB_DONE. This is to ensure all data
in RAM are received by NFI.
Second, polling the register NFI_ADDRCNTR till all data include ecc
parity data runtime generated by ECC are sent to NAND device.

So, it is redunant to enable ecc irq without waiting for it.

Signed-off-by: Xiaolei Li <xiaolei.li@mediatek.com>
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>
2017-06-25 16:54:01 +02:00
..
atmel mtd: nand: atmel: drop unused include 2017-06-13 15:06:55 +02:00
bcm47xxnflash mtd: nand: Make sure drivers not supporting SET/GET_FEATURES return -ENOTSUPP 2017-05-30 08:59:26 +02:00
brcmnand mtd: nand: brcmnand: Check flash #WP pin status before nand erase/program 2017-04-25 14:18:42 +02:00
gpmi-nand mtd: nand: gpmi: fix typo in comment 2017-06-10 12:09:28 +02:00
ams-delta.c mtd: nand: ams-delta: return error code of nand_scan() on error 2016-11-07 14:48:41 +01:00
au1550nd.c mtd: nand: au1550nd: set ECC algorithm explicitly 2016-05-05 23:51:53 +02:00
bf5xx_nand.c mtd: nand: import nand_hw_control_init() 2016-09-23 09:35:16 +02:00
cafe_nand.c mtd: nand: Make sure drivers not supporting SET/GET_FEATURES return -ENOTSUPP 2017-05-30 08:59:26 +02:00
cmx270_nand.c drivers/mtd: Convert remaining uses of pr_warning to pr_warn 2017-04-19 13:10:54 -07:00
cs553x_nand.c mtd: nand: cs553x: return error code of nand_scan() on error 2016-11-07 14:48:42 +01:00
davinci_nand.c mtd: nand: davinci: set ECC algorithm explicitly for HW based ECC 2017-05-15 12:00:46 +02:00
denali_dt.c mtd: nand: denali: avoid magic numbers and rename for clarification 2017-06-20 09:14:57 +02:00
denali_pci.c mtd: nand: denali: avoid magic numbers and rename for clarification 2017-06-20 09:14:57 +02:00
denali.c mtd: nand: denali: avoid magic numbers and rename for clarification 2017-06-20 09:14:57 +02:00
denali.h mtd: nand: denali: avoid magic numbers and rename for clarification 2017-06-20 09:14:57 +02:00
diskonchip.c mtd: nand: diskonchip: switch to mtd_ooblayout_ops 2016-05-05 23:51:40 +02:00
docg4.c mtd: nand: Make sure drivers not supporting SET/GET_FEATURES return -ENOTSUPP 2017-05-30 08:59:26 +02:00
fsl_elbc_nand.c mtd: nand: Make sure drivers not supporting SET/GET_FEATURES return -ENOTSUPP 2017-05-30 08:59:26 +02:00
fsl_ifc_nand.c mtd: nand: ifc: Initialize SRAM for all version >= 1.0 2017-06-20 09:17:25 +02:00
fsl_upm.c mtd: nand: fsl_upm: set ECC algorithm explicitly 2016-05-05 23:51:54 +02:00
fsmc_nand.c mtd: nand: Pass the CS line to ->setup_data_interface() 2017-06-01 10:09:28 +02:00
gpio.c mtd: nand: gpio: make nCE GPIO optional 2017-03-16 10:34:27 +01:00
hisi504_nand.c mtd: nand: Make sure drivers not supporting SET/GET_FEATURES return -ENOTSUPP 2017-05-30 08:59:26 +02:00
jz4740_nand.c mtd: nand: jz4740: Remove unused local variable 2016-05-05 23:51:56 +02:00
jz4780_bch.c mtd: nand: jz4780: Update MODULE_AUTHOR email address 2016-07-11 08:40:19 +02:00
jz4780_bch.h mtd: nand: jz4780: driver for NAND devices on JZ4780 SoCs 2016-01-07 09:35:11 -08:00
jz4780_nand.c mtd: nand: jz4780: Use mtd_set_ooblayout() to set the ooblayout 2017-05-15 12:00:36 +02:00
Kconfig mtd: nand: atmel: Add ->setup_data_interface() hooks 2017-06-01 10:09:29 +02:00
lpc32xx_mlc.c mtd: nand: lpc32xx: fix invalid error handling of a requested irq 2017-01-04 20:50:18 +01:00
lpc32xx_slc.c mtd: nand: lpc32xx_slc: Remove unneeded NULL check on 'rc' 2017-01-30 11:50:30 +01:00
Makefile mtd: nand: Cleanup/rework the atmel_nand driver 2017-04-25 14:18:29 +02:00
mpc5121_nfc.c mtd: nand: Make sure drivers not supporting SET/GET_FEATURES return -ENOTSUPP 2017-05-30 08:59:26 +02:00
mtk_ecc.c mtd: nand: mtk: disable ecc irq when writing page with hwecc 2017-06-25 16:54:01 +02:00
mtk_ecc.h mtd: nand: mediatek: add support for different MTK NAND FLASH Controller IP 2017-06-01 10:09:37 +02:00
mtk_nand.c mtd: nand: mediatek: add support for MT2712 NAND FLASH Controller 2017-06-01 10:09:38 +02:00
mxc_nand.c mtd: nand: Pass the CS line to ->setup_data_interface() 2017-06-01 10:09:28 +02:00
nand_amd.c mtd: nand: Move AMD/Spansion specific init/detection logic in nand_amd.c 2017-03-08 23:21:22 +01:00
nand_base.c mtd: nand: add generic helpers to check, match, maximize ECC settings 2017-06-10 13:40:07 +02:00
nand_bbt.c mtd: nand_bbt: scan for next free bbt block if writing bbt fails 2016-09-23 09:35:16 +02:00
nand_bch.c mtd: nand_bch: fix spelling of "probably" 2016-05-06 09:45:45 -07:00
nand_ecc.c mtd: nand: return consistent error codes in ecc.correct() implementations 2016-01-06 18:45:46 -08:00
nand_hynix.c mtd: nand: hynix: Fix an error code in init 2017-03-23 10:44:02 +01:00
nand_ids.c mtd: nand: Move Macronix specific initialization in nand_macronix.c 2017-03-08 23:21:23 +01:00
nand_macronix.c mtd: nand: Move Macronix specific initialization in nand_macronix.c 2017-03-08 23:21:23 +01:00
nand_micron.c mtd: nand: Wait for PAGEPROG to finish in drivers setting NAND_ECC_CUSTOM_PAGE_ACCESS 2017-06-01 10:09:33 +02:00
nand_samsung.c mtd: nand: samsung: Retrieve ECC requirements from extended ID 2017-03-08 23:21:23 +01:00
nand_timings.c mtd: nand: Add a few more timings to nand_sdr_timings 2016-11-07 14:48:37 +01:00
nand_toshiba.c mtd: nand: Move Toshiba specific init/detection logic in nand_toshiba.c 2017-03-08 23:21:21 +01:00
nandsim.c MTD updates for 4.12-rc1: 2017-05-11 10:44:22 -07:00
ndfc.c mtd: nand: import nand_hw_control_init() 2016-09-23 09:35:16 +02:00
nuc900_nand.c mtd: nand: nuc900: set ECC algorithm explicitly 2016-04-19 22:05:32 +02:00
omap2.c mtd: nand: omap2: Fix partition creation via cmdline mtdparts 2017-04-25 14:18:40 +02:00
omap_elm.c mtd: omap_elm: print interrupt resource using %pr 2015-12-18 10:16:17 -08:00
orion_nand.c mtd: nand: orion: Handle return value of clk_prepare_enable 2017-06-10 12:09:27 +02:00
oxnas_nand.c mtd: oxnas_nand: Allocating more than necessary in probe() 2017-05-02 15:54:49 -07:00
pasemi_nand.c mtd: nand: pasemi: return error code of nand_scan() on error 2016-11-07 14:48:45 +01:00
plat_nand.c mtd: nand: plat_nand: return error code of nand_scan() on error 2016-11-07 14:48:45 +01:00
pxa3xx_nand.c mtd: nand: Make sure drivers not supporting SET/GET_FEATURES return -ENOTSUPP 2017-05-30 08:59:26 +02:00
qcom_nandc.c mtd: nand: Make sure drivers not supporting SET/GET_FEATURES return -ENOTSUPP 2017-05-30 08:59:26 +02:00
r852.c mtd: nand: make use of nand_set/get_controller_data() helpers 2016-01-07 10:23:41 -08:00
r852.h mtd: nand: r852: use the mtd instance embedded in struct nand_chip 2015-12-18 10:54:41 -08:00
s3c2410.c mtd: nand: Pass the CS line to ->setup_data_interface() 2017-06-01 10:09:28 +02:00
sh_flctl.c mtd: nand: Make sure drivers not supporting SET/GET_FEATURES return -ENOTSUPP 2017-05-30 08:59:26 +02:00
sharpsl.c mtd: nand: sharpsl: switch to mtd_ooblayout_ops 2016-05-05 23:51:36 +02:00
sm_common.c mtd: nand: sm_common: switch to mtd_ooblayout_ops 2016-05-05 23:51:48 +02:00
sm_common.h mtd: use __packed shorthand 2014-08-19 11:53:08 -07:00
socrates_nand.c mtd: nand: socrates: use nand_scan() for nand_scan_ident/tail() combo 2016-11-07 14:48:53 +01:00
sunxi_nand.c mtd: nand: sunxi: Remove unneeded ->cmdfunc(NAND_CMD_READ0, 0, page) 2017-06-01 10:09:32 +02:00
tango_nand.c mtd: nand: Wait for PAGEPROG to finish in drivers setting NAND_ECC_CUSTOM_PAGE_ACCESS 2017-06-01 10:09:33 +02:00
tmio_nand.c mtd: nand: tmio: return error code of nand_scan() on error 2016-11-07 14:48:44 +01:00
txx9ndfmc.c mtd: nand: import nand_hw_control_init() 2016-09-23 09:35:16 +02:00
vf610_nfc.c mtd: nand: Make sure drivers not supporting SET/GET_FEATURES return -ENOTSUPP 2017-05-30 08:59:26 +02:00
xway_nand.c mtd: update my email address 2017-02-08 12:49:27 -08:00