aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpio/gpio-u300.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpio/gpio-u300.c')
-rw-r--r--drivers/gpio/gpio-u300.c13
1 files changed, 5 insertions, 8 deletions
diff --git a/drivers/gpio/gpio-u300.c b/drivers/gpio/gpio-u300.c
index d92790140fe..53e8255cb0b 100644
--- a/drivers/gpio/gpio-u300.c
+++ b/drivers/gpio/gpio-u300.c
@@ -1,11 +1,8 @@
1/* 1/*
2 * 2 * U300 GPIO module.
3 * arch/arm/mach-u300/gpio.c
4 *
5 * 3 *
6 * Copyright (C) 2007-2009 ST-Ericsson AB 4 * Copyright (C) 2007-2009 ST-Ericsson AB
7 * License terms: GNU General Public License (GPL) version 2 5 * License terms: GNU General Public License (GPL) version 2
8 * U300 GPIO module.
9 * This can driver either of the two basic GPIO cores 6 * This can driver either of the two basic GPIO cores
10 * available in the U300 platforms: 7 * available in the U300 platforms:
11 * COH 901 335 - Used in DB3150 (U300 1.0) and DB3200 (U330 1.0) 8 * COH 901 335 - Used in DB3150 (U300 1.0) and DB3200 (U330 1.0)
@@ -581,8 +578,8 @@ static int __init gpio_probe(struct platform_device *pdev)
581 if (!memres) 578 if (!memres)
582 goto err_no_resource; 579 goto err_no_resource;
583 580
584 if (request_mem_region(memres->start, memres->end - memres->start, "GPIO Controller") 581 if (!request_mem_region(memres->start, resource_size(memres),
585 == NULL) { 582 "GPIO Controller")) {
586 err = -ENODEV; 583 err = -ENODEV;
587 goto err_no_ioregion; 584 goto err_no_ioregion;
588 } 585 }
@@ -640,7 +637,7 @@ static int __init gpio_probe(struct platform_device *pdev)
640 free_irq(gpio_ports[i].irq, &gpio_ports[i]); 637 free_irq(gpio_ports[i].irq, &gpio_ports[i]);
641 iounmap(virtbase); 638 iounmap(virtbase);
642 err_no_ioremap: 639 err_no_ioremap:
643 release_mem_region(memres->start, memres->end - memres->start); 640 release_mem_region(memres->start, resource_size(memres));
644 err_no_ioregion: 641 err_no_ioregion:
645 err_no_resource: 642 err_no_resource:
646 clk_disable(clk); 643 clk_disable(clk);
@@ -660,7 +657,7 @@ static int __exit gpio_remove(struct platform_device *pdev)
660 for (i = 0 ; i < U300_GPIO_NUM_PORTS; i++) 657 for (i = 0 ; i < U300_GPIO_NUM_PORTS; i++)
661 free_irq(gpio_ports[i].irq, &gpio_ports[i]); 658 free_irq(gpio_ports[i].irq, &gpio_ports[i]);
662 iounmap(virtbase); 659 iounmap(virtbase);
663 release_mem_region(memres->start, memres->end - memres->start); 660 release_mem_region(memres->start, resource_size(memres));
664 clk_disable(clk); 661 clk_disable(clk);
665 clk_put(clk); 662 clk_put(clk);
666 return 0; 663 return 0;