WSL2-Linux-Kernel/drivers/iio/adc
Olivier Moysan 784b470728 iio: adc: stm32: fix null pointer on defer_probe error
dev_err_probe() calls __device_set_deferred_probe_reason()
on -EPROBE_DEFER error. If device pointer to driver core
private structure is not initialized, an null pointer error occurs.
This pointer is set on iio_device_register() call for iio device.

dev_err_probe() must be called with the device which is probing.
Replace iio device by its parent device.

Fixes: 0e346b2cfa ("iio: adc: stm32-adc: add vrefint calibration support")
Signed-off-by: Olivier Moysan <olivier.moysan@foss.st.com>
Reviewed-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Link: https://lore.kernel.org/r/20211122143809.2332-1-olivier.moysan@foss.st.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2021-11-27 16:09:05 +00:00
..
Kconfig iio: imx8qxp-adc: fix dependency to the intended ARCH_MXC config 2021-11-17 17:52:36 +00:00
Makefile iio: imx8qxp-adc: Add driver support for NXP IMX8QXP ADC 2021-10-19 08:27:32 +01:00
ab8500-gpadc.c iio: adc: ab8500-gpadc: Make use of the helper function dev_err_probe() 2021-10-20 14:43:51 +01:00
ad799x.c iio: adc: ad799x: Implement selecting external reference voltage input on AD7991, AD7995 and AD7999. 2021-10-19 08:30:43 +01:00
ad7091r-base.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
ad7091r-base.h iio: adc: ad7091r5: Add scale and external VREF support 2019-11-16 17:06:10 +00:00
ad7091r5.c iio: adc: ad7091r5: Add scale and external VREF support 2019-11-16 17:06:10 +00:00
ad7124.c iio: adc: ad7124: Use devm_ managed calls for all of probe() + drop remove() 2021-06-13 17:00:16 +01:00
ad7192.c iio: adc: ad7192: Add IRQ flag 2021-09-14 12:02:11 +01:00
ad7266.c iio: Move attach/detach of the poll func to the core 2020-06-20 17:34:44 +01:00
ad7291.c iio: adc: ad7291: convert probe to device-managed only 2021-10-19 08:27:35 +01:00
ad7292.c iio: adc: ad7292: Modify the bool initialization assignment 2021-03-25 19:13:52 +00:00
ad7298.c iio: adc: ad7298: Enable on Intel Galileo Gen 1 2021-05-17 13:49:05 +01:00
ad7476.c iio: adc: remove unused private data assigned with spi_set_drvdata() 2021-06-13 17:00:17 +01:00
ad7606.c iio: core: move @id from struct iio_dev to struct iio_dev_opaque 2021-05-17 13:49:13 +01:00
ad7606.h iio: adc: ad7606: Add support for AD7606B ADC 2019-08-25 16:11:00 +01:00
ad7606_par.c iio: Remove dev_err() usage after platform_get_irq() 2019-08-05 15:59:14 +01:00
ad7606_spi.c iio: adc: ad7606: Add support for AD7606B ADC 2019-08-25 16:11:00 +01:00
ad7766.c iio: adc: remove unused private data assigned with spi_set_drvdata() 2021-06-13 17:00:17 +01:00
ad7768-1.c iio: ad7768-1: Call iio_trigger_notify_done() on error 2021-11-17 17:52:36 +00:00
ad7780.c iio: adc: ad7780: Fix IRQ flag 2021-09-14 12:02:12 +01:00
ad7791.c iio: adc: ad7791: convert to device-managed functions 2021-06-13 17:00:16 +01:00
ad7793.c iio: adc: ad7793: Fix IRQ flag 2021-09-14 12:02:12 +01:00
ad7887.c iio: adc: remove unused private data assigned with spi_set_drvdata() 2021-06-13 17:00:17 +01:00
ad7923.c iio: adc: ad7923: Fix undersized rx buffer. 2021-05-22 08:32:36 +01:00
ad7949.c iio: adc: ad7949: use devm managed functions 2021-09-14 12:00:31 +01:00
ad9467.c iio: adc: remove unused private data assigned with spi_set_drvdata() 2021-06-13 17:00:17 +01:00
ad_sigma_delta.c iio: adc: ad_sigma_delta: remove ad_sd_{setup,cleanup}_buffer_and_trigger() 2021-06-13 17:00:17 +01:00
adi-axi-adc.c iio: adc: adi-axi-adc: simplify devm_adi_axi_adc_conv_register() 2021-05-17 13:49:06 +01:00
aspeed_adc.c First set of IIO new device and feature support for the 5.16 cycle 2021-10-19 11:44:28 +02:00
at91-sama5d2_adc.c iio: at91-sama5d2: Fix incorrect sign extension 2021-11-21 13:45:23 +00:00
at91_adc.c iio: core: move @id from struct iio_dev to struct iio_dev_opaque 2021-05-17 13:49:13 +01:00
axp20x_adc.c iio: adc: axp20x_adc: fix charging current reporting on AXP22x 2021-11-21 11:30:54 +00:00
axp288_adc.c iio: adc: axp288_adc: convert probe to full device-managed 2021-10-19 08:27:34 +01:00
bcm_iproc_adc.c iio:adc:bcm_iproc: Drop of_match_ptr protection and switch to mod_devicetable.h 2020-09-03 19:40:45 +01:00
berlin2-adc.c iio: adc: berlin2-adc: convert probe to device-managed only 2021-10-19 08:27:35 +01:00
cc10001_adc.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
cpcap-adc.c iio: adc: cpcap-adc: kernel-doc fix - that should be _ in structure name 2021-03-25 19:13:51 +00:00
da9150-gpadc.c iio: adc: da9150-gpadc: convert probe to full-device managed 2021-10-19 08:27:34 +01:00
dln2-adc.c iio: dln2: Check return value of devm_iio_trigger_register() 2021-11-17 17:52:35 +00:00
envelope-detector.c iio: adc: envelope-detector: Simplify with dev_err_probe() 2020-09-03 19:40:49 +01:00
ep93xx_adc.c iio: ep93xx: Make use of the helper function devm_platform_ioremap_resource() 2021-10-17 11:05:53 +01:00
exynos_adc.c iio: adc: exynos: drop unneeded variable assignment 2021-05-17 13:49:04 +01:00
fsl-imx25-gcq.c iio: adc: fsl-imx25-gcq: initialize regulators as needed 2021-10-19 08:27:34 +01:00
hi8435.c iio: adc: remove unused private data assigned with spi_set_drvdata() 2021-06-13 17:00:17 +01:00
hx711.c iio: adc: hx711: Fix buffer alignment in iio_push_to_buffers_with_timestamp() 2021-06-14 11:42:41 +01:00
imx7d_adc.c iio: adc: imx7d_adc: Make use of the helper function dev_err_probe() 2021-10-20 14:43:52 +01:00
imx8qxp-adc.c iio: imx8qxp-adc: mark PM functions as __maybe_unused 2021-10-19 08:31:33 +01:00
ina2xx-adc.c iio: core: move @id from struct iio_dev to struct iio_dev_opaque 2021-05-17 13:49:13 +01:00
ingenic-adc.c iio/adc: ingenic: add JZ4760B support to the sadc driver 2021-07-31 18:14:53 +01:00
intel_mrfld_adc.c iio: adc: intel_mrfld_adc: convert probe to full device-managed 2021-10-19 08:27:34 +01:00
lp8788_adc.c iio: adc: lp8788_adc: convert probe to full-device managed 2021-10-19 08:27:34 +01:00
lpc18xx_adc.c iio: adc: lpc18xx_adc: Make use of the helper function dev_err_probe() 2021-10-20 14:43:52 +01:00
lpc32xx_adc.c iio:adc:lpc32xx: Drop of_match_ptr protection 2020-07-07 20:24:08 +01:00
ltc2471.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
ltc2485.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
ltc2496.c iio:adc:ltc2496: Drop of_match_ptr and use mod_devicetable.h 2020-07-07 20:24:08 +01:00
ltc2497-core.c iio: adc: ltc2497: Simplify with dev_err_probe() 2020-09-03 19:40:49 +01:00
ltc2497.c iio:adc:ltc2497 drop of_match_ptr protection 2020-07-07 20:24:09 +01:00
ltc2497.h iio: adc: ltc2497: split protocol independent part in a separate module 2019-12-15 12:15:19 +00:00
max1027.c First set of IIO new device and feature support for the 5.16 cycle 2021-10-19 11:44:28 +02:00
max1118.c iio: adc: max1118: Make use of the helper function dev_err_probe() 2021-10-20 14:43:52 +01:00
max1241.c iio: adc: max1241: Make use of the helper function dev_err_probe() 2021-10-20 14:43:52 +01:00
max1363.c iio: adc: max1363: convert probe to full device-managed 2021-10-19 08:27:35 +01:00
max9611.c iio: adc: max9611: Demote obvious misuse of kerneldoc to standard comment blocks 2020-07-20 09:03:27 +01:00
max11100.c iio: adc: max11100: Use devm_ functions for rest of probe() 2021-06-03 18:24:14 +01:00
mcp320x.c Replace HTTP links with HTTPS ones: drivers/iio 2020-07-13 15:05:59 +01:00
mcp3422.c iio: adc: mcp3422: fix locking on error path 2020-09-01 16:08:07 +02:00
mcp3911.c iio: Remove superfluous of_node assignments 2020-06-14 14:20:08 +01:00
men_z188_adc.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
meson_saradc.c iio: adc: meson_saradc: Make use of the helper function dev_err_probe() 2021-10-20 14:43:52 +01:00
mp2629_adc.c iio: adc: mp2629: Drop duplicate setting iio_dev.dev.parent 2021-05-17 13:49:12 +01:00
mt6360-adc.c iio: adc: mt6360: Drop duplicate setting of iio_dev.dev.parent 2021-05-17 13:49:12 +01:00
mt6577_auxadc.c iio: mtk-auxadc: fix case IIO_CHAN_INFO_PROCESSED 2021-09-26 12:30:09 +01:00
mxs-lradc-adc.c iio: adc: mxs-lradc: Fix buffer alignment in iio_push_to_buffers_with_timestamp() 2021-06-14 11:42:41 +01:00
nau7802.c iio: adc: nau7802: convert probe to full device-managed 2021-10-19 08:27:34 +01:00
npcm_adc.c iio: adc: npcm_adc: Replace indio_dev->mlock with own device lock 2021-03-25 19:13:49 +00:00
palmas_gpadc.c iio: adc: Fix incorrect exit of for-loop 2021-07-31 14:46:05 +01:00
qcom-pm8xxx-xoadc.c iio: adc: qcom-pm8xxx-xoadc: Make use of the helper function dev_err_probe() 2021-10-20 14:43:52 +01:00
qcom-spmi-adc5.c iio: adc: qcom-spmi-adc5: use of_device_get_match_data 2021-01-16 18:23:36 +00:00
qcom-spmi-iadc.c iio: Remove superfluous of_node assignments 2020-06-14 14:20:08 +01:00
qcom-spmi-vadc.c First set of IIO and counter fixes for the 5.12 cycle 2021-03-15 16:34:39 +01:00
qcom-vadc-common.c thermal: qcom: add support for adc-tm5 PMIC thermal monitor 2021-02-15 21:28:53 +01:00
rcar-gyroadc.c iio: adc: rcar-gyroadc: Use pm_runtime_resume_and_get() and check in probe() 2021-05-17 13:54:26 +01:00
rn5t618-adc.c iio: adc: rn5t618-adc: use devm_iio_map_array_register() function 2021-10-19 08:27:35 +01:00
rockchip_saradc.c iio: adc: rockchip_saradc: Make use of the helper function dev_err_probe() 2021-10-20 14:43:53 +01:00
rzg2l_adc.c iio: adc: rzg2l_adc: add missing clk_disable_unprepare() in rzg2l_adc_pm_runtime_resume() 2021-09-14 12:02:11 +01:00
sc27xx_adc.c iio: adc: Add missing MODULE_DEVICE_TABLE 2021-05-17 13:54:24 +01:00
sd_adc_modulator.c iio:adc:sd_adc_modulator: Drop of_match_ptr and tweak includes 2020-07-07 20:24:09 +01:00
spear_adc.c iio: adc: spear_adc: Replace indio_dev->mlock with own device lock 2021-03-25 19:13:49 +00:00
stm32-adc-core.c iio: adc: stm32-adc: add support of internal channels 2021-10-20 14:43:54 +01:00
stm32-adc-core.h iio: adc: stm32-adc: add support of internal channels 2021-10-20 14:43:54 +01:00
stm32-adc.c iio: adc: stm32: fix null pointer on defer_probe error 2021-11-27 16:09:05 +00:00
stm32-dfsdm-adc.c iio: adc: stm32-dfsdm: drop __func__ while using Dynamic debug 2021-04-07 08:36:38 +01:00
stm32-dfsdm-core.c iio: adc: stm32-dfsdm: Use pm_runtime_resume_and_get() to replace open coding. 2021-05-17 13:54:26 +01:00
stm32-dfsdm.h ASoC: stm32: dfsdm: add actual resolution trace 2020-10-08 20:44:41 +01:00
stmpe-adc.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
stx104.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
sun4i-gpadc-iio.c iio:adc:sun4i-gpadc: Use new IRQF_NO_AUTOEN flag instead of request then disable 2021-04-07 08:36:39 +01:00
ti-adc081c.c iio: adc: ti-adc081c: Use devm managed functions for all of probe() 2021-06-03 18:24:14 +01:00
ti-adc084s021.c iio: adc: remove unused private data assigned with spi_set_drvdata() 2021-06-13 17:00:17 +01:00
ti-adc108s102.c iio: adc: ti-adc108s102: Fix alignment of buffer pushed to iio buffers. 2021-10-19 08:29:22 +01:00
ti-adc128s052.c iio: adc: adc128s052: Simplify adc128_probe() 2021-10-21 20:03:01 +01:00
ti-adc161s626.c iio: adc: ti-adc161s626: Use devm managed functions for all of probe. 2021-06-03 18:24:14 +01:00
ti-adc0832.c iio: adc: ti-adc0832: Use devm managed functions for all of probe() 2021-06-03 18:24:14 +01:00
ti-adc12138.c iio:adc:ti-adc12138 Fix alignment issue with timestamp 2020-09-21 20:01:51 +01:00
ti-ads124s08.c iio: adc: remove unused private data assigned with spi_set_drvdata() 2021-06-13 17:00:17 +01:00
ti-ads131e08.c iio: core: move @id from struct iio_dev to struct iio_dev_opaque 2021-05-17 13:49:13 +01:00
ti-ads1015.c iio: adc: ads1015: Balance runtime pm + pm_runtime_resume_and_get() 2021-06-16 14:53:13 +01:00
ti-ads7950.c iio: adc: ti-ads7950: Make use of the helper function dev_err_probe() 2021-10-20 14:43:53 +01:00
ti-ads8344.c iio: adc: ti-ads8344: convert probe to device-managed 2021-09-14 12:00:34 +01:00
ti-ads8688.c iio: adc: ti-ads8688: Fix alignment of buffer in iio_push_to_buffers_with_timestamp() 2021-06-14 11:42:41 +01:00
ti-tlc4541.c Replace HTTP links with HTTPS ones: drivers/iio 2020-07-13 15:05:59 +01:00
ti-tsc2046.c iio: adc: tsc2046: fix scan interval warning 2021-10-17 17:23:17 +01:00
ti_am335x_adc.c iio: adc: ti_am335x_adc: Add the am437x compatible 2021-10-21 10:02:48 +01:00
twl4030-madc.c iio: adc: twl4030-madc: Fix misnamed struct attribute 2020-07-20 09:03:14 +01:00
twl6030-gpadc.c iio: adc: twl6030-gpadc: Use the defined variable to clean code 2021-09-14 12:00:32 +01:00
vf610_adc.c iio: adc: vf610: Fix buffer alignment in iio_push_to_buffers_with_timestamp() 2021-05-17 13:54:29 +01:00
viperboard_adc.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
xilinx-xadc-core.c iio: xilinx-xadc: Remove `irq` field from state struct 2021-10-20 14:43:53 +01:00
xilinx-xadc-events.c iio: xilinx-xadc: Add basic support for Ultrascale System Monitor 2021-01-09 14:25:24 +00:00
xilinx-xadc.h iio: xilinx-xadc: Remove `irq` field from state struct 2021-10-20 14:43:53 +01:00