diff options
Diffstat (limited to 'drivers/gpio/gpio-u300.c')
-rw-r--r-- | drivers/gpio/gpio-u300.c | 13 |
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; |