Commit 3f4e432f authored by Bartosz Golaszewski's avatar Bartosz Golaszewski
Browse files

gpio: pxa: use devres for the clock struct



The clock is never released after probe(). Use devres to not leak
resources.

Reported-by: default avatarHulk Robot <hulkci@huawei.com>
Reported-by: default avatarYuan Can <yuancan@huawei.com>
Signed-off-by: default avatarBartosz Golaszewski <brgl@bgdev.pl>
Reviewed-by: default avatarLinus Walleij <linus.walleij@linaro.org>
parent 636c3982
Loading
Loading
Loading
Loading
+2 −9
Original line number Diff line number Diff line
@@ -661,24 +661,17 @@ static int pxa_gpio_probe(struct platform_device *pdev)
	if (IS_ERR(gpio_reg_base))
		return PTR_ERR(gpio_reg_base);

	clk = clk_get(&pdev->dev, NULL);
	clk = devm_clk_get_enabled(&pdev->dev, NULL);
	if (IS_ERR(clk)) {
		dev_err(&pdev->dev, "Error %ld to get gpio clock\n",
			PTR_ERR(clk));
		return PTR_ERR(clk);
	}
	ret = clk_prepare_enable(clk);
	if (ret) {
		clk_put(clk);
		return ret;
	}

	/* Initialize GPIO chips */
	ret = pxa_init_gpio_chip(pchip, pxa_last_gpio + 1, gpio_reg_base);
	if (ret) {
		clk_put(clk);
	if (ret)
		return ret;
	}

	/* clear all GPIO edge detects */
	for_each_gpio_bank(gpio, c, pchip) {