1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0 */ 2*4882a593Smuzhiyun #ifndef __ASM_MACH_IRQS_H 3*4882a593Smuzhiyun #define __ASM_MACH_IRQS_H 4*4882a593Smuzhiyun 5*4882a593Smuzhiyun /* 6*4882a593Smuzhiyun * Interrupt numbers for PXA168 7*4882a593Smuzhiyun */ 8*4882a593Smuzhiyun #define IRQ_PXA168_NONE (-1) 9*4882a593Smuzhiyun #define IRQ_PXA168_SSP4 0 10*4882a593Smuzhiyun #define IRQ_PXA168_SSP3 1 11*4882a593Smuzhiyun #define IRQ_PXA168_SSP2 2 12*4882a593Smuzhiyun #define IRQ_PXA168_SSP1 3 13*4882a593Smuzhiyun #define IRQ_PXA168_PMIC_INT 4 14*4882a593Smuzhiyun #define IRQ_PXA168_RTC_INT 5 15*4882a593Smuzhiyun #define IRQ_PXA168_RTC_ALARM 6 16*4882a593Smuzhiyun #define IRQ_PXA168_TWSI0 7 17*4882a593Smuzhiyun #define IRQ_PXA168_GPU 8 18*4882a593Smuzhiyun #define IRQ_PXA168_KEYPAD 9 19*4882a593Smuzhiyun #define IRQ_PXA168_ONEWIRE 12 20*4882a593Smuzhiyun #define IRQ_PXA168_TIMER1 13 21*4882a593Smuzhiyun #define IRQ_PXA168_TIMER2 14 22*4882a593Smuzhiyun #define IRQ_PXA168_TIMER3 15 23*4882a593Smuzhiyun #define IRQ_PXA168_CMU 16 24*4882a593Smuzhiyun #define IRQ_PXA168_SSP5 17 25*4882a593Smuzhiyun #define IRQ_PXA168_MSP_WAKEUP 19 26*4882a593Smuzhiyun #define IRQ_PXA168_CF_WAKEUP 20 27*4882a593Smuzhiyun #define IRQ_PXA168_XD_WAKEUP 21 28*4882a593Smuzhiyun #define IRQ_PXA168_MFU 22 29*4882a593Smuzhiyun #define IRQ_PXA168_MSP 23 30*4882a593Smuzhiyun #define IRQ_PXA168_CF 24 31*4882a593Smuzhiyun #define IRQ_PXA168_XD 25 32*4882a593Smuzhiyun #define IRQ_PXA168_DDR_INT 26 33*4882a593Smuzhiyun #define IRQ_PXA168_UART1 27 34*4882a593Smuzhiyun #define IRQ_PXA168_UART2 28 35*4882a593Smuzhiyun #define IRQ_PXA168_UART3 29 36*4882a593Smuzhiyun #define IRQ_PXA168_WDT 35 37*4882a593Smuzhiyun #define IRQ_PXA168_MAIN_PMU 36 38*4882a593Smuzhiyun #define IRQ_PXA168_FRQ_CHANGE 38 39*4882a593Smuzhiyun #define IRQ_PXA168_SDH1 39 40*4882a593Smuzhiyun #define IRQ_PXA168_SDH2 40 41*4882a593Smuzhiyun #define IRQ_PXA168_LCD 41 42*4882a593Smuzhiyun #define IRQ_PXA168_CI 42 43*4882a593Smuzhiyun #define IRQ_PXA168_USB1 44 44*4882a593Smuzhiyun #define IRQ_PXA168_NAND 45 45*4882a593Smuzhiyun #define IRQ_PXA168_HIFI_DMA 46 46*4882a593Smuzhiyun #define IRQ_PXA168_DMA_INT0 47 47*4882a593Smuzhiyun #define IRQ_PXA168_DMA_INT1 48 48*4882a593Smuzhiyun #define IRQ_PXA168_GPIOX 49 49*4882a593Smuzhiyun #define IRQ_PXA168_USB2 51 50*4882a593Smuzhiyun #define IRQ_PXA168_AC97 57 51*4882a593Smuzhiyun #define IRQ_PXA168_TWSI1 58 52*4882a593Smuzhiyun #define IRQ_PXA168_AP_PMU 60 53*4882a593Smuzhiyun #define IRQ_PXA168_SM_INT 63 54*4882a593Smuzhiyun 55*4882a593Smuzhiyun /* 56*4882a593Smuzhiyun * Interrupt numbers for PXA910 57*4882a593Smuzhiyun */ 58*4882a593Smuzhiyun #define IRQ_PXA910_NONE (-1) 59*4882a593Smuzhiyun #define IRQ_PXA910_AIRQ 0 60*4882a593Smuzhiyun #define IRQ_PXA910_SSP3 1 61*4882a593Smuzhiyun #define IRQ_PXA910_SSP2 2 62*4882a593Smuzhiyun #define IRQ_PXA910_SSP1 3 63*4882a593Smuzhiyun #define IRQ_PXA910_PMIC_INT 4 64*4882a593Smuzhiyun #define IRQ_PXA910_RTC_INT 5 65*4882a593Smuzhiyun #define IRQ_PXA910_RTC_ALARM 6 66*4882a593Smuzhiyun #define IRQ_PXA910_TWSI0 7 67*4882a593Smuzhiyun #define IRQ_PXA910_GPU 8 68*4882a593Smuzhiyun #define IRQ_PXA910_KEYPAD 9 69*4882a593Smuzhiyun #define IRQ_PXA910_ROTARY 10 70*4882a593Smuzhiyun #define IRQ_PXA910_TRACKBALL 11 71*4882a593Smuzhiyun #define IRQ_PXA910_ONEWIRE 12 72*4882a593Smuzhiyun #define IRQ_PXA910_AP1_TIMER1 13 73*4882a593Smuzhiyun #define IRQ_PXA910_AP1_TIMER2 14 74*4882a593Smuzhiyun #define IRQ_PXA910_AP1_TIMER3 15 75*4882a593Smuzhiyun #define IRQ_PXA910_IPC_AP0 16 76*4882a593Smuzhiyun #define IRQ_PXA910_IPC_AP1 17 77*4882a593Smuzhiyun #define IRQ_PXA910_IPC_AP2 18 78*4882a593Smuzhiyun #define IRQ_PXA910_IPC_AP3 19 79*4882a593Smuzhiyun #define IRQ_PXA910_IPC_AP4 20 80*4882a593Smuzhiyun #define IRQ_PXA910_IPC_CP0 21 81*4882a593Smuzhiyun #define IRQ_PXA910_IPC_CP1 22 82*4882a593Smuzhiyun #define IRQ_PXA910_IPC_CP2 23 83*4882a593Smuzhiyun #define IRQ_PXA910_IPC_CP3 24 84*4882a593Smuzhiyun #define IRQ_PXA910_IPC_CP4 25 85*4882a593Smuzhiyun #define IRQ_PXA910_L2_DDR 26 86*4882a593Smuzhiyun #define IRQ_PXA910_UART2 27 87*4882a593Smuzhiyun #define IRQ_PXA910_UART3 28 88*4882a593Smuzhiyun #define IRQ_PXA910_AP2_TIMER1 29 89*4882a593Smuzhiyun #define IRQ_PXA910_AP2_TIMER2 30 90*4882a593Smuzhiyun #define IRQ_PXA910_CP2_TIMER1 31 91*4882a593Smuzhiyun #define IRQ_PXA910_CP2_TIMER2 32 92*4882a593Smuzhiyun #define IRQ_PXA910_CP2_TIMER3 33 93*4882a593Smuzhiyun #define IRQ_PXA910_GSSP 34 94*4882a593Smuzhiyun #define IRQ_PXA910_CP2_WDT 35 95*4882a593Smuzhiyun #define IRQ_PXA910_MAIN_PMU 36 96*4882a593Smuzhiyun #define IRQ_PXA910_CP_FREQ_CHG 37 97*4882a593Smuzhiyun #define IRQ_PXA910_AP_FREQ_CHG 38 98*4882a593Smuzhiyun #define IRQ_PXA910_MMC 39 99*4882a593Smuzhiyun #define IRQ_PXA910_AEU 40 100*4882a593Smuzhiyun #define IRQ_PXA910_LCD 41 101*4882a593Smuzhiyun #define IRQ_PXA910_CCIC 42 102*4882a593Smuzhiyun #define IRQ_PXA910_IRE 43 103*4882a593Smuzhiyun #define IRQ_PXA910_USB1 44 104*4882a593Smuzhiyun #define IRQ_PXA910_NAND 45 105*4882a593Smuzhiyun #define IRQ_PXA910_HIFI_DMA 46 106*4882a593Smuzhiyun #define IRQ_PXA910_DMA_INT0 47 107*4882a593Smuzhiyun #define IRQ_PXA910_DMA_INT1 48 108*4882a593Smuzhiyun #define IRQ_PXA910_AP_GPIO 49 109*4882a593Smuzhiyun #define IRQ_PXA910_AP2_TIMER3 50 110*4882a593Smuzhiyun #define IRQ_PXA910_USB2 51 111*4882a593Smuzhiyun #define IRQ_PXA910_TWSI1 54 112*4882a593Smuzhiyun #define IRQ_PXA910_CP_GPIO 55 113*4882a593Smuzhiyun #define IRQ_PXA910_UART1 59 /* Slow UART */ 114*4882a593Smuzhiyun #define IRQ_PXA910_AP_PMU 60 115*4882a593Smuzhiyun #define IRQ_PXA910_SM_INT 63 /* from PinMux */ 116*4882a593Smuzhiyun 117*4882a593Smuzhiyun /* 118*4882a593Smuzhiyun * Interrupt numbers for MMP2 119*4882a593Smuzhiyun */ 120*4882a593Smuzhiyun #define IRQ_MMP2_NONE (-1) 121*4882a593Smuzhiyun #define IRQ_MMP2_SSP1 0 122*4882a593Smuzhiyun #define IRQ_MMP2_SSP2 1 123*4882a593Smuzhiyun #define IRQ_MMP2_SSPA1 2 124*4882a593Smuzhiyun #define IRQ_MMP2_SSPA2 3 125*4882a593Smuzhiyun #define IRQ_MMP2_PMIC_MUX 4 /* PMIC & Charger */ 126*4882a593Smuzhiyun #define IRQ_MMP2_RTC_MUX 5 127*4882a593Smuzhiyun #define IRQ_MMP2_TWSI1 7 128*4882a593Smuzhiyun #define IRQ_MMP2_GPU 8 129*4882a593Smuzhiyun #define IRQ_MMP2_KEYPAD_MUX 9 130*4882a593Smuzhiyun #define IRQ_MMP2_ROTARY 10 131*4882a593Smuzhiyun #define IRQ_MMP2_TRACKBALL 11 132*4882a593Smuzhiyun #define IRQ_MMP2_ONEWIRE 12 133*4882a593Smuzhiyun #define IRQ_MMP2_TIMER1 13 134*4882a593Smuzhiyun #define IRQ_MMP2_TIMER2 14 135*4882a593Smuzhiyun #define IRQ_MMP2_TIMER3 15 136*4882a593Smuzhiyun #define IRQ_MMP2_RIPC 16 137*4882a593Smuzhiyun #define IRQ_MMP2_TWSI_MUX 17 /* TWSI2 ~ TWSI6 */ 138*4882a593Smuzhiyun #define IRQ_MMP2_HDMI 19 139*4882a593Smuzhiyun #define IRQ_MMP2_SSP3 20 140*4882a593Smuzhiyun #define IRQ_MMP2_SSP4 21 141*4882a593Smuzhiyun #define IRQ_MMP2_USB_HS1 22 142*4882a593Smuzhiyun #define IRQ_MMP2_USB_HS2 23 143*4882a593Smuzhiyun #define IRQ_MMP2_UART3 24 144*4882a593Smuzhiyun #define IRQ_MMP2_UART1 27 145*4882a593Smuzhiyun #define IRQ_MMP2_UART2 28 146*4882a593Smuzhiyun #define IRQ_MMP2_MIPI_DSI 29 147*4882a593Smuzhiyun #define IRQ_MMP2_CI2 30 148*4882a593Smuzhiyun #define IRQ_MMP2_PMU_TIMER1 31 149*4882a593Smuzhiyun #define IRQ_MMP2_PMU_TIMER2 32 150*4882a593Smuzhiyun #define IRQ_MMP2_PMU_TIMER3 33 151*4882a593Smuzhiyun #define IRQ_MMP2_USB_FS 34 152*4882a593Smuzhiyun #define IRQ_MMP2_MISC_MUX 35 153*4882a593Smuzhiyun #define IRQ_MMP2_WDT1 36 154*4882a593Smuzhiyun #define IRQ_MMP2_NAND_DMA 37 155*4882a593Smuzhiyun #define IRQ_MMP2_USIM 38 156*4882a593Smuzhiyun #define IRQ_MMP2_MMC 39 157*4882a593Smuzhiyun #define IRQ_MMP2_WTM 40 158*4882a593Smuzhiyun #define IRQ_MMP2_LCD 41 159*4882a593Smuzhiyun #define IRQ_MMP2_CI 42 160*4882a593Smuzhiyun #define IRQ_MMP2_IRE 43 161*4882a593Smuzhiyun #define IRQ_MMP2_USB_OTG 44 162*4882a593Smuzhiyun #define IRQ_MMP2_NAND 45 163*4882a593Smuzhiyun #define IRQ_MMP2_UART4 46 164*4882a593Smuzhiyun #define IRQ_MMP2_DMA_FIQ 47 165*4882a593Smuzhiyun #define IRQ_MMP2_DMA_RIQ 48 166*4882a593Smuzhiyun #define IRQ_MMP2_GPIO 49 167*4882a593Smuzhiyun #define IRQ_MMP2_MIPI_HSI1_MUX 51 168*4882a593Smuzhiyun #define IRQ_MMP2_MMC2 52 169*4882a593Smuzhiyun #define IRQ_MMP2_MMC3 53 170*4882a593Smuzhiyun #define IRQ_MMP2_MMC4 54 171*4882a593Smuzhiyun #define IRQ_MMP2_MIPI_HSI0_MUX 55 172*4882a593Smuzhiyun #define IRQ_MMP2_MSP 58 173*4882a593Smuzhiyun #define IRQ_MMP2_MIPI_SLIM_DMA 59 174*4882a593Smuzhiyun #define IRQ_MMP2_PJ4_FREQ_CHG 60 175*4882a593Smuzhiyun #define IRQ_MMP2_MIPI_SLIM 62 176*4882a593Smuzhiyun #define IRQ_MMP2_SM 63 177*4882a593Smuzhiyun 178*4882a593Smuzhiyun #define IRQ_MMP2_MUX_BASE 64 179*4882a593Smuzhiyun 180*4882a593Smuzhiyun /* secondary interrupt of INT #4 */ 181*4882a593Smuzhiyun #define IRQ_MMP2_PMIC_BASE (IRQ_MMP2_MUX_BASE) 182*4882a593Smuzhiyun #define IRQ_MMP2_CHARGER (IRQ_MMP2_PMIC_BASE + 0) 183*4882a593Smuzhiyun #define IRQ_MMP2_PMIC (IRQ_MMP2_PMIC_BASE + 1) 184*4882a593Smuzhiyun 185*4882a593Smuzhiyun /* secondary interrupt of INT #5 */ 186*4882a593Smuzhiyun #define IRQ_MMP2_RTC_BASE (IRQ_MMP2_PMIC_BASE + 2) 187*4882a593Smuzhiyun #define IRQ_MMP2_RTC_ALARM (IRQ_MMP2_RTC_BASE + 0) 188*4882a593Smuzhiyun #define IRQ_MMP2_RTC (IRQ_MMP2_RTC_BASE + 1) 189*4882a593Smuzhiyun 190*4882a593Smuzhiyun /* secondary interrupt of INT #9 */ 191*4882a593Smuzhiyun #define IRQ_MMP2_KEYPAD_BASE (IRQ_MMP2_RTC_BASE + 2) 192*4882a593Smuzhiyun #define IRQ_MMP2_KPC (IRQ_MMP2_KEYPAD_BASE + 0) 193*4882a593Smuzhiyun #define IRQ_MMP2_ROTORY (IRQ_MMP2_KEYPAD_BASE + 1) 194*4882a593Smuzhiyun #define IRQ_MMP2_TBALL (IRQ_MMP2_KEYPAD_BASE + 2) 195*4882a593Smuzhiyun 196*4882a593Smuzhiyun /* secondary interrupt of INT #17 */ 197*4882a593Smuzhiyun #define IRQ_MMP2_TWSI_BASE (IRQ_MMP2_KEYPAD_BASE + 3) 198*4882a593Smuzhiyun #define IRQ_MMP2_TWSI2 (IRQ_MMP2_TWSI_BASE + 0) 199*4882a593Smuzhiyun #define IRQ_MMP2_TWSI3 (IRQ_MMP2_TWSI_BASE + 1) 200*4882a593Smuzhiyun #define IRQ_MMP2_TWSI4 (IRQ_MMP2_TWSI_BASE + 2) 201*4882a593Smuzhiyun #define IRQ_MMP2_TWSI5 (IRQ_MMP2_TWSI_BASE + 3) 202*4882a593Smuzhiyun #define IRQ_MMP2_TWSI6 (IRQ_MMP2_TWSI_BASE + 4) 203*4882a593Smuzhiyun 204*4882a593Smuzhiyun /* secondary interrupt of INT #35 */ 205*4882a593Smuzhiyun #define IRQ_MMP2_MISC_BASE (IRQ_MMP2_TWSI_BASE + 5) 206*4882a593Smuzhiyun #define IRQ_MMP2_PERF (IRQ_MMP2_MISC_BASE + 0) 207*4882a593Smuzhiyun #define IRQ_MMP2_L2_PA_ECC (IRQ_MMP2_MISC_BASE + 1) 208*4882a593Smuzhiyun #define IRQ_MMP2_L2_ECC (IRQ_MMP2_MISC_BASE + 2) 209*4882a593Smuzhiyun #define IRQ_MMP2_L2_UECC (IRQ_MMP2_MISC_BASE + 3) 210*4882a593Smuzhiyun #define IRQ_MMP2_DDR (IRQ_MMP2_MISC_BASE + 4) 211*4882a593Smuzhiyun #define IRQ_MMP2_FAB0_TIMEOUT (IRQ_MMP2_MISC_BASE + 5) 212*4882a593Smuzhiyun #define IRQ_MMP2_FAB1_TIMEOUT (IRQ_MMP2_MISC_BASE + 6) 213*4882a593Smuzhiyun #define IRQ_MMP2_FAB2_TIMEOUT (IRQ_MMP2_MISC_BASE + 7) 214*4882a593Smuzhiyun #define IRQ_MMP2_THERMAL (IRQ_MMP2_MISC_BASE + 9) 215*4882a593Smuzhiyun #define IRQ_MMP2_MAIN_PMU (IRQ_MMP2_MISC_BASE + 10) 216*4882a593Smuzhiyun #define IRQ_MMP2_WDT2 (IRQ_MMP2_MISC_BASE + 11) 217*4882a593Smuzhiyun #define IRQ_MMP2_CORESIGHT (IRQ_MMP2_MISC_BASE + 12) 218*4882a593Smuzhiyun #define IRQ_MMP2_COMMTX (IRQ_MMP2_MISC_BASE + 13) 219*4882a593Smuzhiyun #define IRQ_MMP2_COMMRX (IRQ_MMP2_MISC_BASE + 14) 220*4882a593Smuzhiyun 221*4882a593Smuzhiyun /* secondary interrupt of INT #51 */ 222*4882a593Smuzhiyun #define IRQ_MMP2_MIPI_HSI1_BASE (IRQ_MMP2_MISC_BASE + 15) 223*4882a593Smuzhiyun #define IRQ_MMP2_HSI1_CAWAKE (IRQ_MMP2_MIPI_HSI1_BASE + 0) 224*4882a593Smuzhiyun #define IRQ_MMP2_MIPI_HSI_INT1 (IRQ_MMP2_MIPI_HSI1_BASE + 1) 225*4882a593Smuzhiyun 226*4882a593Smuzhiyun /* secondary interrupt of INT #55 */ 227*4882a593Smuzhiyun #define IRQ_MMP2_MIPI_HSI0_BASE (IRQ_MMP2_MIPI_HSI1_BASE + 2) 228*4882a593Smuzhiyun #define IRQ_MMP2_HSI0_CAWAKE (IRQ_MMP2_MIPI_HSI0_BASE + 0) 229*4882a593Smuzhiyun #define IRQ_MMP2_MIPI_HSI_INT0 (IRQ_MMP2_MIPI_HSI0_BASE + 1) 230*4882a593Smuzhiyun 231*4882a593Smuzhiyun #define IRQ_MMP2_MUX_END (IRQ_MMP2_MIPI_HSI0_BASE + 2) 232*4882a593Smuzhiyun 233*4882a593Smuzhiyun #define IRQ_GPIO_START 128 234*4882a593Smuzhiyun #define MMP_NR_BUILTIN_GPIO 192 235*4882a593Smuzhiyun #define MMP_GPIO_TO_IRQ(gpio) (IRQ_GPIO_START + (gpio)) 236*4882a593Smuzhiyun 237*4882a593Smuzhiyun #define IRQ_BOARD_START (IRQ_GPIO_START + MMP_NR_BUILTIN_GPIO) 238*4882a593Smuzhiyun #define MMP_NR_IRQS IRQ_BOARD_START 239*4882a593Smuzhiyun 240*4882a593Smuzhiyun #endif /* __ASM_MACH_IRQS_H */ 241