• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/linux/linux-2.6/arch/arm/mach-u300/include/mach/
1/*
2 *
3 * arch/arm/mach-u300/include/mach/irqs.h
4 *
5 *
6 * Copyright (C) 2006-2009 ST-Ericsson AB
7 * License terms: GNU General Public License (GPL) version 2
8 * IRQ channel definitions for the U300 platforms.
9 * Author: Linus Walleij <linus.walleij@stericsson.com>
10 */
11
12#ifndef __MACH_IRQS_H
13#define __MACH_IRQS_H
14
15#define IRQ_U300_INTCON0_START		0
16#define IRQ_U300_INTCON1_START		32
17/* These are on INTCON0 - 30 lines */
18#define IRQ_U300_IRQ0_EXT		0
19#define IRQ_U300_IRQ1_EXT		1
20#define IRQ_U300_DMA			2
21#define IRQ_U300_VIDEO_ENC_0		3
22#define IRQ_U300_VIDEO_ENC_1		4
23#define IRQ_U300_AAIF_RX		5
24#define IRQ_U300_AAIF_TX		6
25#define IRQ_U300_AAIF_VGPIO		7
26#define IRQ_U300_AAIF_WAKEUP		8
27#define IRQ_U300_PCM_I2S0_FRAME		9
28#define IRQ_U300_PCM_I2S0_FIFO		10
29#define IRQ_U300_PCM_I2S1_FRAME		11
30#define IRQ_U300_PCM_I2S1_FIFO		12
31#define IRQ_U300_XGAM_GAMCON		13
32#define IRQ_U300_XGAM_CDI		14
33#define IRQ_U300_XGAM_CDICON		15
34#if defined(CONFIG_MACH_U300_BS2X) || defined(CONFIG_MACH_U300_BS330)
35/* MMIACC not used on the DB3210 or DB3350 chips */
36#define IRQ_U300_XGAM_MMIACC		16
37#endif
38#define IRQ_U300_XGAM_PDI		17
39#define IRQ_U300_XGAM_PDICON		18
40#define IRQ_U300_XGAM_GAMEACC		19
41#define IRQ_U300_XGAM_MCIDCT		20
42#define IRQ_U300_APEX			21
43#define IRQ_U300_UART0			22
44#define IRQ_U300_SPI			23
45#define IRQ_U300_TIMER_APP_OS		24
46#define IRQ_U300_TIMER_APP_DD		25
47#define IRQ_U300_TIMER_APP_GP1		26
48#define IRQ_U300_TIMER_APP_GP2		27
49#define IRQ_U300_TIMER_OS		28
50#define IRQ_U300_TIMER_MS		29
51#define IRQ_U300_KEYPAD_KEYBF		30
52#define IRQ_U300_KEYPAD_KEYBR		31
53/* These are on INTCON1 - 32 lines */
54#define IRQ_U300_GPIO_PORT0		32
55#define IRQ_U300_GPIO_PORT1		33
56#define IRQ_U300_GPIO_PORT2		34
57
58#if defined(CONFIG_MACH_U300_BS2X) || defined(CONFIG_MACH_U300_BS330) || \
59	defined(CONFIG_MACH_U300_BS335)
60/* These are for DB3150, DB3200 and DB3350 */
61#define IRQ_U300_WDOG			35
62#define IRQ_U300_EVHIST			36
63#define IRQ_U300_MSPRO			37
64#define IRQ_U300_MMCSD_MCIINTR0		38
65#define IRQ_U300_MMCSD_MCIINTR1		39
66#define IRQ_U300_I2C0			40
67#define IRQ_U300_I2C1			41
68#define IRQ_U300_RTC			42
69#define IRQ_U300_NFIF			43
70#define IRQ_U300_NFIF2			44
71#endif
72
73/* DB3150 and DB3200 have only 45 IRQs */
74#if defined(CONFIG_MACH_U300_BS2X) || defined(CONFIG_MACH_U300_BS330)
75#define U300_NR_IRQS			45
76#endif
77
78/* The DB3350-specific interrupt lines */
79#ifdef CONFIG_MACH_U300_BS335
80#define IRQ_U300_ISP_F0			45
81#define IRQ_U300_ISP_F1			46
82#define IRQ_U300_ISP_F2			47
83#define IRQ_U300_ISP_F3			48
84#define IRQ_U300_ISP_F4			49
85#define IRQ_U300_GPIO_PORT3		50
86#define IRQ_U300_SYSCON_PLL_LOCK	51
87#define IRQ_U300_UART1			52
88#define IRQ_U300_GPIO_PORT4		53
89#define IRQ_U300_GPIO_PORT5		54
90#define IRQ_U300_GPIO_PORT6		55
91#define U300_NR_IRQS			56
92#endif
93
94/* The DB3210-specific interrupt lines */
95#ifdef CONFIG_MACH_U300_BS365
96#define IRQ_U300_GPIO_PORT3		35
97#define IRQ_U300_GPIO_PORT4		36
98#define IRQ_U300_WDOG			37
99#define IRQ_U300_EVHIST			38
100#define IRQ_U300_MSPRO			39
101#define IRQ_U300_MMCSD_MCIINTR0		40
102#define IRQ_U300_MMCSD_MCIINTR1		41
103#define IRQ_U300_I2C0			42
104#define IRQ_U300_I2C1			43
105#define IRQ_U300_RTC			44
106#define IRQ_U300_NFIF			45
107#define IRQ_U300_NFIF2			46
108#define IRQ_U300_SYSCON_PLL_LOCK	47
109#define U300_NR_IRQS			48
110#endif
111
112#ifdef CONFIG_AB3550_CORE
113#define IRQ_AB3550_BASE			(U300_NR_IRQS)
114#define IRQ_AB3550_END			(IRQ_AB3550_BASE + 37)
115
116#define NR_IRQS				(IRQ_AB3550_END + 1)
117#else
118#define NR_IRQS U300_NR_IRQS
119#endif
120
121#endif
122