linux/drivers/nvmem
Alban Bedel 95b65195d5 nvmem: core: Always reference the device returned by nvmem_device_get()
In nvmem_device_get(), when the device lookup fails with DT it
currently fallback on nvmem_find() which is wrong for two reasons.
First nvmem_find() return NULL when nothing is found instead of an
ERR_PTR. But nvmem_find() also just lookup the device, it doesn't
reference the module and increment the reference count like it is done
in the DT path.

To fix this we replace the call to nvmem_find() with a call to
__nvmem_device_get() which does all the referencing and return a
proper ERR_PTR in case of error.

Signed-off-by: Alban Bedel <albeu@free.fr>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-01-31 16:24:14 +01:00
..
bcm-ocotp.c nvmem: bcm-ocotp: Add ACPI support to BCM OCOTP 2019-01-31 16:24:14 +01:00
core.c nvmem: core: Always reference the device returned by nvmem_device_get() 2019-01-31 16:24:14 +01:00
imx-iim.c nvmem: imx-iim: Do not use "&pdev->dev" explicitly 2018-03-14 19:28:14 +01:00
imx-ocotp.c nvmem: imx-ocotp: Implement i.MX6ULL/ULZ support 2019-01-31 16:24:14 +01:00
Kconfig nvmem: Add Spreadtrum SC27XX efuse support 2018-07-15 14:03:05 +02:00
lpc18xx_eeprom.c nvmem: lpc18xx_eeprom: remove unused variable 2018-10-15 15:56:15 +02:00
lpc18xx_otp.c nvmem: lpc18xx_otp: Convert to use devm_nvmem_register() 2018-03-14 19:28:14 +01:00
Makefile nvmem: Add Spreadtrum SC27XX efuse support 2018-07-15 14:03:05 +02:00
meson-efuse.c nvmem: meson-efuse: add peripheral clock 2018-12-06 15:45:46 +01:00
meson-mx-efuse.c nvmem: meson-mx-efuse: Convert to use devm_nvmem_register() 2018-03-14 19:28:14 +01:00
mtk-efuse.c headers: separate linux/mod_devicetable.h from linux/platform_device.h 2018-07-07 17:52:26 +02:00
mxs-ocotp.c nvmem: mxs-ocotp: use devm_nvmem_register() 2018-09-28 15:14:54 +02:00
qfprom.c headers: separate linux/mod_devicetable.h from linux/platform_device.h 2018-07-07 17:52:26 +02:00
rave-sp-eeprom.c nvmem: rave-sp-eeprom: Remove VLA usage 2018-07-07 17:30:46 +02:00
rockchip-efuse.c treewide: kzalloc() -> kcalloc() 2018-06-12 16:19:22 -07:00
sc27xx-efuse.c nvmem: sc27xx: Convert nvmem offset to block index 2019-01-31 16:24:14 +01:00
snvs_lpgpr.c nvmem: add i.MX7 support to snvs-lpgpr 2018-03-14 19:28:14 +01:00
sunxi_sid.c nvmem: sunxi_sid: remove unused variable in probe 2018-09-28 15:14:55 +02:00
uniphier-efuse.c headers: separate linux/mod_devicetable.h from linux/platform_device.h 2018-07-07 17:52:26 +02:00
vf610-ocotp.c nvmem: vf610-ocotp: Do not use "&pdev->dev" explicitly 2018-03-14 19:28:14 +01:00