blob: c9729f4bbbd6d809e8b77e52d289f2419dd82c68 [file] [log] [blame]
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001/* Copyright (c) 2010-2011 Code Aurora Forum. All rights reserved.
Steve Muckleed1f31b2009-11-28 13:00:13 -08002 *
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07003 * This program is free software; you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License version 2 and
5 * only version 2 as published by the Free Software Foundation.
Steve Muckleed1f31b2009-11-28 13:00:13 -08006 *
7 * This program is distributed in the hope that it will be useful,
8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 * GNU General Public License for more details.
11 *
12 */
13
14#ifndef __ASM_ARCH_MSM_IRQS_8X60_H
15#define __ASM_ARCH_MSM_IRQS_8X60_H
16
17/* MSM ACPU Interrupt Numbers */
18
19/* 0-15: STI/SGI (software triggered/generated interrupts)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070020 16-31: PPI (private peripheral interrupts)
21 32+: SPI (shared peripheral interrupts) */
Steve Muckleed1f31b2009-11-28 13:00:13 -080022
Abhijeet Dharmapurikar01eb4f52010-01-21 18:10:29 -080023#define GIC_PPI_START 16
24#define GIC_SPI_START 32
25
26#define INT_DEBUG_TIMER_EXP (GIC_PPI_START + 0)
27#define INT_GP_TIMER_EXP (GIC_PPI_START + 1)
28#define INT_GP_TIMER2_EXP (GIC_PPI_START + 2)
29#define WDT0_ACCSCSSNBARK_INT (GIC_PPI_START + 3)
30#define WDT1_ACCSCSSNBARK_INT (GIC_PPI_START + 4)
31#define AVS_SVICINT (GIC_PPI_START + 5)
32#define AVS_SVICINTSWDONE (GIC_PPI_START + 6)
33#define CPU_DBGCPUXCOMMRXFULL (GIC_PPI_START + 7)
34#define CPU_DBGCPUXCOMMTXEMPTY (GIC_PPI_START + 8)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070035#define INT_ARMQC_PERFMON (GIC_PPI_START + 9)
Abhijeet Dharmapurikar01eb4f52010-01-21 18:10:29 -080036#define SC_AVSCPUXDOWN (GIC_PPI_START + 10)
37#define SC_AVSCPUXUP (GIC_PPI_START + 11)
38#define SC_SICCPUXACGIRPTREQ (GIC_PPI_START + 12)
39/* PPI 13 to 15 are unused */
40
41
42#define SC_SICMPUIRPTREQ (GIC_SPI_START + 0)
43#define SC_SICL2IRPTREQ (GIC_SPI_START + 1)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070044#define SC_SICL2PERFMONIRPTREQ (GIC_SPI_START + 2)
Abhijeet Dharmapurikar01eb4f52010-01-21 18:10:29 -080045#define NC (GIC_SPI_START + 3)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070046#define TLMM_MSM_DIR_CONN_IRQ_0 (GIC_SPI_START + 4)
47#define TLMM_MSM_DIR_CONN_IRQ_1 (GIC_SPI_START + 5)
48#define TLMM_MSM_DIR_CONN_IRQ_2 (GIC_SPI_START + 6)
49#define TLMM_MSM_DIR_CONN_IRQ_3 (GIC_SPI_START + 7)
50#define TLMM_MSM_DIR_CONN_IRQ_4 (GIC_SPI_START + 8)
51#define TLMM_MSM_DIR_CONN_IRQ_5 (GIC_SPI_START + 9)
52#define TLMM_MSM_DIR_CONN_IRQ_6 (GIC_SPI_START + 10)
53#define TLMM_MSM_DIR_CONN_IRQ_7 (GIC_SPI_START + 11)
54#define TLMM_MSM_DIR_CONN_IRQ_8 (GIC_SPI_START + 12)
55#define TLMM_MSM_DIR_CONN_IRQ_9 (GIC_SPI_START + 13)
Abhijeet Dharmapurikar01eb4f52010-01-21 18:10:29 -080056#define PM8058_SEC_IRQ_N (GIC_SPI_START + 14)
57#define PM8901_SEC_IRQ_N (GIC_SPI_START + 15)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070058#define TLMM_MSM_SUMMARY_IRQ (GIC_SPI_START + 16)
Abhijeet Dharmapurikar01eb4f52010-01-21 18:10:29 -080059#define SPDM_RT_1_IRQ (GIC_SPI_START + 17)
60#define SPDM_DIAG_IRQ (GIC_SPI_START + 18)
61#define RPM_SCSS_CPU0_GP_HIGH_IRQ (GIC_SPI_START + 19)
62#define RPM_SCSS_CPU0_GP_MEDIUM_IRQ (GIC_SPI_START + 20)
63#define RPM_SCSS_CPU0_GP_LOW_IRQ (GIC_SPI_START + 21)
64#define RPM_SCSS_CPU0_WAKE_UP_IRQ (GIC_SPI_START + 22)
65#define RPM_SCSS_CPU1_GP_HIGH_IRQ (GIC_SPI_START + 23)
66#define RPM_SCSS_CPU1_GP_MEDIUM_IRQ (GIC_SPI_START + 24)
67#define RPM_SCSS_CPU1_GP_LOW_IRQ (GIC_SPI_START + 25)
68#define RPM_SCSS_CPU1_WAKE_UP_IRQ (GIC_SPI_START + 26)
69#define SSBI2_2_SC_CPU0_SECURE_INT (GIC_SPI_START + 27)
70#define SSBI2_2_SC_CPU0_NON_SECURE_INT (GIC_SPI_START + 28)
71#define SSBI2_1_SC_CPU0_SECURE_INT (GIC_SPI_START + 29)
72#define SSBI2_1_SC_CPU0_NON_SECURE_INT (GIC_SPI_START + 30)
73#define MSMC_SC_SEC_CE_IRQ (GIC_SPI_START + 31)
74#define MSMC_SC_PRI_CE_IRQ (GIC_SPI_START + 32)
75#define MARM_FIQ (GIC_SPI_START + 33)
76#define MARM_IRQ (GIC_SPI_START + 34)
77#define MARM_L2CC_IRQ (GIC_SPI_START + 35)
78#define MARM_WDOG_EXPIRED (GIC_SPI_START + 36)
79#define MARM_SCSS_GP_IRQ_0 (GIC_SPI_START + 37)
80#define MARM_SCSS_GP_IRQ_1 (GIC_SPI_START + 38)
81#define MARM_SCSS_GP_IRQ_2 (GIC_SPI_START + 39)
82#define MARM_SCSS_GP_IRQ_3 (GIC_SPI_START + 40)
83#define MARM_SCSS_GP_IRQ_4 (GIC_SPI_START + 41)
84#define MARM_SCSS_GP_IRQ_5 (GIC_SPI_START + 42)
85#define MARM_SCSS_GP_IRQ_6 (GIC_SPI_START + 43)
86#define MARM_SCSS_GP_IRQ_7 (GIC_SPI_START + 44)
87#define MARM_SCSS_GP_IRQ_8 (GIC_SPI_START + 45)
88#define MARM_SCSS_GP_IRQ_9 (GIC_SPI_START + 46)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070089#define INT_VPE (GIC_SPI_START + 47)
Abhijeet Dharmapurikar01eb4f52010-01-21 18:10:29 -080090#define VFE_IRQ (GIC_SPI_START + 48)
91#define VCODEC_IRQ (GIC_SPI_START + 49)
92#define TV_ENC_IRQ (GIC_SPI_START + 50)
93#define SMMU_VPE_CB_SC_SECURE_IRQ (GIC_SPI_START + 51)
94#define SMMU_VPE_CB_SC_NON_SECURE_IRQ (GIC_SPI_START + 52)
95#define SMMU_VFE_CB_SC_SECURE_IRQ (GIC_SPI_START + 53)
96#define SMMU_VFE_CB_SC_NON_SECURE_IRQ (GIC_SPI_START + 54)
97#define SMMU_VCODEC_B_CB_SC_SECURE_IRQ (GIC_SPI_START + 55)
98#define SMMU_VCODEC_B_CB_SC_NON_SECURE_IRQ (GIC_SPI_START + 56)
99#define SMMU_VCODEC_A_CB_SC_SECURE_IRQ (GIC_SPI_START + 57)
100#define SMMU_VCODEC_A_CB_SC_NON_SECURE_IRQ (GIC_SPI_START + 58)
101#define SMMU_ROT_CB_SC_SECURE_IRQ (GIC_SPI_START + 59)
102#define SMMU_ROT_CB_SC_NON_SECURE_IRQ (GIC_SPI_START + 60)
103#define SMMU_MDP1_CB_SC_SECURE_IRQ (GIC_SPI_START + 61)
104#define SMMU_MDP1_CB_SC_NON_SECURE_IRQ (GIC_SPI_START + 62)
105#define SMMU_MDP0_CB_SC_SECURE_IRQ (GIC_SPI_START + 63)
106#define SMMU_MDP0_CB_SC_NON_SECURE_IRQ (GIC_SPI_START + 64)
107#define SMMU_JPEGD_CB_SC_SECURE_IRQ (GIC_SPI_START + 65)
108#define SMMU_JPEGD_CB_SC_NON_SECURE_IRQ (GIC_SPI_START + 66)
109#define SMMU_IJPEG_CB_SC_SECURE_IRQ (GIC_SPI_START + 67)
110#define SMMU_IJPEG_CB_SC_NON_SECURE_IRQ (GIC_SPI_START + 68)
111#define SMMU_GFX3D_CB_SC_SECURE_IRQ (GIC_SPI_START + 69)
112#define SMMU_GFX3D_CB_SC_NON_SECURE_IRQ (GIC_SPI_START + 70)
113#define SMMU_GFX2D0_CB_SC_SECURE_IRQ (GIC_SPI_START + 71)
114#define SMMU_GFX2D0_CB_SC_NON_SECURE_IRQ (GIC_SPI_START + 72)
115#define ROT_IRQ (GIC_SPI_START + 73)
116#define MMSS_FABRIC_IRQ (GIC_SPI_START + 74)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700117#define INT_MDP (GIC_SPI_START + 75)
Abhijeet Dharmapurikar01eb4f52010-01-21 18:10:29 -0800118#define JPEGD_IRQ (GIC_SPI_START + 76)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700119#define INT_JPEG (GIC_SPI_START + 77)
Abhijeet Dharmapurikar01eb4f52010-01-21 18:10:29 -0800120#define MMSS_IMEM_IRQ (GIC_SPI_START + 78)
121#define HDMI_IRQ (GIC_SPI_START + 79)
122#define GFX3D_IRQ (GIC_SPI_START + 80)
123#define GFX2D0_IRQ (GIC_SPI_START + 81)
124#define DSI_IRQ (GIC_SPI_START + 82)
125#define CSI_1_IRQ (GIC_SPI_START + 83)
126#define CSI_0_IRQ (GIC_SPI_START + 84)
127#define LPASS_SCSS_AUDIO_IF_OUT0_IRQ (GIC_SPI_START + 85)
128#define LPASS_SCSS_MIDI_IRQ (GIC_SPI_START + 86)
129#define LPASS_Q6SS_WDOG_EXPIRED (GIC_SPI_START + 87)
130#define LPASS_SCSS_GP_LOW_IRQ (GIC_SPI_START + 88)
131#define LPASS_SCSS_GP_MEDIUM_IRQ (GIC_SPI_START + 89)
132#define LPASS_SCSS_GP_HIGH_IRQ (GIC_SPI_START + 90)
133#define TOP_IMEM_IRQ (GIC_SPI_START + 91)
134#define FABRIC_SYS_IRQ (GIC_SPI_START + 92)
135#define FABRIC_APPS_IRQ (GIC_SPI_START + 93)
136#define USB1_HS_BAM_IRQ (GIC_SPI_START + 94)
137#define SDC4_BAM_IRQ (GIC_SPI_START + 95)
138#define SDC3_BAM_IRQ (GIC_SPI_START + 96)
139#define SDC2_BAM_IRQ (GIC_SPI_START + 97)
140#define SDC1_BAM_IRQ (GIC_SPI_START + 98)
141#define FABRIC_SPS_IRQ (GIC_SPI_START + 99)
142#define USB1_HS_IRQ (GIC_SPI_START + 100)
143#define SDC4_IRQ_0 (GIC_SPI_START + 101)
144#define SDC3_IRQ_0 (GIC_SPI_START + 102)
145#define SDC2_IRQ_0 (GIC_SPI_START + 103)
146#define SDC1_IRQ_0 (GIC_SPI_START + 104)
147#define SPS_BAM_DMA_IRQ (GIC_SPI_START + 105)
148#define SPS_SEC_VIOL_IRQ (GIC_SPI_START + 106)
149#define SPS_MTI_0 (GIC_SPI_START + 107)
150#define SPS_MTI_1 (GIC_SPI_START + 108)
151#define SPS_MTI_2 (GIC_SPI_START + 109)
152#define SPS_MTI_3 (GIC_SPI_START + 110)
153#define SPS_MTI_4 (GIC_SPI_START + 111)
154#define SPS_MTI_5 (GIC_SPI_START + 112)
155#define SPS_MTI_6 (GIC_SPI_START + 113)
156#define SPS_MTI_7 (GIC_SPI_START + 114)
157#define SPS_MTI_8 (GIC_SPI_START + 115)
158#define SPS_MTI_9 (GIC_SPI_START + 116)
159#define SPS_MTI_10 (GIC_SPI_START + 117)
160#define SPS_MTI_11 (GIC_SPI_START + 118)
161#define SPS_MTI_12 (GIC_SPI_START + 119)
162#define SPS_MTI_13 (GIC_SPI_START + 120)
163#define SPS_MTI_14 (GIC_SPI_START + 121)
164#define SPS_MTI_15 (GIC_SPI_START + 122)
165#define SPS_MTI_16 (GIC_SPI_START + 123)
166#define SPS_MTI_17 (GIC_SPI_START + 124)
167#define SPS_MTI_18 (GIC_SPI_START + 125)
168#define SPS_MTI_19 (GIC_SPI_START + 126)
169#define SPS_MTI_20 (GIC_SPI_START + 127)
170#define SPS_MTI_21 (GIC_SPI_START + 128)
171#define SPS_MTI_22 (GIC_SPI_START + 129)
172#define SPS_MTI_23 (GIC_SPI_START + 130)
173#define SPS_MTI_24 (GIC_SPI_START + 131)
174#define SPS_MTI_25 (GIC_SPI_START + 132)
175#define SPS_MTI_26 (GIC_SPI_START + 133)
176#define SPS_MTI_27 (GIC_SPI_START + 134)
177#define SPS_MTI_28 (GIC_SPI_START + 135)
178#define SPS_MTI_29 (GIC_SPI_START + 136)
179#define SPS_MTI_30 (GIC_SPI_START + 137)
180#define SPS_MTI_31 (GIC_SPI_START + 138)
181#define UXMC_EBI2_WR_ER_DONE_IRQ (GIC_SPI_START + 139)
182#define UXMC_EBI2_OP_DONE_IRQ (GIC_SPI_START + 140)
183#define USB2_IRQ (GIC_SPI_START + 141)
184#define USB1_IRQ (GIC_SPI_START + 142)
185#define TSSC_SSBI_IRQ (GIC_SPI_START + 143)
186#define TSSC_SAMPLE_IRQ (GIC_SPI_START + 144)
187#define TSSC_PENUP_IRQ (GIC_SPI_START + 145)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700188#define GSBI1_UARTDM_IRQ (GIC_SPI_START + 146)
189#define GSBI1_QUP_IRQ (GIC_SPI_START + 147)
190#define GSBI2_UARTDM_IRQ (GIC_SPI_START + 148)
191#define GSBI2_QUP_IRQ (GIC_SPI_START + 149)
192#define GSBI3_UARTDM_IRQ (GIC_SPI_START + 150)
Abhijeet Dharmapurikar01eb4f52010-01-21 18:10:29 -0800193#define GSBI3_QUP_IRQ (GIC_SPI_START + 151)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700194#define GSBI4_UARTDM_IRQ (GIC_SPI_START + 152)
Abhijeet Dharmapurikar01eb4f52010-01-21 18:10:29 -0800195#define GSBI4_QUP_IRQ (GIC_SPI_START + 153)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700196#define GSBI5_UARTDM_IRQ (GIC_SPI_START + 154)
Abhijeet Dharmapurikar01eb4f52010-01-21 18:10:29 -0800197#define GSBI5_QUP_IRQ (GIC_SPI_START + 155)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700198#define GSBI6_UARTDM_IRQ (GIC_SPI_START + 156)
Abhijeet Dharmapurikar01eb4f52010-01-21 18:10:29 -0800199#define GSBI6_QUP_IRQ (GIC_SPI_START + 157)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700200#define GSBI7_UARTDM_IRQ (GIC_SPI_START + 158)
Abhijeet Dharmapurikar01eb4f52010-01-21 18:10:29 -0800201#define GSBI7_QUP_IRQ (GIC_SPI_START + 159)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700202#define GSBI8_UARTDM_IRQ (GIC_SPI_START + 160)
Abhijeet Dharmapurikar01eb4f52010-01-21 18:10:29 -0800203#define GSBI8_QUP_IRQ (GIC_SPI_START + 161)
204#define TSIF_TSPP_IRQ (GIC_SPI_START + 162)
205#define TSIF_BAM_IRQ (GIC_SPI_START + 163)
206#define TSIF2_IRQ (GIC_SPI_START + 164)
207#define TSIF1_IRQ (GIC_SPI_START + 165)
208#define INT_ADM1_MASTER (GIC_SPI_START + 166)
209#define INT_ADM1_AARM (GIC_SPI_START + 167)
210#define INT_ADM1_SD2 (GIC_SPI_START + 168)
211#define INT_ADM1_SD3 (GIC_SPI_START + 169)
212#define INT_ADM0_MASTER (GIC_SPI_START + 170)
213#define INT_ADM0_AARM (GIC_SPI_START + 171)
214#define INT_ADM0_SD2 (GIC_SPI_START + 172)
215#define INT_ADM0_SD3 (GIC_SPI_START + 173)
216#define CC_SCSS_WDT1CPU1BITEEXPIRED (GIC_SPI_START + 174)
217#define CC_SCSS_WDT1CPU0BITEEXPIRED (GIC_SPI_START + 175)
218#define CC_SCSS_WDT0CPU1BITEEXPIRED (GIC_SPI_START + 176)
219#define CC_SCSS_WDT0CPU0BITEEXPIRED (GIC_SPI_START + 177)
220#define TSENS_UPPER_LOWER_INT (GIC_SPI_START + 178)
221#define SSBI2_2_SC_CPU1_SECURE_INT (GIC_SPI_START + 179)
222#define SSBI2_2_SC_CPU1_NON_SECURE_INT (GIC_SPI_START + 180)
223#define SSBI2_1_SC_CPU1_SECURE_INT (GIC_SPI_START + 181)
224#define SSBI2_1_SC_CPU1_NON_SECURE_INT (GIC_SPI_START + 182)
225#define XPU_SUMMARY_IRQ (GIC_SPI_START + 183)
226#define BUS_EXCEPTION_SUMMARY_IRQ (GIC_SPI_START + 184)
227#define HSDDRX_SMICH0_IRQ (GIC_SPI_START + 185)
228#define HSDDRX_EBI1_IRQ (GIC_SPI_START + 186)
229#define SDC5_BAM_IRQ (GIC_SPI_START + 187)
230#define SDC5_IRQ_0 (GIC_SPI_START + 188)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700231#define GSBI9_UARTDM_IRQ (GIC_SPI_START + 189)
Abhijeet Dharmapurikar01eb4f52010-01-21 18:10:29 -0800232#define GSBI9_QUP_IRQ (GIC_SPI_START + 190)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700233#define GSBI10_UARTDM_IRQ (GIC_SPI_START + 191)
Abhijeet Dharmapurikar01eb4f52010-01-21 18:10:29 -0800234#define GSBI10_QUP_IRQ (GIC_SPI_START + 192)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700235#define GSBI11_UARTDM_IRQ (GIC_SPI_START + 193)
Abhijeet Dharmapurikar01eb4f52010-01-21 18:10:29 -0800236#define GSBI11_QUP_IRQ (GIC_SPI_START + 194)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700237#define GSBI12_UARTDM_IRQ (GIC_SPI_START + 195)
Abhijeet Dharmapurikar01eb4f52010-01-21 18:10:29 -0800238#define GSBI12_QUP_IRQ (GIC_SPI_START + 196)
Stepan Moskovchenkoc4bd2ee2010-11-12 19:29:48 -0800239
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700240#define SMMU_GFX2D1_CB_SC_SECURE_IRQ (GIC_SPI_START + 210)
241#define SMMU_GFX2D1_CB_SC_NON_SECURE_IRQ (GIC_SPI_START + 211)
242#define GFX2D1_IRQ (GIC_SPI_START + 212)
Stepan Moskovchenkoc4bd2ee2010-11-12 19:29:48 -0800243
Abhijeet Dharmapurikar01eb4f52010-01-21 18:10:29 -0800244#define SMPSS_SPARE_1 (GIC_SPI_START + 217)
245#define SMPSS_SPARE_2 (GIC_SPI_START + 218)
246#define SMPSS_SPARE_3 (GIC_SPI_START + 219)
247#define SMPSS_SPARE_4 (GIC_SPI_START + 220)
248#define SMPSS_SPARE_5 (GIC_SPI_START + 221)
249#define SMPSS_SPARE_6 (GIC_SPI_START + 222)
250#define SMPSS_SPARE_7 (GIC_SPI_START + 223)
251
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700252#define NR_TLMM_MSM_DIR_CONN_IRQ 10
Steve Muckleed1f31b2009-11-28 13:00:13 -0800253#define NR_GPIO_IRQS 173
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700254#define NR_MSM_GPIOS NR_GPIO_IRQS
Steve Muckleed1f31b2009-11-28 13:00:13 -0800255#define NR_MSM_IRQS 256
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700256#define NR_PMIC8058_IRQS 256
257#define NR_PMIC8901_IRQS 72
258#define NR_GPIO_EXPANDER_IRQS 98
259#define NR_BOARD_IRQS (NR_PMIC8058_IRQS + NR_PMIC8901_IRQS +\
260 NR_GPIO_EXPANDER_IRQS)
261
262/* smd/smsm interrupts */
263#define INT_A9_M2A_0 MARM_SCSS_GP_IRQ_0
264#define INT_A9_M2A_5 MARM_SCSS_GP_IRQ_1
265#define INT_ADSP_A11 LPASS_SCSS_GP_HIGH_IRQ
266#define INT_ADSP_A11_SMSM LPASS_SCSS_GP_MEDIUM_IRQ
267#define INT_DSPS_A11 SPS_MTI_31
Steve Muckleed1f31b2009-11-28 13:00:13 -0800268
269#endif