OpenCloudOS-Kernel/drivers/mtd/nand/raw
Manivannan Sadhasivam b48027083a mtd: rawnand: Fix probe failure due to of_get_nand_secure_regions()
Due to 14f97f0b8e, the rawnand platforms without "secure-regions"
property defined in DT fails to probe. The issue is,
of_get_nand_secure_regions() errors out if
of_property_count_elems_of_size() returns a negative error code.

If the "secure-regions" property is not present in DT, then also we'll
get -EINVAL from of_property_count_elems_of_size() but it should not
be treated as an error for platforms not declaring "secure-regions"
in DT.

So fix this behaviour by checking for the existence of that property in
DT and return 0 if it is not present.

Fixes: 14f97f0b8e ("mtd: rawnand: Add a check in of_get_nand_secure_regions()")
Reported-by: Martin Kaiser <martin@kaiser.cx>
Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Reviewed-by: Martin Kaiser <martin@kaiser.cx>
Tested-by: Martin Kaiser <martin@kaiser.cx>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Link: https://lore.kernel.org/linux-mtd/20210727062813.32619-1-manivannan.sadhasivam@linaro.org
2021-08-06 21:44:16 +02:00
..
atmel Raw NAND core: 2021-06-29 23:01:39 +02:00
bcm47xxnflash mtd: rawnand: Use the new ECC engine type enumeration 2020-09-28 15:59:42 +02:00
brcmnand mtd: rawnand: brcmnand: move to polling in pio mode on oops write 2021-03-28 19:12:57 +02:00
gpmi-nand mtd: rawnand: Use more recent ONFI specification wording 2021-05-26 10:43:40 +02:00
ingenic mtd: rawnand: ingenic: remove redundant get_device() in ingenic_ecc_get() 2020-12-10 22:37:31 +01:00
Kconfig mtd: rawnand: pl353: Add support for the ARM PL353 SMC NAND controller 2021-06-18 09:45:21 +02:00
Makefile mtd: rawnand: pl353: Add support for the ARM PL353 SMC NAND controller 2021-06-18 09:45:21 +02:00
ams-delta.c mtd: rawnand: ams-delta: Do not force a particular software ECC engine 2020-12-11 20:09:57 +01:00
arasan-nand-controller.c mtd: rawnand: arasan: Finer grain NV-DDR configuration 2021-06-18 09:45:20 +02:00
au1550nd.c MTD core: 2020-12-16 14:58:35 -08:00
cadence-nand-controller.c mtd: rawnand: Use more recent ONFI specification wording 2021-05-26 10:43:40 +02:00
cafe_nand.c mtd: rawnand: cafe_nand: Remove superfluous param doc and add another 2020-11-20 12:37:32 +01:00
cs553x_nand.c mtd: rawnand: cs553x: Fix external use of SW Hamming ECC helper 2021-05-10 18:34:13 +02:00
davinci_nand.c mtd: rawnand: davinci: Do not use extra dereferencing 2020-12-10 22:37: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 SPI NOR core changes: 2020-12-16 18:48:16 +01:00
fsl_elbc_nand.c mtd: nand: ecc-hamming: Remove useless includes 2020-12-10 22:37:30 +01:00
fsl_ifc_nand.c mtd: nand: ecc-hamming: Remove useless includes 2020-12-10 22:37:30 +01:00
fsl_upm.c mtd: nand: ecc-hamming: Remove useless includes 2020-12-10 22:37:30 +01:00
fsmc_nand.c mtd: rawnand: fsmc: Fix external use of SW Hamming ECC helper 2021-05-10 18:34:29 +02:00
gpio.c mtd: rawnand: gpio: Do not force a particular software ECC engine 2020-12-11 20:09:57 +01:00
hisi504_nand.c mtd: rawnand: hisi504: Remove redundant dev_err call in probe 2021-05-10 10:34:23 +02:00
intel-nand-controller.c MTD core changes: 2021-02-21 13:54:33 -08:00
internals.h mtd: rawnand: Choose the best timings, NV-DDR included 2021-05-26 10:52:43 +02:00
lpc32xx_mlc.c mtd: nand: ecc-hamming: Remove useless includes 2020-12-10 22:37:30 +01:00
lpc32xx_slc.c mtd: rawnand: lpc32xx_slc: Fix external use of SW Hamming ECC helper 2021-05-10 18:34:29 +02:00
marvell_nand.c mtd: rawnand: marvell: Minor documentation correction 2021-06-18 09:45:21 +02:00
meson_nand.c mtd: rawnand: meson: Fix a resource leak in init 2020-12-10 22:37:33 +01:00
mpc5121_nfc.c mtd: rawnand: mpc5121: Do not force a particular software ECC engine 2020-12-11 20:09:58 +01:00
mtk_ecc.c mtd: rawnand: mtk: remove redundant dev_err call in mtk_ecc_probe() 2021-05-10 10:34:41 +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: mtk: Fix WAITRDY break condition and timeout 2021-03-11 12:23:11 +01:00
mxc_nand.c mtd: rawnand: mxc: Remove unneeded of_match_ptr() 2021-03-28 19:13:39 +02:00
mxic_nand.c mtd: nand: ecc-hamming: Move Hamming code to the generic NAND layer 2020-12-10 22:37:29 +01: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: Fix probe failure due to of_get_nand_secure_regions() 2021-08-06 21:44:16 +02:00
nand_bbt.c Revert "mtd: rawnand: bbt: Skip bad blocks when searching for the BBT in NAND" 2021-04-19 18:10:18 +02: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: Avoid accessing NV-DDR timings from legacy code 2021-05-26 10:43:52 +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: onfi: Fix endianness when reading NV-DDR values 2021-06-18 09:45:20 +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: Add a helper to find the closest ONFI NV-DDR mode 2021-05-26 10:43:59 +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: nandsim: Fix the logic when selecting Hamming soft ECC engine 2021-01-14 16:44:37 +01:00
ndfc.c mtd: rawnand: ndfc: Fix external use of SW Hamming ECC helper 2021-05-10 18:34:29 +02:00
omap2.c mtd: rawnand: omap: Add larger page NAND chips support 2021-06-18 09:45:21 +02:00
omap_elm.c mtd: rawnand: omap: Add larger page NAND chips support 2021-06-18 09:45:21 +02:00
orion_nand.c mtd: rawnand: orion: Do not force a particular software ECC engine 2020-12-11 20:09:58 +01:00
oxnas_nand.c mtd: rawnand: oxnas: cleanup/simplify code 2020-09-30 16:44:16 +02:00
pasemi_nand.c MTD core: 2020-12-16 14:58:35 -08:00
pl35x-nand-controller.c mtd: rawnand: pl353: Add support for the ARM PL353 SMC NAND controller 2021-06-18 09:45:21 +02:00
plat_nand.c mtd: rawnand: plat_nand: Do not force a particular software ECC engine 2020-12-11 20:10:01 +01:00
qcom_nandc.c mtd: rawnand: qcom: avoid writing to obsolete register 2021-06-18 09:45:21 +02:00
r852.c mtd: rawnand: r852: use DEVICE_ATTR_RO() helper macro 2021-06-18 09:45:21 +02:00
r852.h mtd: rawnand: r852: Move the ECC initialization to ->attach_chip() 2020-11-20 12:30:53 +01:00
rockchip-nand-controller.c mtd: rawnand: rockchip: Use flexible-array member instead of zero-length array 2021-03-28 19:13:39 +02:00
s3c2410.c SPI NOR core changes: 2020-12-16 18:48:16 +01: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: Fix external use of SW Hamming ECC helper 2021-05-10 18:34:30 +02: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: Do not force a particular software ECC engine 2020-12-11 20:10:02 +01:00
stm32_fmc2_nand.c mtd: rawnand: stm32_fmc2: Fix fall-through warnings for Clang 2021-03-11 12:17:48 +01:00
sunxi_nand.c mtd: rawnand: sunxi: remove unnecessary oom message 2021-06-11 20:43:33 +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: Fix external use of SW Hamming ECC helper 2021-05-10 18:34:30 +02:00
txx9ndfmc.c mtd: rawnand: txx9ndfmc: Fix external use of SW Hamming ECC helper 2021-05-10 18:34:30 +02: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: Do not force a particular software ECC engine 2020-12-11 20:10:02 +01:00