Blackfin arch: add a check to make sure only Blackfin GPIOs may generate IRQs
authorMichael Hennerich <michael.hennerich@analog.com>
Sat, 28 Mar 2009 13:18:45 +0000 (21:18 +0800)
committerBryan Wu <cooloney@kernel.org>
Sat, 28 Mar 2009 13:18:45 +0000 (21:18 +0800)
Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
arch/blackfin/include/asm/gpio.h

index d4a082ef75b472456f3f206b7d087ead9e2da39d..3c99ddc8df1684076751c3fd8c55cac326a7564e 100644 (file)
@@ -303,7 +303,10 @@ static inline void gpio_set_value(unsigned gpio, int value)
 
 static inline int gpio_to_irq(unsigned gpio)
 {
-       return (gpio + GPIO_IRQ_BASE);
+       if (likely(gpio < MAX_BLACKFIN_GPIOS))
+               return gpio + GPIO_IRQ_BASE;
+
+       return -EINVAL;
 }
 
 static inline int irq_to_gpio(unsigned irq)