Blackfin arch: fix bug - gpio_bank() macros messed up bank number caculating with...
[linux-2.6.git] / arch / blackfin / include / asm / gpio.h
index d8485624006a5b1acdc8b6bbbad31102aad675a5..2a5e846a5382edf2f0152cf4feff5afc066c4b27 100644 (file)
 #define __ARCH_BLACKFIN_GPIO_H__
 
 #define gpio_bank(x) ((x) >> 4)
+#define gpio_bank_n(x) ((x) & 0xF ? ((x) >> 4) + 1 : (x) >> 4)
 #define gpio_bit(x)  (1<<((x) & 0xF))
 #define gpio_sub_n(x) ((x) & 0xF)
 
 #define GPIO_BANKSIZE 16
+#define GPIO_BANK_NUM gpio_bank_n(MAX_BLACKFIN_GPIOS)
 
 #define        GPIO_0  0
 #define        GPIO_1  1