blob: f141bbf9e3d4a115834c8a95f3dc58eb279f006a [file] [log] [blame]
Duy Truongf3ac7b32013-02-13 01:07:28 -08001/* Copyright (c) 2009, The Linux Foundation. All rights reserved.
Ajay Dudani232ce812009-12-02 00:14:11 -08002 *
3 * Redistribution and use in source and binary forms, with or without
4 * modification, are permitted provided that the following conditions are met:
5 * * Redistributions of source code must retain the above copyright
6 * notice, this list of conditions and the following disclaimer.
7 * * Redistributions in binary form must reproduce the above copyright
8 * notice, this list of conditions and the following disclaimer in the
9 * documentation and/or other materials provided with the distribution.
Duy Truongf3ac7b32013-02-13 01:07:28 -080010 * * Neither the name of The Linux Foundation nor
Ajay Dudani232ce812009-12-02 00:14:11 -080011 * the names of its contributors may be used to endorse or promote
12 * products derived from this software without specific prior written
13 * permission.
14 *
15 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
16 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
17 * IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
18 * NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
19 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
20 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
21 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
22 * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
23 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
24 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
25 * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 *
27 */
28
29#ifndef __ASM_ARCH_MSM_IRQS_7X30_H
30#define __ASM_ARCH_MSM_IRQS_7X30_H
31
32/* MSM ACPU Interrupt Numbers */
33
34#define INT_DEBUG_TIMER_EXP 0
35#define INT_GPT0_TIMER_EXP 1
36#define INT_GPT1_TIMER_EXP 2
37#define INT_WDT0_ACCSCSSBARK 3
38#define INT_WDT1_ACCSCSSBARK 4
39#define INT_AVS_SVIC 5
40#define INT_AVS_SVIC_SW_DONE 6
41#define INT_SC_DBG_RX_FULL 7
42#define INT_SC_DBG_TX_EMPTY 8
43#define INT_SC_PERF_MON 9
44#define INT_AVS_REQ_DOWN 10
45#define INT_AVS_REQ_UP 11
46#define INT_SC_ACG 12
47/* SCSS_VICFIQSTS1[13:15] are RESERVED */
48#define INT_L2_SVICCPUIRPTREQ 16
49#define INT_L2_SVICDMANSIRPTREQ 17
50#define INT_L2_SVICDMASIRPTREQ 18
51#define INT_L2_SVICSLVIRPTREQ 19
52#define INT_AD5A_MPROC_APPS_0 20
53#define INT_AD5A_MPROC_APPS_1 21
54#define INT_A9_M2A_0 22
55#define INT_A9_M2A_1 23
56#define INT_A9_M2A_2 24
57#define INT_A9_M2A_3 25
58#define INT_A9_M2A_4 26
59#define INT_A9_M2A_5 27
60#define INT_A9_M2A_6 28
61#define INT_A9_M2A_7 29
62#define INT_A9_M2A_8 30
63#define INT_A9_M2A_9 31
64
65#define INT_AXI_EBI1_SC (32 + 0)
66#define INT_IMEM_ERR (32 + 1)
67#define INT_AXI_EBI0_SC (32 + 2)
68#define INT_PBUS_SC_IRQC (32 + 3)
69#define INT_PERPH_BUS_BPM (32 + 4)
70#define INT_CC_TEMP_SENSE (32 + 5)
71#define INT_UXMC_EBI0 (32 + 6)
72#define INT_UXMC_EBI1 (32 + 7)
73#define INT_EBI2_OP_DONE (32 + 8)
74#define INT_EBI2_WR_ER_DONE (32 + 9)
75#define INT_TCSR_SPSS_CE (32 + 10)
76#define INT_EMDH (32 + 11)
77#define INT_PMDH (32 + 12)
78#define INT_MDC (32 + 13)
79#define INT_MIDI_TO_SUPSS (32 + 14)
80#define INT_LPA_2 (32 + 15)
81#define INT_GPIO_GROUP1_SECURE (32 + 16)
82#define INT_GPIO_GROUP2_SECURE (32 + 17)
83#define INT_GPIO_GROUP1 (32 + 18)
84#define INT_GPIO_GROUP2 (32 + 19)
85#define INT_MPRPH_SOFTRESET (32 + 20)
86#define INT_PWB_I2C (32 + 21)
87#define INT_PWB_I2C_2 (32 + 22)
88#define INT_TSSC_SAMPLE (32 + 23)
89#define INT_TSSC_PENUP (32 + 24)
90#define INT_TCHSCRN_SSBI (32 + 25)
91#define INT_FM_RDS (32 + 26)
92#define INT_KEYSENSE (32 + 27)
93#define INT_USB_OTG_HS (32 + 28)
94#define INT_USB_OTG_HS2 (32 + 29)
95#define INT_USB_OTG_HS3 (32 + 30)
96#define INT_RESERVED_BIT31 (32 + 31)
97
98#define INT_SPI_OUTPUT (64 + 0)
99#define INT_SPI_INPUT (64 + 1)
100#define INT_SPI_ERROR (64 + 2)
101#define INT_UART1 (64 + 3)
102#define INT_UART1_RX (64 + 4)
103#define INT_UART2 (64 + 5)
104#define INT_UART2_RX (64 + 6)
105#define INT_UART3 (64 + 7)
106#define INT_UART3_RX (64 + 8)
107#define INT_UART1DM_IRQ (64 + 9)
108#define INT_UART1DM_RX (64 + 10)
109#define INT_UART2DM_IRQ (64 + 11)
110#define INT_UART2DM_RX (64 + 12)
111#define INT_TSIF (64 + 13)
112#define INT_ADM_SC1 (64 + 14)
113#define INT_ADM_SC2 (64 + 15)
114#define INT_MDP (64 + 16)
115#define INT_VPE (64 + 17)
116#define INT_GRP_2D (64 + 18)
117#define INT_GRP_3D (64 + 19)
118#define INT_ROTATOR (64 + 20)
119#define INT_MFC720 (64 + 21)
120#define INT_JPEG (64 + 22)
121#define INT_VFE (64 + 23)
122#define INT_TV_ENC (64 + 24)
123#define INT_PMIC_SSBI (64 + 25)
124#define INT_MPM_1 (64 + 26)
125#define INT_TCSR_SPSS_SAMPLE (64 + 27)
126#define INT_TCSR_SPSS_PENUP (64 + 28)
127#define INT_MPM_2 (64 + 29)
128#define INT_SDC1_0 (64 + 30)
129#define INT_SDC1_1 (64 + 31)
130
131#define INT_SDC3_0 (96 + 0)
132#define INT_SDC3_1 (96 + 1)
133#define INT_SDC2_0 (96 + 2)
134#define INT_SDC2_1 (96 + 3)
135#define INT_SDC4_0 (96 + 4)
136#define INT_SDC4_1 (96 + 5)
137#define INT_PWB_QUP_IN (96 + 6)
138#define INT_PWB_QUP_OUT (96 + 7)
139#define INT_PWB_QUP_ERR (96 + 8)
140/* SCSS_VICFIQSTS3[6:31] are RESERVED */
141
142/* Retrofit universal macro names */
143#define INT_ADM_AARM INT_ADM_SC2
144#define INT_USB_HS INT_USB_OTG_HS
145#define INT_USB_OTG INT_USB_OTG_HS
146#define INT_TCHSCRN1 INT_TSSC_SAMPLE
147#define INT_TCHSCRN2 INT_TSSC_PENUP
148#define INT_GP_TIMER_EXP INT_GPT0_TIMER_EXP
149#define INT_ADSP_A11 INT_AD5A_MPROC_APPS_0
150#define INT_ADSP_A9_A11 INT_AD5A_MPROC_APPS_1
151#define INT_MDDI_EXT INT_EMDH
152#define INT_MDDI_PRI INT_PMDH
153#define INT_MDDI_CLIENT INT_MDC
154#define INT_NAND_WR_ER_DONE INT_EBI2_WR_ER_DONE
155#define INT_NAND_OP_DONE INT_EBI2_OP_DONE
156
157#define NR_MSM_IRQS 128
158#define NR_GPIO_IRQS 182
159#define PMIC8058_IRQ_BASE (NR_MSM_IRQS + NR_GPIO_IRQS)
160#define NR_PMIC8058_GPIO_IRQS 40
161#define NR_PMIC8058_MPP_IRQS 12
162#define NR_PMIC8058_MISC_IRQS 8
163#define NR_PMIC8058_IRQS (NR_PMIC8058_GPIO_IRQS +\
164 NR_PMIC8058_MPP_IRQS +\
165 NR_PMIC8058_MISC_IRQS)
166#define NR_BOARD_IRQS NR_PMIC8058_IRQS
167
168#define NR_IRQS (NR_MSM_IRQS + NR_GPIO_IRQS + NR_BOARD_IRQS)
169
Ajay Dudanib01e5062011-12-03 23:23:42 -0800170#endif /* __ASM_ARCH_MSM_IRQS_7X30_H */