iio: adc: ad7192: Simplify using devm_regulator_get_enable()
authorMatti Vaittinen <mazziesaccount@gmail.com>
Fri, 19 Aug 2022 19:19:01 +0000 (22:19 +0300)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Wed, 23 Nov 2022 19:44:00 +0000 (19:44 +0000)
Use devm_regulator_get_enable() instead of open coded get, enable,
add-action-to-disable-at-detach - pattern. Also drop the seemingly unused
struct member 'dvdd'.

Signed-off-by: Matti Vaittinen <mazziesaccount@gmail.com>
Link: https://lore.kernel.org/r/9719c445c095d3d308e2fc9f4f93294f5806c41c.1660934107.git.mazziesaccount@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/adc/ad7192.c

index f5067173deb6299b7be2674c730ee95cc79c089b..55a6ab5910160725415b004ab523f453c97b5337 100644 (file)
@@ -177,7 +177,6 @@ struct ad7192_chip_info {
 struct ad7192_state {
        const struct ad7192_chip_info   *chip_info;
        struct regulator                *avdd;
-       struct regulator                *dvdd;
        struct clk                      *mclk;
        u16                             int_vref_mv;
        u32                             fclk;
@@ -1015,19 +1014,9 @@ static int ad7192_probe(struct spi_device *spi)
        if (ret)
                return ret;
 
-       st->dvdd = devm_regulator_get(&spi->dev, "dvdd");
-       if (IS_ERR(st->dvdd))
-               return PTR_ERR(st->dvdd);
-
-       ret = regulator_enable(st->dvdd);
-       if (ret) {
-               dev_err(&spi->dev, "Failed to enable specified DVdd supply\n");
-               return ret;
-       }
-
-       ret = devm_add_action_or_reset(&spi->dev, ad7192_reg_disable, st->dvdd);
+       ret = devm_regulator_get_enable(&spi->dev, "dvdd");
        if (ret)
-               return ret;
+               return dev_err_probe(&spi->dev, ret, "Failed to enable specified DVdd supply\n");
 
        ret = regulator_get_voltage(st->avdd);
        if (ret < 0) {