mirror of
https://github.com/torvalds/linux.git
synced 2024-11-29 23:51:37 +00:00
pinctrl: at91: Don't mix non-devm calls with devm ones
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> Link: https://lore.kernel.org/r/20230215134242.37618-3-andriy.shevchenko@linux.intel.com Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
This commit is contained in:
parent
f494c1913c
commit
415a099ea5
@ -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);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user