gpio: pxa: convert to devm_ioremap
authorRobert Jarzmik <robert.jarzmik@free.fr>
Sat, 28 Nov 2015 21:37:43 +0000 (22:37 +0100)
committerLinus Walleij <linus.walleij@linaro.org>
Thu, 10 Dec 2015 15:04:40 +0000 (16:04 +0100)
Use the device managed ioremap to simplify the probe function.

Signed-off-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
drivers/gpio/gpio-pxa.c

index 540b2115f7412392348ccc16277bd8a32f5871d8..69916c65f0945f0ff3b5c791a5c98fa37396a68a 100644 (file)
@@ -614,9 +614,8 @@ static int pxa_gpio_probe(struct platform_device *pdev)
                || (irq_mux <= 0))
                return -EINVAL;
        res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-       if (!res)
-               return -EINVAL;
-       gpio_reg_base = ioremap(res->start, resource_size(res));
+       gpio_reg_base = devm_ioremap(&pdev->dev, res->start,
+                                    resource_size(res));
        if (!gpio_reg_base)
                return -EINVAL;
 
@@ -627,13 +626,11 @@ static int pxa_gpio_probe(struct platform_device *pdev)
        if (IS_ERR(clk)) {
                dev_err(&pdev->dev, "Error %ld to get gpio clock\n",
                        PTR_ERR(clk));
-               iounmap(gpio_reg_base);
                return PTR_ERR(clk);
        }
        ret = clk_prepare_enable(clk);
        if (ret) {
                clk_put(clk);
-               iounmap(gpio_reg_base);
                return ret;
        }