linux_dsm_epyc7002/drivers/iio/adc
Alexandru Ardelean 023cd911d4 iio: adc: ad7192: handle regulator voltage error first
commit b0f27fca5a6c7652e265aae6a4452ce2f2ed64da upstream.

This change fixes a corner-case, where for a zero regulator value, the
driver would exit early, initializing the driver only partially.
The driver would be in an unknown state.

This change reworks the code to check regulator_voltage() return value
for negative (error) first, and return early. This is the more common
idiom.

Also, this change is removing the 'voltage_uv' variable and using the 'ret'
value directly. The only place where 'voltage_uv' is being used is to
compute the internal reference voltage, and the type of this variable is
'int' (same are for 'ret'). Using only 'ret' avoids having to assign it on
the error path.

Fixes: ab0afa65bb ("staging: iio: adc: ad7192: fail probe on get_voltage")
Cc: Alexandru Tachici <alexandru.tachici@analog.com>
Signed-off-by: Alexandru Ardelean <aardelean@deviqon.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Cc: <Stable@vger.kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-06-03 09:00:33 +02:00
..
ab8500-gpadc.c iio: adc: ab8500-gpadc: Fix off by 10 to 3 2021-03-25 09:04:15 +01:00
ad799x.c iio: adc: ad799x: Demote seemingly unintentional kerneldoc header 2020-07-20 09:03:20 +01:00
ad7091r5.c iio: adc: ad7091r5: Add scale and external VREF support 2019-11-16 17:06:10 +00: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
ad7124.c iio: adc: ad7124: Fix potential overflow due to non sequential channel numbers 2021-06-03 09:00:33 +02:00
ad7192.c iio: adc: ad7192: handle regulator voltage error first 2021-06-03 09:00:33 +02: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 to device tree 2020-09-29 17:27:05 +01:00
ad7292.c iio: ad7292: Fix of_node refcounting 2020-09-29 17:34:25 +01:00
ad7298.c iio: adc: ad7298: Demote obvious misuse of kerneldoc to standard comment blocks 2020-07-20 09:02:49 +01:00
ad7476.c iio:adc:ad7476: Fix remove handling 2021-05-14 09:49:58 +02: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
ad7606.c iio: Move attach/detach of the poll func to the core 2020-06-20 17:34:44 +01:00
ad7606.h iio: adc: ad7606: Add support for AD7606B ADC 2019-08-25 16:11:00 +01:00
ad7766.c iio: Move attach/detach of the poll func to the core 2020-06-20 17:34:44 +01:00
ad7768-1.c iio: adc: ad7768-1: Fix too small buffer passed to iio_push_to_buffers_with_timestamp() 2021-06-03 09:00:33 +02:00
ad7780.c Linux 5.8-rc6 2020-07-20 09:37:31 +02:00
ad7791.c iio: Remove superfluous of_node assignments 2020-06-14 14:20:08 +01:00
ad7793.c iio: adc: ad7793: Add missing error code in ad7793_setup() 2021-06-03 09:00:33 +02:00
ad7887.c iio: adc: ad7887: Demote seemingly unintentional kerneldoc header 2020-07-20 09:02:57 +01:00
ad7923.c iio: adc: ad7923: Fix undersized rx buffer. 2021-06-03 09:00:33 +02:00
ad7949.c iio: adc: ad7949: fix wrong ADC result due to incorrect bit mask 2021-03-25 09:04:15 +01:00
ad9467.c iio: adc: ad9467: add support for AD9265 high-speed ADC 2020-09-29 17:27:07 +01:00
ad_sigma_delta.c iio: ad_sigma_delta: Don't put SPI transfer buffer on the stack 2020-12-30 11:54:19 +01:00
adi-axi-adc.c iio: adc: adi-axi-adc: Use kobj_to_dev() instead of container_of() 2020-09-03 19:40:47 +01:00
aspeed_adc.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
at91_adc.c iio: adc: at91_adc: add Kconfig dep on the OF symbol and remove of_match_ptr() 2020-12-30 11:52:55 +01:00
at91-sama5d2_adc.c iio: adc: at91-sama5d2_adc: fix DMA conversion crash 2020-09-29 17:50:35 +01:00
axp20x_adc.c iio:adc:axp20x: Convert from OF to generic fw / device properties 2020-09-03 19:40:46 +01:00
axp288_adc.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +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: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
cc10001_adc.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
cpcap-adc.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
da9150-gpadc.c iio: Remove superfluous of_node assignments 2020-06-14 14:20:08 +01:00
dln2-adc.c iio: Move attach/detach of the poll func to the core 2020-06-20 17:34:44 +01: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: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
exynos_adc.c iio: adc: exynos_adc: Replace indio_dev->mlock with own device lock 2020-09-21 20:01:50 +01:00
fsl-imx25-gcq.c iio: adc: fsl-imx25-gcq: Replace indio_dev->mlock with own device lock 2020-09-21 18:41:35 +01:00
hi8435.c iio:adc:hi8435: Drop of_match_ptr protection. 2020-07-07 20:24:08 +01:00
hx711.c iio: remove left-over parent assignments 2020-06-14 11:50:04 +01:00
imx7d_adc.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
ina2xx-adc.c iio:adc:ina2xx Fix timestamp alignment issue. 2020-08-31 10:47:52 +01:00
ingenic-adc.c iio/adc: ingenic: Fix AUX/VBAT readings when touchscreen is used 2020-11-08 15:36:48 +00:00
intel_mrfld_adc.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
Kconfig iio: adc: Kconfig: make AD9467 depend on ADI_AXI_ADC symbol 2021-05-14 09:50:15 +02:00
lp8788_adc.c iio: Remove superfluous of_node assignments 2020-06-14 14:20:08 +01:00
lpc18xx_adc.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +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
Makefile Staging/IIO driver patches for 5.8-rc1 2020-06-07 10:45:08 -07:00
max1027.c iio:adc:max1027: drop of_match_ptr and CONFIG_OF protections 2020-07-07 20:24:08 +01:00
max1118.c iio:adc:max1118 Fix alignment of timestamp and data leak issues 2020-08-31 10:47:52 +01:00
max1241.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
max1363.c iio: adc: max1363: Fix kerneldoc attribute formatting for 'lock' 2020-07-20 09:03:27 +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: Drop of_match_ptr protection / add mod_devicetable.h include 2020-07-07 20:24:09 +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 Second set of features and cleanups for IIO in 5.10 2020-09-22 09:45:11 +02:00
mp2629_adc.c iio: adc: mp2629: Add support for mp2629 ADC driver 2020-05-26 10:41:47 +01:00
mt6577_auxadc.c iio: adc: mediatek: fix unset field 2020-11-01 15:22:46 +00:00
mxs-lradc-adc.c iio: Move attach/detach of the poll func to the core 2020-06-20 17:34:44 +01:00
nau7802.c iio: Remove superfluous of_node assignments 2020-06-14 14:20:08 +01:00
npcm_adc.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
palmas_gpadc.c iio: adc: palmas_gpadc: use module_platform_driver to simplify the code 2020-09-16 19:09:51 +01:00
qcom-pm8xxx-xoadc.c iio: adc: qcom-pm8xxx-xoadc: Demote standard comment block and supply missing description 2020-07-20 09:03:31 +01:00
qcom-spmi-adc5.c iio: adc: qcom-spmi-adc5: fix driver name 2020-09-22 13:33:19 +01:00
qcom-spmi-iadc.c iio: Remove superfluous of_node assignments 2020-06-14 14:20:08 +01:00
qcom-spmi-vadc.c iio:adc:qcom-spmi-vadc: add default scale to LR_MUX2_BAT_ID channel 2021-03-25 09:04:15 +01:00
qcom-vadc-common.c iio: adc: Add support for PMIC7 ADC 2020-06-14 11:49:21 +01:00
qcom-vadc-common.h iio: adc: Add support for PMIC7 ADC 2020-06-14 11:49:21 +01:00
rcar-gyroadc.c iio: adc: gyroadc: fix leak of device node iterator 2020-09-29 17:50:51 +01:00
rn5t618-adc.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
rockchip_saradc.c iio: adc: rockchip_saradc: fix missing clk_disable_unprepare() on error in rockchip_saradc_resume 2020-12-30 11:54:24 +01:00
sc27xx_adc.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +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: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
stm32-adc-core.c iio: adc: stm32-adc: fix a regression when using dma and irq 2020-11-01 17:14:06 +00:00
stm32-adc-core.h iio: adc: stm32-adc: Add check on overrun interrupt 2019-12-15 11:42:17 +00:00
stm32-adc.c iio: adc: stm32-adc: fix a regression when using dma and irq 2020-11-01 17:14:06 +00:00
stm32-dfsdm-adc.c sound updates for 5.10 2020-10-15 11:07:44 -07:00
stm32-dfsdm-core.c iio: adc: stm32-dfsdm: Use devm_platform_get_and_ioremap_resource() 2020-09-29 17:27:06 +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: Remove superfluous of_node assignments 2020-06-14 14:20:08 +01:00
ti_am335x_adc.c iio: adc: ti_am335x_adc: remove omitted iio_kfifo_free() 2021-01-27 11:55:12 +01:00
ti-adc081c.c Merge 5.9-rc5 into staging-next 2020-09-14 06:57:52 +02:00
ti-adc084s021.c iio:adc:ti-adc084s021 Fix alignment and data leak issues. 2020-08-31 10:47:52 +01:00
ti-adc108s102.c iio:adc:ti-adc108s102: Drop CONFIG_OF and of_match_ptr protections 2020-09-03 19:40:45 +01:00
ti-adc128s052.c iio:adc:ti-adc128s052: drop of_match_ptr protection 2020-09-03 19:40:45 +01:00
ti-adc161s626.c iio:adc:ti-adc161s626: Drop of_match_ptr protection. 2020-07-07 20:24:10 +01:00
ti-adc0832.c iio:adc:ti-adc0832 Fix alignment issue with timestamp 2020-09-21 20:01:51 +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:ti-ads124s08: Fix alignment and data leak issues. 2020-12-30 11:54:25 +01:00
ti-ads1015.c iio: adc: ti-ads1015: fix conversion when CONFIG_PM is not set 2020-08-22 11:38:44 +01:00
ti-ads7950.c Replace HTTP links with HTTPS ones: drivers/iio 2020-07-13 15:05:59 +01:00
ti-ads8344.c Replace HTTP links with HTTPS ones: drivers/iio 2020-07-13 15:05:59 +01:00
ti-ads8688.c iio: Remove superfluous of_node assignments 2020-06-14 14:20:08 +01:00
ti-tlc4541.c Replace HTTP links with HTTPS ones: drivers/iio 2020-07-13 15:05:59 +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: Fix some misdocumentation and formatting issues 2020-07-20 09:03:15 +01:00
vf610_adc.c iio: Move attach/detach of the poll func to the core 2020-06-20 17:34:44 +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: adc: xilinx-xadc: use devm_krealloc() 2020-09-08 13:32:07 +02:00
xilinx-xadc-events.c iio: xilinx-xadc: Fix typo in author's name 2020-03-21 10:25:35 +00:00
xilinx-xadc.h iio: xilinx-xadc: Fix typo in author's name 2020-03-21 10:25:35 +00:00