summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarco Felsch <m.felsch@pengutronix.de>2019-09-17 18:09:23 +0200
committerJonathan Cameron <Jonathan.Cameron@huawei.com>2019-10-09 19:11:29 +0100
commitc62dd44901cfff12acc5792bf3d2dec20bcaf392 (patch)
tree81acb5a81250978ed8ac40c461d5aca5582b26c2
parent7fd1c2606508eb384992251e87d50591393a48d0 (diff)
downloadlinux-c62dd44901cfff12acc5792bf3d2dec20bcaf392.tar.gz
linux-c62dd44901cfff12acc5792bf3d2dec20bcaf392.tar.bz2
linux-c62dd44901cfff12acc5792bf3d2dec20bcaf392.zip
iio: adc: ad799x: fix probe error handling
Since commit 0f7ddcc1bff1 ("iio:adc:ad799x: Write default config on probe and reset alert status on probe") the error path is wrong since it leaves the vref regulator on. Fix this by disabling both regulators. Fixes: 0f7ddcc1bff1 ("iio:adc:ad799x: Write default config on probe and reset alert status on probe") Signed-off-by: Marco Felsch <m.felsch@pengutronix.de> Reviewed-by: Alexandru Ardelean <alexandru.ardelean@analog.com> Cc: <Stable@vger.kernel.org> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-rw-r--r--drivers/iio/adc/ad799x.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/iio/adc/ad799x.c b/drivers/iio/adc/ad799x.c
index 5a3ca5904ded..f658012baad8 100644
--- a/drivers/iio/adc/ad799x.c
+++ b/drivers/iio/adc/ad799x.c
@@ -810,10 +810,10 @@ static int ad799x_probe(struct i2c_client *client,
ret = ad799x_write_config(st, st->chip_config->default_config);
if (ret < 0)
- goto error_disable_reg;
+ goto error_disable_vref;
ret = ad799x_read_config(st);
if (ret < 0)
- goto error_disable_reg;
+ goto error_disable_vref;
st->config = ret;
ret = iio_triggered_buffer_setup(indio_dev, NULL,