diff options
-rw-r--r-- | arch/arm/plat-omap/gpio.c | 14 |
1 files changed, 4 insertions, 10 deletions
diff --git a/arch/arm/plat-omap/gpio.c b/arch/arm/plat-omap/gpio.c index d3fa41e3d8c5..210a1c045554 100644 --- a/arch/arm/plat-omap/gpio.c +++ b/arch/arm/plat-omap/gpio.c | |||
@@ -921,13 +921,10 @@ static int _set_gpio_wakeup(struct gpio_bank *bank, int gpio, int enable) | |||
921 | case METHOD_MPUIO: | 921 | case METHOD_MPUIO: |
922 | case METHOD_GPIO_1610: | 922 | case METHOD_GPIO_1610: |
923 | spin_lock_irqsave(&bank->lock, flags); | 923 | spin_lock_irqsave(&bank->lock, flags); |
924 | if (enable) { | 924 | if (enable) |
925 | bank->suspend_wakeup |= (1 << gpio); | 925 | bank->suspend_wakeup |= (1 << gpio); |
926 | enable_irq_wake(bank->irq); | 926 | else |
927 | } else { | ||
928 | disable_irq_wake(bank->irq); | ||
929 | bank->suspend_wakeup &= ~(1 << gpio); | 927 | bank->suspend_wakeup &= ~(1 << gpio); |
930 | } | ||
931 | spin_unlock_irqrestore(&bank->lock, flags); | 928 | spin_unlock_irqrestore(&bank->lock, flags); |
932 | return 0; | 929 | return 0; |
933 | #endif | 930 | #endif |
@@ -940,13 +937,10 @@ static int _set_gpio_wakeup(struct gpio_bank *bank, int gpio, int enable) | |||
940 | return -EINVAL; | 937 | return -EINVAL; |
941 | } | 938 | } |
942 | spin_lock_irqsave(&bank->lock, flags); | 939 | spin_lock_irqsave(&bank->lock, flags); |
943 | if (enable) { | 940 | if (enable) |
944 | bank->suspend_wakeup |= (1 << gpio); | 941 | bank->suspend_wakeup |= (1 << gpio); |
945 | enable_irq_wake(bank->irq); | 942 | else |
946 | } else { | ||
947 | disable_irq_wake(bank->irq); | ||
948 | bank->suspend_wakeup &= ~(1 << gpio); | 943 | bank->suspend_wakeup &= ~(1 << gpio); |
949 | } | ||
950 | spin_unlock_irqrestore(&bank->lock, flags); | 944 | spin_unlock_irqrestore(&bank->lock, flags); |
951 | return 0; | 945 | return 0; |
952 | #endif | 946 | #endif |