Message ID | 20230213154532.32992-3-andriy.shevchenko@linux.intel.com |
---|---|
State | Superseded |
Headers | show |
Series | pinctrl: at91: Cleanups | expand |
On 13.02.2023 17:45, Andy Shevchenko wrote: > EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe > > Replace devm_clk_get() by devm_clk_get_enabled() and drop > unneeded code pieces. This will make sure we keep the ordering > of the resource allocation correct. > > Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Reviewed-by: Claudiu Beznea <claudiu.beznea@microchip.com> Tested-by: Claudiu Beznea <claudiu.beznea@microchip.com> > --- > drivers/pinctrl/pinctrl-at91.c | 12 ++---------- > 1 file changed, 2 insertions(+), 10 deletions(-) > > diff --git a/drivers/pinctrl/pinctrl-at91.c b/drivers/pinctrl/pinctrl-at91.c > index 5c01765c7a2a..6d9015ed8a3b 100644 > --- a/drivers/pinctrl/pinctrl-at91.c > +++ b/drivers/pinctrl/pinctrl-at91.c > @@ -1849,19 +1849,13 @@ static int at91_gpio_probe(struct platform_device *pdev) > at91_chip->pioc_virq = irq; > at91_chip->pioc_idx = alias_idx; > > - at91_chip->clock = devm_clk_get(&pdev->dev, NULL); > + at91_chip->clock = devm_clk_get_enabled(&pdev->dev, NULL); > if (IS_ERR(at91_chip->clock)) { > dev_err(&pdev->dev, "failed to get clock, ignoring.\n"); > ret = PTR_ERR(at91_chip->clock); > goto err; > } > > - ret = clk_prepare_enable(at91_chip->clock); > - if (ret) { > - dev_err(&pdev->dev, "failed to prepare and enable clock, ignoring.\n"); > - goto clk_enable_err; > - } > - > at91_chip->chip = at91_gpio_template; > at91_chip->id = alias_idx; > > @@ -1882,7 +1876,7 @@ static int at91_gpio_probe(struct platform_device *pdev) > names = devm_kasprintf_strarray(dev, "pio", chip->ngpio); > if (!names) { > ret = -ENOMEM; > - goto clk_enable_err; > + goto err; > } > > for (i = 0; i < chip->ngpio; i++) > @@ -1915,8 +1909,6 @@ static int at91_gpio_probe(struct platform_device *pdev) > return 0; > > gpiochip_add_err: > -clk_enable_err: > - clk_disable_unprepare(at91_chip->clock); > err: > dev_err(&pdev->dev, "Failure %i for GPIO %i\n", ret, alias_idx); > > -- > 2.39.1 >
diff --git a/drivers/pinctrl/pinctrl-at91.c b/drivers/pinctrl/pinctrl-at91.c index 5c01765c7a2a..6d9015ed8a3b 100644 --- a/drivers/pinctrl/pinctrl-at91.c +++ b/drivers/pinctrl/pinctrl-at91.c @@ -1849,19 +1849,13 @@ static int at91_gpio_probe(struct platform_device *pdev) at91_chip->pioc_virq = irq; at91_chip->pioc_idx = alias_idx; - at91_chip->clock = devm_clk_get(&pdev->dev, NULL); + at91_chip->clock = devm_clk_get_enabled(&pdev->dev, NULL); if (IS_ERR(at91_chip->clock)) { dev_err(&pdev->dev, "failed to get clock, ignoring.\n"); ret = PTR_ERR(at91_chip->clock); goto err; } - ret = clk_prepare_enable(at91_chip->clock); - if (ret) { - dev_err(&pdev->dev, "failed to prepare and enable clock, ignoring.\n"); - goto clk_enable_err; - } - at91_chip->chip = at91_gpio_template; at91_chip->id = alias_idx; @@ -1882,7 +1876,7 @@ static int at91_gpio_probe(struct platform_device *pdev) names = devm_kasprintf_strarray(dev, "pio", chip->ngpio); if (!names) { ret = -ENOMEM; - goto clk_enable_err; + goto err; } for (i = 0; i < chip->ngpio; i++) @@ -1915,8 +1909,6 @@ static int at91_gpio_probe(struct platform_device *pdev) return 0; gpiochip_add_err: -clk_enable_err: - clk_disable_unprepare(at91_chip->clock); err: dev_err(&pdev->dev, "Failure %i for GPIO %i\n", ret, alias_idx);
Replace devm_clk_get() by devm_clk_get_enabled() and drop unneeded code pieces. This will make sure we keep the ordering of the resource allocation correct. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> --- drivers/pinctrl/pinctrl-at91.c | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-)