]> git.karo-electronics.de Git - linux-beck.git/commitdiff
arm: mach-u300/gpio: Fix mem_region resource size miscalculations
authorJoe Perches <joe@perches.com>
Wed, 23 Mar 2011 19:55:37 +0000 (12:55 -0700)
committerJiri Kosina <jkosina@suse.cz>
Sun, 10 Apr 2011 15:01:04 +0000 (17:01 +0200)
Convert off-by-1 r->end - r->start to resource_size(r)

Signed-off-by: Joe Perches <joe@perches.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
arch/arm/mach-u300/gpio.c

index d92790140fe53852bd4e571ed29fe95f490e8e77..94837a4e146b64eb2223b3eb23d2a8d2e768bca8 100644 (file)
@@ -581,8 +581,7 @@ static int __init gpio_probe(struct platform_device *pdev)
        if (!memres)
                goto err_no_resource;
 
-       if (request_mem_region(memres->start, memres->end - memres->start, "GPIO Controller")
-           == NULL) {
+       if (!request_mem_region(memres->start, resource_size(memres), "GPIO Controller")) {
                err = -ENODEV;
                goto err_no_ioregion;
        }
@@ -640,7 +639,7 @@ static int __init gpio_probe(struct platform_device *pdev)
                free_irq(gpio_ports[i].irq, &gpio_ports[i]);
        iounmap(virtbase);
  err_no_ioremap:
-       release_mem_region(memres->start, memres->end - memres->start);
+       release_mem_region(memres->start, resource_size(memres));
  err_no_ioregion:
  err_no_resource:
        clk_disable(clk);
@@ -660,7 +659,7 @@ static int __exit gpio_remove(struct platform_device *pdev)
        for (i = 0 ; i < U300_GPIO_NUM_PORTS; i++)
                free_irq(gpio_ports[i].irq, &gpio_ports[i]);
        iounmap(virtbase);
-       release_mem_region(memres->start, memres->end - memres->start);
+       release_mem_region(memres->start, resource_size(memres));
        clk_disable(clk);
        clk_put(clk);
        return 0;