]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
iio: adc: rzg2l_adc: Use devres helpers to request pre-deasserted reset controls
authorClaudiu Beznea <claudiu.beznea.uj@bp.renesas.com>
Fri, 6 Dec 2024 11:13:25 +0000 (13:13 +0200)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Wed, 11 Dec 2024 19:17:58 +0000 (19:17 +0000)
Starting with commit d872bed85036 ("reset: Add devres helpers to request
pre-deasserted reset controls"), devres helpers are available to simplify
the process of requesting pre-deasserted reset controls. Update the
rzg2l_adc driver to utilize these helpers, reducing complexity in this
way.

Signed-off-by: Claudiu Beznea <claudiu.beznea.uj@bp.renesas.com>
Reviewed-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Link: https://patch.msgid.link/20241206111337.726244-4-claudiu.beznea.uj@bp.renesas.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/adc/rzg2l_adc.c

index 13b4c490678ffd4d3583638d323bdf456af5bb8e..424e5e87c6d6b8b42141fce9372d4108a7f85036 100644 (file)
@@ -412,11 +412,6 @@ static void rzg2l_adc_pm_runtime_set_suspended(void *data)
        pm_runtime_set_suspended(dev->parent);
 }
 
-static void rzg2l_adc_reset_assert(void *data)
-{
-       reset_control_assert(data);
-}
-
 static int rzg2l_adc_probe(struct platform_device *pdev)
 {
        struct device *dev = &pdev->dev;
@@ -451,37 +446,15 @@ static int rzg2l_adc_probe(struct platform_device *pdev)
                return dev_err_probe(dev, PTR_ERR(adc->adclk),
                                     "Failed to get adclk");
 
-       adc->adrstn = devm_reset_control_get_exclusive(dev, "adrst-n");
+       adc->adrstn = devm_reset_control_get_exclusive_deasserted(dev, "adrst-n");
        if (IS_ERR(adc->adrstn))
                return dev_err_probe(dev, PTR_ERR(adc->adrstn),
-                                    "failed to get adrstn\n");
+                                    "failed to get/deassert adrst-n\n");
 
-       adc->presetn = devm_reset_control_get_exclusive(dev, "presetn");
+       adc->presetn = devm_reset_control_get_exclusive_deasserted(dev, "presetn");
        if (IS_ERR(adc->presetn))
                return dev_err_probe(dev, PTR_ERR(adc->presetn),
-                                    "failed to get presetn\n");
-
-       ret = reset_control_deassert(adc->adrstn);
-       if (ret)
-               return dev_err_probe(&pdev->dev, ret,
-                                    "failed to deassert adrstn pin\n");
-
-       ret = devm_add_action_or_reset(&pdev->dev,
-                                      rzg2l_adc_reset_assert, adc->adrstn);
-       if (ret)
-               return dev_err_probe(&pdev->dev, ret,
-                                    "failed to register adrstn assert devm action\n");
-
-       ret = reset_control_deassert(adc->presetn);
-       if (ret)
-               return dev_err_probe(&pdev->dev, ret,
-                                    "failed to deassert presetn pin\n");
-
-       ret = devm_add_action_or_reset(&pdev->dev,
-                                      rzg2l_adc_reset_assert, adc->presetn);
-       if (ret)
-               return dev_err_probe(&pdev->dev, ret,
-                                    "failed to register presetn assert devm action\n");
+                                    "failed to get/deassert presetn\n");
 
        ret = rzg2l_adc_hw_init(adc);
        if (ret)