Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
[pandora-kernel.git] / arch / arm / mach-realview / include / mach / irqs-pbx.h
1 /*
2  * arch/arm/mach-realview/include/mach/irqs-pbx.h
3  *
4  * Copyright (C) 2009 ARM Limited
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License version 2 as
8  * published by the Free Software Foundation.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with this program; if not, write to the Free Software
17  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18  */
19
20 #ifndef __MACH_IRQS_PBX_H
21 #define __MACH_IRQS_PBX_H
22
23 #define IRQ_PBX_GIC_START                       32
24
25 /* L220
26 #define IRQ_PBX_L220_EVENT      (IRQ_PBX_GIC_START + 29)
27 #define IRQ_PBX_L220_SLAVE      (IRQ_PBX_GIC_START + 30)
28 #define IRQ_PBX_L220_DECODE     (IRQ_PBX_GIC_START + 31)
29 */
30
31 /*
32  * PBX on-board gic irq sources
33  */
34 #define IRQ_PBX_WATCHDOG        (IRQ_PBX_GIC_START + 0) /* Watchdog timer */
35 #define IRQ_PBX_SOFT            (IRQ_PBX_GIC_START + 1) /* Software interrupt */
36 #define IRQ_PBX_COMMRx          (IRQ_PBX_GIC_START + 2) /* Debug Comm Rx interrupt */
37 #define IRQ_PBX_COMMTx          (IRQ_PBX_GIC_START + 3) /* Debug Comm Tx interrupt */
38 #define IRQ_PBX_TIMER0_1        (IRQ_PBX_GIC_START + 4) /* Timer 0/1 (default timer) */
39 #define IRQ_PBX_TIMER2_3        (IRQ_PBX_GIC_START + 5) /* Timer 2/3 */
40 #define IRQ_PBX_GPIO0           (IRQ_PBX_GIC_START + 6) /* GPIO 0 */
41 #define IRQ_PBX_GPIO1           (IRQ_PBX_GIC_START + 7) /* GPIO 1 */
42 #define IRQ_PBX_GPIO2           (IRQ_PBX_GIC_START + 8) /* GPIO 2 */
43                                                                 /* 9 reserved */
44 #define IRQ_PBX_RTC             (IRQ_PBX_GIC_START + 10)        /* Real Time Clock */
45 #define IRQ_PBX_SSP             (IRQ_PBX_GIC_START + 11)        /* Synchronous Serial Port */
46 #define IRQ_PBX_UART0           (IRQ_PBX_GIC_START + 12)        /* UART 0 on development chip */
47 #define IRQ_PBX_UART1           (IRQ_PBX_GIC_START + 13)        /* UART 1 on development chip */
48 #define IRQ_PBX_UART2           (IRQ_PBX_GIC_START + 14)        /* UART 2 on development chip */
49 #define IRQ_PBX_UART3           (IRQ_PBX_GIC_START + 15)        /* UART 3 on development chip */
50 #define IRQ_PBX_SCI             (IRQ_PBX_GIC_START + 16)        /* Smart Card Interface */
51 #define IRQ_PBX_MMCI0A          (IRQ_PBX_GIC_START + 17)        /* Multimedia Card 0A */
52 #define IRQ_PBX_MMCI0B          (IRQ_PBX_GIC_START + 18)        /* Multimedia Card 0B */
53 #define IRQ_PBX_AACI            (IRQ_PBX_GIC_START + 19)        /* Audio Codec */
54 #define IRQ_PBX_KMI0            (IRQ_PBX_GIC_START + 20)        /* Keyboard/Mouse port 0 */
55 #define IRQ_PBX_KMI1            (IRQ_PBX_GIC_START + 21)        /* Keyboard/Mouse port 1 */
56 #define IRQ_PBX_CHARLCD         (IRQ_PBX_GIC_START + 22)        /* Character LCD */
57 #define IRQ_PBX_CLCD            (IRQ_PBX_GIC_START + 23)        /* CLCD controller */
58 #define IRQ_PBX_DMAC            (IRQ_PBX_GIC_START + 24)        /* DMA controller */
59 #define IRQ_PBX_PWRFAIL         (IRQ_PBX_GIC_START + 25)        /* Power failure */
60 #define IRQ_PBX_PISMO           (IRQ_PBX_GIC_START + 26)        /* PISMO interface */
61 #define IRQ_PBX_DoC             (IRQ_PBX_GIC_START + 27)        /* Disk on Chip memory controller */
62 #define IRQ_PBX_ETH             (IRQ_PBX_GIC_START + 28)        /* Ethernet controller */
63 #define IRQ_PBX_USB             (IRQ_PBX_GIC_START + 29)        /* USB controller */
64 #define IRQ_PBX_TSPEN           (IRQ_PBX_GIC_START + 30)        /* Touchscreen pen */
65 #define IRQ_PBX_TSKPAD          (IRQ_PBX_GIC_START + 31)        /* Touchscreen keypad */
66
67 #define IRQ_PBX_PMU_SCU0        (IRQ_PBX_GIC_START + 32)        /* SCU PMU Interrupts (11mp) */
68 #define IRQ_PBX_PMU_SCU1        (IRQ_PBX_GIC_START + 33)
69 #define IRQ_PBX_PMU_SCU2        (IRQ_PBX_GIC_START + 34)
70 #define IRQ_PBX_PMU_SCU3        (IRQ_PBX_GIC_START + 35)
71 #define IRQ_PBX_PMU_SCU4        (IRQ_PBX_GIC_START + 36)
72 #define IRQ_PBX_PMU_SCU5        (IRQ_PBX_GIC_START + 37)
73 #define IRQ_PBX_PMU_SCU6        (IRQ_PBX_GIC_START + 38)
74 #define IRQ_PBX_PMU_SCU7        (IRQ_PBX_GIC_START + 39)
75
76 #define IRQ_PBX_WATCHDOG1       (IRQ_PBX_GIC_START + 40)        /* Watchdog1 timer */
77 #define IRQ_PBX_TIMER4_5        (IRQ_PBX_GIC_START + 41)        /* Timer 0/1 (default timer) */
78 #define IRQ_PBX_TIMER6_7        (IRQ_PBX_GIC_START + 42)        /* Timer 2/3 */
79 /* ... */
80 #define IRQ_PBX_PMU_CPU3        (IRQ_PBX_GIC_START + 44)        /* CPU PMU Interrupts */
81 #define IRQ_PBX_PMU_CPU2        (IRQ_PBX_GIC_START + 45)
82 #define IRQ_PBX_PMU_CPU1        (IRQ_PBX_GIC_START + 46)
83 #define IRQ_PBX_PMU_CPU0        (IRQ_PBX_GIC_START + 47)
84
85 /* ... */
86 #define IRQ_PBX_PCI0            (IRQ_PBX_GIC_START + 50)
87 #define IRQ_PBX_PCI1            (IRQ_PBX_GIC_START + 51)
88 #define IRQ_PBX_PCI2            (IRQ_PBX_GIC_START + 52)
89 #define IRQ_PBX_PCI3            (IRQ_PBX_GIC_START + 53)
90
91 #define IRQ_PBX_SMC             -1
92 #define IRQ_PBX_SCTL            -1
93
94 #define NR_GIC_PBX              1
95
96 /*
97  * Only define NR_IRQS if less than NR_IRQS_PBX
98  */
99 #define NR_IRQS_PBX             (IRQ_PBX_GIC_START + 96)
100
101 #if defined(CONFIG_MACH_REALVIEW_PBX)
102
103 #if !defined(NR_IRQS) || (NR_IRQS < NR_IRQS_PBX)
104 #undef NR_IRQS
105 #define NR_IRQS                 NR_IRQS_PBX
106 #endif
107
108 #if !defined(MAX_GIC_NR) || (MAX_GIC_NR < NR_GIC_PBX)
109 #undef MAX_GIC_NR
110 #define MAX_GIC_NR              NR_GIC_PBX
111 #endif
112
113 #endif  /* CONFIG_MACH_REALVIEW_PBX */
114
115 #endif  /* __MACH_IRQS_PBX_H */