gpio: omap: Use devm_ioremap_resource()
authorJingoo Han <jg1.han@samsung.com>
Wed, 12 Feb 2014 02:51:38 +0000 (11:51 +0900)
committerLinus Walleij <linus.walleij@linaro.org>
Mon, 24 Feb 2014 13:44:43 +0000 (14:44 +0100)
Use devm_ioremap_resource() in order to make the code simpler,
and remove redundant return value check of platform_get_resource()
because the value is checked by devm_ioremap_resource().

Signed-off-by: Jingoo Han <jg1.han@samsung.com>
Reviewed-by: Alexandre Courbot <acourbot@nvidia.com>
Acked-by: Kevin Hilman <khilman@linaro.org>
Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
drivers/gpio/gpio-omap.c

index 424319061e0941aa70add47f949d012867f980ea..19b886c21b1dbe357a806100fc44cf4f480620d2 100644 (file)
@@ -1214,24 +1214,10 @@ static int omap_gpio_probe(struct platform_device *pdev)
 
        /* Static mapping, never released */
        res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-       if (unlikely(!res)) {
-               dev_err(dev, "Invalid mem resource\n");
-               irq_domain_remove(bank->domain);
-               return -ENODEV;
-       }
-
-       if (!devm_request_mem_region(dev, res->start, resource_size(res),
-                                    pdev->name)) {
-               dev_err(dev, "Region already claimed\n");
+       bank->base = devm_ioremap_resource(dev, res);
+       if (IS_ERR(bank->base)) {
                irq_domain_remove(bank->domain);
-               return -EBUSY;
-       }
-
-       bank->base = devm_ioremap(dev, res->start, resource_size(res));
-       if (!bank->base) {
-               dev_err(dev, "Could not ioremap\n");
-               irq_domain_remove(bank->domain);
-               return -ENOMEM;
+               return PTR_ERR(bank->base);
        }
 
        platform_set_drvdata(pdev, bank);