iio: adc: ad7768-1: Benefit from devm_clk_get_enabled() to simplify
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Mon, 8 Aug 2022 20:47:29 +0000 (22:47 +0200)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Mon, 15 Aug 2022 21:30:02 +0000 (22:30 +0100)
Make use of devm_clk_get_enabled() to replace some code that effectively
open codes this new function.

Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Link: https://lore.kernel.org/r/20220808204740.307667-2-u.kleine-koenig@pengutronix.de
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/adc/ad7768-1.c

index 652db76..70a2594 100644 (file)
@@ -539,13 +539,6 @@ static void ad7768_regulator_disable(void *data)
        regulator_disable(st->vref);
 }
 
-static void ad7768_clk_disable(void *data)
-{
-       struct ad7768_state *st = data;
-
-       clk_disable_unprepare(st->mclk);
-}
-
 static int ad7768_set_channel_label(struct iio_dev *indio_dev,
                                                int num_channels)
 {
@@ -600,18 +593,10 @@ static int ad7768_probe(struct spi_device *spi)
        if (ret)
                return ret;
 
-       st->mclk = devm_clk_get(&spi->dev, "mclk");
+       st->mclk = devm_clk_get_enabled(&spi->dev, "mclk");
        if (IS_ERR(st->mclk))
                return PTR_ERR(st->mclk);
 
-       ret = clk_prepare_enable(st->mclk);
-       if (ret < 0)
-               return ret;
-
-       ret = devm_add_action_or_reset(&spi->dev, ad7768_clk_disable, st);
-       if (ret)
-               return ret;
-
        st->mclk_freq = clk_get_rate(st->mclk);
 
        mutex_init(&st->lock);