1 /*
2  *  mach-nomadik/include/mach/irqs.h
3  *
4  *  Copyright (C) ST Microelectronics
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 as published by
8  * the Free Software Foundation; either version 2 of the License, or
9  * (at your option) any later version.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program; if not, write to the Free Software
18  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
19  */
20 #ifndef __ASM_ARCH_IRQS_H
21 #define __ASM_ARCH_IRQS_H
22 
23 #include <mach/hardware.h>
24 
25 #define IRQ_VIC_START		0	/* first VIC interrupt is 0 */
26 
27 /*
28  * Interrupt numbers generic for all Nomadik Chip cuts
29  */
30 #define IRQ_WATCHDOG			0
31 #define IRQ_SOFTINT			1
32 #define IRQ_CRYPTO			2
33 #define IRQ_OWM				3
34 #define IRQ_MTU0			4
35 #define IRQ_MTU1			5
36 #define IRQ_GPIO0			6
37 #define IRQ_GPIO1			7
38 #define IRQ_GPIO2			8
39 #define IRQ_GPIO3			9
40 #define IRQ_RTC_RTT			10
41 #define IRQ_SSP				11
42 #define IRQ_UART0			12
43 #define IRQ_DMA1			13
44 #define IRQ_CLCD_MDIF			14
45 #define IRQ_DMA0			15
46 #define IRQ_PWRFAIL			16
47 #define IRQ_UART1			17
48 #define IRQ_FIRDA			18
49 #define IRQ_MSP0			19
50 #define IRQ_I2C0			20
51 #define IRQ_I2C1			21
52 #define IRQ_SDMMC			22
53 #define IRQ_USBOTG			23
54 #define IRQ_SVA_IT0			24
55 #define IRQ_SVA_IT1			25
56 #define IRQ_SAA_IT0			26
57 #define IRQ_SAA_IT1			27
58 #define IRQ_UART2			28
59 #define IRQ_MSP2			31
60 #define IRQ_L2CC			48
61 #define IRQ_HPI				49
62 #define IRQ_SKE				50
63 #define IRQ_KP				51
64 #define IRQ_MEMST			54
65 #define IRQ_SGA_IT			58
66 #define IRQ_USBM			60
67 #define IRQ_MSP1			62
68 
69 #define NOMADIK_SOC_NR_IRQS		64
70 
71 /* After chip-specific IRQ numbers we have the GPIO ones */
72 #define NOMADIK_NR_GPIO			128 /* last 4 not wired to pins */
73 #define NOMADIK_GPIO_TO_IRQ(gpio)	((gpio) + NOMADIK_SOC_NR_IRQS)
74 #define NOMADIK_IRQ_TO_GPIO(irq)	((irq) - NOMADIK_SOC_NR_IRQS)
75 #define NR_IRQS				NOMADIK_GPIO_TO_IRQ(NOMADIK_NR_GPIO)
76 
77 /* Following two are used by entry_macro.S, to access our dual-vic */
78 #define VIC_REG_IRQSR0		0
79 #define VIC_REG_IRQSR1		0x20
80 
81 #endif /* __ASM_ARCH_IRQS_H */
82 
83