]> git.baikalelectronics.ru Git - kernel.git/commitdiff
iio: adc128s052: Fix the error handling path of 'adc128_probe()'
authorChristophe JAILLET <christophe.jaillet@wanadoo.fr>
Sat, 21 Aug 2021 10:37:24 +0000 (12:37 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 20 Oct 2021 09:40:15 +0000 (11:40 +0200)
commit bbcf40816b547b3c37af49168950491d20d81ce1 upstream.

A successful 'regulator_enable()' call should be balanced by a
corresponding 'regulator_disable()' call in the error handling path of the
probe, as already done in the remove function.

Update the error handling path accordingly.

Fixes: 233642d2a6b4 ("iio: adc: Add TI ADC128S052")
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Reviewed-by: Alexandru Ardelean <ardeleanalex@gmail.com>
Link: https://lore.kernel.org/r/85189f1cfcf6f5f7b42d8730966f2a074b07b5f5.1629542160.git.christophe.jaillet@wanadoo.fr
Cc: <Stable@vger.kernel.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/iio/adc/ti-adc128s052.c

index 1e5a936b5b6ad0d6b75479549f2295cea98bdee2..4267d756cd50e42535b31c5ec8686521ad20c53e 100644 (file)
@@ -172,7 +172,13 @@ static int adc128_probe(struct spi_device *spi)
        mutex_init(&adc->lock);
 
        ret = iio_device_register(indio_dev);
+       if (ret)
+               goto err_disable_regulator;
 
+       return 0;
+
+err_disable_regulator:
+       regulator_disable(adc->reg);
        return ret;
 }