| From 8276536cec38bc6bde30d0aa67716f22b9b9705a Mon Sep 17 00:00:00 2001 |
| From: Tarun Kanti DebBarma <tarun.kanti@ti.com> |
| Date: Fri, 25 Nov 2011 15:27:37 +0530 |
| Subject: gpio/omap: fix _set_gpio_irqenable implementation |
| |
| From: Tarun Kanti DebBarma <tarun.kanti@ti.com> |
| |
| commit 8276536cec38bc6bde30d0aa67716f22b9b9705a upstream. |
| |
| This function should be capable of both enabling and disabling interrupts |
| based upon the *enable* parameter. Right now the function only enables |
| the interrupt and *enable* is not used at all. So add the interrupt |
| disable capability also using the parameter. |
| |
| Signed-off-by: Tarun Kanti DebBarma <tarun.kanti@ti.com> |
| Reviewed-by: Santosh Shilimkar <santosh.shilimkar@ti.com> |
| Acked-by: Felipe Balbi <balbi@ti.com> |
| Reviewed-by: Kevin Hilman <khilman@ti.com> |
| Signed-off-by: Kevin Hilman <khilman@ti.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| drivers/gpio/gpio-omap.c | 5 ++++- |
| 1 file changed, 4 insertions(+), 1 deletion(-) |
| |
| --- a/drivers/gpio/gpio-omap.c |
| +++ b/drivers/gpio/gpio-omap.c |
| @@ -508,7 +508,10 @@ static void _disable_gpio_irqbank(struct |
| |
| static inline void _set_gpio_irqenable(struct gpio_bank *bank, int gpio, int enable) |
| { |
| - _enable_gpio_irqbank(bank, GPIO_BIT(bank, gpio)); |
| + if (enable) |
| + _enable_gpio_irqbank(bank, GPIO_BIT(bank, gpio)); |
| + else |
| + _disable_gpio_irqbank(bank, GPIO_BIT(bank, gpio)); |
| } |
| |
| /* |