Merge ssh://master.kernel.org/pub/scm/linux/kernel/git/tglx/linux-2.6-x86
[cascardo/linux.git] / include / asm-arm / arch-ep93xx / irqs.h
index 9a42f5d..2a8c636 100644 (file)
@@ -22,9 +22,9 @@
 #define IRQ_EP93XX_DMAM2P9             16
 #define IRQ_EP93XX_DMAM2M0             17
 #define IRQ_EP93XX_DMAM2M1             18
-#define IRQ_EP93XX_GPIO0MUX            20
-#define IRQ_EP93XX_GPIO1MUX            21
-#define IRQ_EP93XX_GPIO2MUX            22
+#define IRQ_EP93XX_GPIO0MUX            19
+#define IRQ_EP93XX_GPIO1MUX            20
+#define IRQ_EP93XX_GPIO2MUX            21
 #define IRQ_EP93XX_GPIO3MUX            22
 #define IRQ_EP93XX_UART1RX             23
 #define IRQ_EP93XX_UART1TX             24
 #define IRQ_EP93XX_SAI                 60
 #define EP93XX_VIC2_VALID_IRQ_MASK     0x1fffffff
 
-#define IRQ_EP93XX_GPIO(x)             (64 + (x))
+/*
+ * Map GPIO A0..A7 to irq 64..71, B0..B7 to 72..79, and
+ * F0..F7 to 80..87.
+ */
+#define IRQ_EP93XX_GPIO(x)             (64 + (((x) + (((x) >> 2) & 8)) & 0x1f))
 
-#define NR_EP93XX_IRQS                 IRQ_EP93XX_GPIO(16)
+#define NR_EP93XX_IRQS                 (64 + 24)
 
 #define EP93XX_BOARD_IRQ(x)            (NR_EP93XX_IRQS + (x))
 #define EP93XX_BOARD_IRQS              32