linux/drivers/nvmem
Michael Walle 06be62083c nvmem: core: return -ENOENT if nvmem cell is not found
Prior to commit 5d8e6e6c10 ("nvmem: core: add an index parameter to
the cell") of_nvmem_cell_get() would return -ENOENT if the cell wasn't
found. Particularly, if of_property_match_string() returned -EINVAL,
that return code was passed as the index to of_parse_phandle(), which
then detected it as invalid and returned NULL. That led to an return
code of -ENOENT.

With the new code, the negative index will lead to an -EINVAL of
of_parse_phandle_with_optional_args() which pass straight to the
caller and break those who expect an -ENOENT.

Fix it by always returning -ENOENT.

Fixes: 5d8e6e6c10 ("nvmem: core: add an index parameter to the cell")
Reported-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Link: https://lore.kernel.org/r/2143916.GUh0CODmnK@steina-w/
Signed-off-by: Michael Walle <michael@walle.cc>
Tested-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20230310094845.139400-1-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-03-10 10:55:49 +01:00
..
apple-efuses.c nvmem: Add Apple eFuse driver 2022-05-09 15:44:21 +02:00
bcm-ocotp.c treewide: Replace GPLv2 boilerplate/reference with SPDX - gpl-2.0_30.RULE (part 2) 2022-06-10 14:51:35 +02:00
brcm_nvram.c nvmem: brcm_nvram: Add check for kzalloc 2023-01-28 14:36:28 +01:00
core.c nvmem: core: return -ENOENT if nvmem cell is not found 2023-03-10 10:55:49 +01:00
imx-iim.c
imx-ocotp-scu.c
imx-ocotp.c nvmem: core: add an index parameter to the cell 2023-02-06 19:06:59 +01:00
jz4780-efuse.c
Kconfig nvmem: stm32: fix OPTEE dependency 2023-02-06 19:07:00 +01:00
lan9662-otpc.c nvmem: lan9662-otp: Change return type of lan9662_otp_wait_flag_clear() 2022-11-22 18:22:05 +01:00
layerscape-sfp.c nvmem: sfp: Add support for TA 2.1 devices 2022-05-09 15:46:29 +02:00
lpc18xx_eeprom.c
lpc18xx_otp.c
Makefile nvmem: stm32: add OP-TEE support for STM32MP13x 2023-02-06 19:06:59 +01:00
meson-efuse.c
meson-mx-efuse.c
microchip-otpc.c nvmem: microchip-otpc: add support 2022-07-08 15:45:05 +02:00
mtk-efuse.c nvmem: mtk-efuse: Simplify with devm_platform_get_and_ioremap_resource() 2022-07-08 15:45:05 +02:00
mxs-ocotp.c
nintendo-otp.c
qcom-spmi-sdam.c nvmem: qcom-spmi-sdam: register at device init time 2023-02-06 19:06:59 +01:00
qfprom.c nvmem: qfprom: using pm_runtime_resume_and_get instead of pm_runtime_get_sync 2022-05-09 15:45:39 +02:00
rave-sp-eeprom.c nvmem: rave-sp-eeprm: fix kernel-doc bad line warning 2023-02-06 19:06:59 +01:00
rmem.c nvmem: rmem: Fix return value check in rmem_read() 2022-11-22 18:21:58 +01:00
rockchip-efuse.c
rockchip-otp.c
sc27xx-efuse.c
snvs_lpgpr.c
sprd-efuse.c
stm32-bsec-optee-ta.c nvmem: stm32: add OP-TEE support for STM32MP13x 2023-02-06 19:06:59 +01:00
stm32-bsec-optee-ta.h nvmem: stm32: add OP-TEE support for STM32MP13x 2023-02-06 19:06:59 +01:00
stm32-romem.c nvmem: stm32: detect bsec pta presence for STM32MP15x 2023-02-06 19:06:59 +01:00
sunplus-ocotp.c nvmem: sunplus-ocotp: drop useless probe confirmation 2022-04-24 17:15:15 +02:00
sunxi_sid.c nvmem: sunxi_sid: Drop the workaround on A64 2023-02-06 19:06:58 +01:00
u-boot-env.c nvmem: u-boot-env: add Broadcom format support 2022-11-23 19:44:52 +01:00
uniphier-efuse.c
vf610-ocotp.c
zynqmp_nvmem.c