aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMika Westerberg <[email protected]>2010-12-29 13:01:31 +0200
committerKevin Hilman <[email protected]>2011-01-07 13:33:07 -0800
commitf7c5cc456211da7d0b0aefd3886e57b313a0e00f (patch)
treea1aea5eca5b8e707c5ab94d3d2d0022653565af8
parentdda0aea7ba5a902982cb65a7f7ec1b5c8e7b6923 (diff)
OMAP: GPIO: fix _set_gpio_triggering() for OMAP2+
In case on OMAP2+ we call set_24xx_gpio_triggering() instead of updating reg and l values. However, at the end of the function we perform a write: __raw_writel(l, reg); So on OMAP2+ we end up writing 0 to the bank->base which is not correct (typically this points to GPIO_REVISION register). Fix this by returning immediately after call to set_24xx_gpio_triggering(). Signed-off-by: Mika Westerberg <[email protected]> Signed-off-by: Kevin Hilman <[email protected]>
-rw-r--r--arch/arm/plat-omap/gpio.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/arm/plat-omap/gpio.c b/arch/arm/plat-omap/gpio.c
index 1f98e0b94847..60631f227797 100644
--- a/arch/arm/plat-omap/gpio.c
+++ b/arch/arm/plat-omap/gpio.c
@@ -718,7 +718,7 @@ static int _set_gpio_triggering(struct gpio_bank *bank, int gpio, int trigger)
case METHOD_GPIO_24XX:
case METHOD_GPIO_44XX:
set_24xx_gpio_triggering(bank, gpio, trigger);
- break;
+ return 0;
#endif
default:
goto bad;