1
0
Fork 0
mirror of synced 2025-03-06 20:59:54 +01:00
linux/drivers/mtd/nand/raw
Miquel Raynal b36bf0a0fe mtd: rawnand: socrates: Move the ECC initialization to ->attach_chip()
The probe function is only supposed to initialize the controller
hardware but not the ECC engine. Indeed, we don't know anything about
the NAND chip(s) at this stage. Let's move the logic initializing the
ECC engine, even pretty simple, to the ->attach_chip() hook which gets
called during nand_scan() routine, after the NAND chip discovery. As
the previously mentioned logic is supposed to parse the DT for us, it
is likely that the chip->ecc.* entries be overwritten. So let's avoid
this by moving these lines to ->attach_chip().

Fixes: d7157ff49a ("mtd: rawnand: Use the ECC framework user input parsing bits")
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Link: https://lore.kernel.org/linux-mtd/20201113123424.32233-20-miquel.raynal@bootlin.com
2020-11-20 12:31:26 +01:00
..
atmel mtd: rawnand: atmel: Check return values for nand_read_data_op 2020-09-30 16:44:17 +02:00
bcm47xxnflash mtd: rawnand: Use the new ECC engine type enumeration 2020-09-28 15:59:42 +02:00
brcmnand mtd: rawnand: Use nanddev_get/set_ecc_requirements() when relevant 2020-09-28 15:59:48 +02:00
gpmi-nand mtd: rawnand: gpmi: Simplify with dev_err_probe() 2020-09-30 16:44:17 +02:00
ingenic mtd: rawnand: Use the ECC framework OOB layouts 2020-09-30 16:43:52 +02:00
ams-delta.c mtd: rawnand: ams-delta: Move the ECC initialization to ->attach_chip() 2020-11-19 21:36:31 +01:00
arasan-nand-controller.c mtd: rawnand: Use the ECC framework OOB layouts 2020-09-30 16:43:52 +02:00
au1550nd.c mtd: rawnand: au1550: Move the ECC initialization to ->attach_chip() 2020-11-19 21:36:35 +01:00
cadence-nand-controller.c mtd: rawnand: cadence: remove a redundant dev_err call 2020-09-30 16:44:17 +02:00
cafe_nand.c mtd: rawnand: Use the new ECC engine type enumeration 2020-09-28 15:59:42 +02:00
cs553x_nand.c mtd: rawnand: cs553x: Move the ECC initialization to ->attach_chip() 2020-11-19 21:52:28 +01:00
davinci_nand.c mtd: rawnand: davinci: Move the ECC initialization to ->attach_chip() 2020-11-19 21:52:32 +01:00
denali.c mtd: rawnand: Use the new ECC engine type enumeration 2020-09-28 15:59:42 +02:00
denali.h mtd: rawnand: Replace zero-length array with flexible-array member 2020-03-11 16:17:54 +01:00
denali_dt.c mtd: rawnand: denali_dt: add reset controlling 2020-01-21 20:00:33 +01:00
denali_pci.c mtd: rawnand: Use the NAND framework user_conf object for ECC flags 2020-09-30 16:44:15 +02:00
diskonchip.c mtd: rawnand: diskonchip: Move the ECC initialization to ->attach_chip() 2020-11-19 21:52:32 +01:00
fsl_elbc_nand.c mtd: rawnand: Use the new ECC engine type enumeration 2020-09-28 15:59:42 +02:00
fsl_ifc_nand.c mtd: rawnand: ifc: Move the ECC engine initialization to the right place 2020-10-26 18:44:31 +01:00
fsl_upm.c mtd: rawnand: Use the new ECC engine type enumeration 2020-09-28 15:59:42 +02:00
fsmc_nand.c mtd: rawnand: fsmc: Move the ECC initialization to ->attach_chip() 2020-11-19 21:52:32 +01:00
gpio.c mtd: rawnand: gpio: Move the ECC initialization to ->attach_chip() 2020-11-19 21:36:25 +01:00
hisi504_nand.c mtd: rawnand: Use the new ECC engine type enumeration 2020-09-28 15:59:42 +02:00
internals.h mtd: rawnand: Allocate the interface configurations dynamically 2020-06-26 08:35:08 +02:00
Kconfig mtd: rawnand: Make use of the ECC framework 2020-09-28 15:59:49 +02:00
lpc32xx_mlc.c mtd: rawnand: lpc32xx_mlc: Move the ECC initialization to ->attach_chip() 2020-11-19 21:52:32 +01:00
lpc32xx_slc.c mtd: rawnand: lpc32xx_slc: Move the ECC initialization to ->attach_chip() 2020-11-19 21:52:32 +01:00
Makefile mtd: rawnand: arasan: Add new Arasan NAND controller 2020-05-24 22:34:55 +02:00
marvell_nand.c mtd: rawnand: marvell: Fix and update kerneldoc 2020-09-30 16:44:17 +02:00
meson_nand.c mtd: rawnand: Use the new ECC engine type enumeration 2020-09-28 15:59:42 +02:00
mpc5121_nfc.c mtd: rawnand: mpc5121: Move the ECC initialization to ->attach_chip() 2020-11-19 21:52:32 +01:00
mtk_ecc.c mtd: Remove dev_err() usage after platform_get_irq() 2019-10-08 19:01:49 +02:00
mtk_ecc.h mtd: rawnand: mtk: Re-license MTK NAND driver as Dual MIT/GPL 2019-06-27 20:07:46 +02:00
mtk_nand.c mtd: rawnand: Use nanddev_get/set_ecc_requirements() when relevant 2020-09-28 15:59:48 +02:00
mxc_nand.c mtd: rawnand: mxc: Move the ECC engine initialization to the right place 2020-10-26 18:44:14 +01:00
mxic_nand.c mtd: rawnand: s/data_interface/interface_config/ 2020-06-26 08:35:07 +02:00
nand_amd.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
nand_base.c mtd: rawnand: Don't overwrite the error code from nand_set_ecc_soft_ops() 2020-09-30 16:44:17 +02:00
nand_bbt.c mtd: rawnand: trivial spelling 2020-06-26 08:35:10 +02:00
nand_bch.c mtd: rawnand: Use the ECC framework OOB layouts 2020-09-30 16:43:52 +02:00
nand_ecc.c treewide: Remove uninitialized_var() usage 2020-07-16 12:35:15 -07:00
nand_esmt.c mtd: rawnand: Use nanddev_get/set_ecc_requirements() when relevant 2020-09-28 15:59:48 +02:00
nand_hynix.c mtd: rawnand: Use nanddev_get/set_ecc_requirements() when relevant 2020-09-28 15:59:48 +02:00
nand_ids.c mtd: rawnand: toshiba: Choose the interface configuration for TH58NVG2S3HBAI4 2020-06-26 08:35:08 +02:00
nand_jedec.c mtd: rawnand: Use nanddev_get/set_ecc_requirements() when relevant 2020-09-28 15:59:48 +02:00
nand_legacy.c mtd: rawnand: s/data_interface/interface_config/ 2020-06-26 08:35:07 +02:00
nand_macronix.c mtd: rawnand: Create a nand_chip operations structure 2020-06-26 08:35:04 +02:00
nand_micron.c mtd: rawnand: Use nanddev_get/set_ecc_requirements() when relevant 2020-09-28 15:59:48 +02:00
nand_onfi.c mtd: rawnand: Use nanddev_get/set_ecc_requirements() when relevant 2020-09-28 15:59:48 +02:00
nand_samsung.c mtd: rawnand: Use nanddev_get/set_ecc_requirements() when relevant 2020-09-28 15:59:48 +02:00
nand_timings.c mtd: rawnand: Allocate the interface configurations dynamically 2020-06-26 08:35:08 +02:00
nand_toshiba.c mtd: rawnand: Use the ECC framework OOB layouts 2020-09-30 16:43:52 +02:00
nandsim.c mtd: rawnand: Use the new ECC engine type enumeration 2020-09-28 15:59:42 +02:00
ndfc.c mtd: rawnand: Use the new ECC engine type enumeration 2020-09-28 15:59:42 +02:00
omap2.c mtd: rawnand: Use the new ECC engine type enumeration 2020-09-28 15:59:42 +02:00
omap_elm.c mtd: rawnand: omap_elm: Replace HTTP links with HTTPS ones 2020-08-02 22:17:19 +02:00
orion_nand.c mtd: rawnand: orion: Move the ECC initialization to ->attach_chip() 2020-11-19 21:52:32 +01:00
oxnas_nand.c mtd: rawnand: oxnas: cleanup/simplify code 2020-09-30 16:44:16 +02:00
pasemi_nand.c mtd: rawnand: pasemi: Move the ECC initialization to ->attach_chip() 2020-11-19 21:52:33 +01:00
plat_nand.c mtd: rawnand: plat_nand: Move the ECC initialization to ->attach_chip() 2020-11-19 21:52:33 +01:00
qcom_nandc.c mtd: rawnand: qcom: Simplify with dev_err_probe() 2020-09-30 16:44:17 +02:00
r852.c mtd: rawnand: r852: Move the ECC initialization to ->attach_chip() 2020-11-20 12:30:53 +01:00
r852.h mtd: rawnand: r852: Move the ECC initialization to ->attach_chip() 2020-11-20 12:30:53 +01:00
s3c2410.c mtd: rawnand: Use the new ECC engine type enumeration 2020-09-28 15:59:42 +02:00
sh_flctl.c mtd: rawnand: Use the new ECC engine type enumeration 2020-09-28 15:59:42 +02:00
sharpsl.c mtd: rawnand: sharpsl: Move the ECC initialization to ->attach_chip() 2020-11-20 12:31:26 +01:00
sm_common.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
sm_common.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
socrates_nand.c mtd: rawnand: socrates: Move the ECC initialization to ->attach_chip() 2020-11-20 12:31:26 +01:00
stm32_fmc2_nand.c mtd: rawnand: stm32_fmc2: fix broken ECC 2020-10-30 18:24:51 +01:00
sunxi_nand.c mtd: rawnand: Use the NAND framework user_conf object for ECC flags 2020-09-30 16:44:15 +02:00
tango_nand.c mtd: rawnand: Use the new ECC engine type enumeration 2020-09-28 15:59:42 +02:00
tegra_nand.c mtd: rawnand: Use the NAND framework user_conf object for ECC flags 2020-09-30 16:44:15 +02:00
tmio_nand.c mtd: rawnand: tmio: Move the ECC initialization to ->attach_chip() 2020-11-19 21:52:33 +01:00
txx9ndfmc.c mtd: rawnand: txx9ndfmc: Move the ECC initialization to ->attach_chip() 2020-11-19 21:52:32 +01:00
vf610_nfc.c mtd: rawnand: vf610: Remove unused function vf610_nfc_transfer_size() 2020-09-30 16:44:17 +02:00
xway_nand.c mtd: rawnand: xway: Move the ECC initialization to ->attach_chip() 2020-11-19 21:36:28 +01:00