iio: adc: xilinx-ams: Benefit from devm_clk_get_enabled() to simplify
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Mon, 8 Aug 2022 20:47:35 +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-8-u.kleine-koenig@pengutronix.de
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/adc/xilinx-ams.c

index 9cd2713..5b4bdf3 100644 (file)
@@ -1351,11 +1351,6 @@ static const struct of_device_id ams_of_match_table[] = {
 };
 MODULE_DEVICE_TABLE(of, ams_of_match_table);
 
-static void ams_clk_disable_unprepare(void *data)
-{
-       clk_disable_unprepare(data);
-}
-
 static int ams_probe(struct platform_device *pdev)
 {
        struct iio_dev *indio_dev;
@@ -1380,18 +1375,10 @@ static int ams_probe(struct platform_device *pdev)
        if (IS_ERR(ams->base))
                return PTR_ERR(ams->base);
 
-       ams->clk = devm_clk_get(&pdev->dev, NULL);
+       ams->clk = devm_clk_get_enabled(&pdev->dev, NULL);
        if (IS_ERR(ams->clk))
                return PTR_ERR(ams->clk);
 
-       ret = clk_prepare_enable(ams->clk);
-       if (ret < 0)
-               return ret;
-
-       ret = devm_add_action_or_reset(&pdev->dev, ams_clk_disable_unprepare, ams->clk);
-       if (ret < 0)
-               return ret;
-
        ret = devm_delayed_work_autocancel(&pdev->dev, &ams->ams_unmask_work,
                                           ams_unmask_worker);
        if (ret < 0)