summaryrefslogtreecommitdiff
path: root/include/asm-arm/arch-iop3xx/iop331-irqs.h
blob: 8ff73d487222596ecca2641587fca2790a56809c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
/*
 * linux/include/asm-arm/arch-iop3xx/irqs.h
 *
 * Author:	Dave Jiang (dave.jiang@intel.com)
 * Copyright:	(C) 2003 Intel Corp.
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
 *
 */
#ifndef _IOP331_IRQS_H_
#define _IOP331_IRQS_H_

/*
 * IOP80331 chipset interrupts
 */
#define IOP331_IRQ_OFS		0
#define IOP331_IRQ(x)		(IOP331_IRQ_OFS + (x))

/*
 * On IRQ or FIQ register
 */
#define IRQ_IOP331_DMA0_EOT	IOP331_IRQ(0)
#define IRQ_IOP331_DMA0_EOC	IOP331_IRQ(1)
#define IRQ_IOP331_DMA1_EOT	IOP331_IRQ(2)
#define IRQ_IOP331_DMA1_EOC	IOP331_IRQ(3)
#define IRQ_IOP331_RSVD_4	IOP331_IRQ(4)
#define IRQ_IOP331_RSVD_5	IOP331_IRQ(5)
#define IRQ_IOP331_AA_EOT	IOP331_IRQ(6)
#define IRQ_IOP331_AA_EOC	IOP331_IRQ(7)
#define IRQ_IOP331_TIMER0	IOP331_IRQ(8)
#define IRQ_IOP331_TIMER1	IOP331_IRQ(9)
#define IRQ_IOP331_I2C_0	IOP331_IRQ(10)
#define IRQ_IOP331_I2C_1	IOP331_IRQ(11)
#define IRQ_IOP331_MSG	    IOP331_IRQ(12)
#define IRQ_IOP331_MSGIBQ   IOP331_IRQ(13)
#define IRQ_IOP331_ATU_BIST	IOP331_IRQ(14)
#define IRQ_IOP331_PERFMON	IOP331_IRQ(15)
#define IRQ_IOP331_CORE_PMU	IOP331_IRQ(16)
#define IRQ_IOP331_RSVD_17	IOP331_IRQ(17)
#define IRQ_IOP331_RSVD_18	IOP331_IRQ(18)
#define IRQ_IOP331_RSVD_19	IOP331_IRQ(19)
#define IRQ_IOP331_RSVD_20	IOP331_IRQ(20)
#define IRQ_IOP331_RSVD_21	IOP331_IRQ(21)
#define IRQ_IOP331_RSVD_22	IOP331_IRQ(22)
#define IRQ_IOP331_RSVD_23	IOP331_IRQ(23)
#define IRQ_IOP331_XINT0	IOP331_IRQ(24)
#define IRQ_IOP331_XINT1	IOP331_IRQ(25)
#define IRQ_IOP331_XINT2	IOP331_IRQ(26)
#define IRQ_IOP331_XINT3	IOP331_IRQ(27)
#define IRQ_IOP331_RSVD_28  IOP331_IRQ(28)
#define IRQ_IOP331_RSVD_29  IOP331_IRQ(29)
#define IRQ_IOP331_RSVD_30  IOP331_IRQ(30)
#define IRQ_IOP331_RSVD_31  IOP331_IRQ(31)
#define IRQ_IOP331_XINT8    IOP331_IRQ(32)  // 0
#define IRQ_IOP331_XINT9    IOP331_IRQ(33)  // 1
#define IRQ_IOP331_XINT10   IOP331_IRQ(34)  // 2
#define IRQ_IOP331_XINT11   IOP331_IRQ(35)  // 3
#define IRQ_IOP331_XINT12   IOP331_IRQ(36)  // 4
#define IRQ_IOP331_XINT13   IOP331_IRQ(37)  // 5
#define IRQ_IOP331_XINT14   IOP331_IRQ(38)  // 6
#define IRQ_IOP331_XINT15   IOP331_IRQ(39)  // 7
#define IRQ_IOP331_RSVD_40  IOP331_IRQ(40)  // 8
#define IRQ_IOP331_RSVD_41  IOP331_IRQ(41)  // 9
#define IRQ_IOP331_RSVD_42  IOP331_IRQ(42)  // 10
#define IRQ_IOP331_RSVD_43  IOP331_IRQ(43)  // 11
#define IRQ_IOP331_RSVD_44  IOP331_IRQ(44)  // 12
#define IRQ_IOP331_RSVD_45  IOP331_IRQ(45)  // 13
#define IRQ_IOP331_RSVD_46  IOP331_IRQ(46)  // 14
#define IRQ_IOP331_RSVD_47  IOP331_IRQ(47)  // 15
#define IRQ_IOP331_RSVD_48  IOP331_IRQ(48)  // 16
#define IRQ_IOP331_RSVD_49  IOP331_IRQ(49)  // 17
#define IRQ_IOP331_RSVD_50  IOP331_IRQ(50)  // 18
#define IRQ_IOP331_UART0    IOP331_IRQ(51)  // 19
#define IRQ_IOP331_UART1    IOP331_IRQ(52)  // 20
#define IRQ_IOP331_PBIE     IOP331_IRQ(53)  // 21
#define IRQ_IOP331_ATU_CRW  IOP331_IRQ(54)  // 22
#define IRQ_IOP331_ATU_ERR	IOP331_IRQ(55)  // 23
#define IRQ_IOP331_MCU_ERR	IOP331_IRQ(56)  // 24
#define IRQ_IOP331_DMA0_ERR	IOP331_IRQ(57)  // 25
#define IRQ_IOP331_DMA1_ERR	IOP331_IRQ(58)  // 26
#define IRQ_IOP331_RSVD_59  IOP331_IRQ(59)  // 27
#define IRQ_IOP331_AA_ERR	IOP331_IRQ(60)  // 28
#define IRQ_IOP331_RSVD_61  IOP331_IRQ(61)  // 29
#define IRQ_IOP331_MSG_ERR	IOP331_IRQ(62)  // 30
#define IRQ_IOP331_HPI		IOP331_IRQ(63)  // 31

#define NR_IOP331_IRQS		(IOP331_IRQ(63) + 1)

#define NR_IRQS			NR_IOP331_IRQS


#if defined(CONFIG_ARCH_IQ80331)
/*
 * Interrupts available on the IQ80331 board
 */

/*
 * On board devices
 */
#define	IRQ_IQ80331_I82544	IRQ_IOP331_XINT0
#define IRQ_IQ80331_UART0	IRQ_IOP331_UART0
#define IRQ_IQ80331_UART1	IRQ_IOP331_UART1

/*
 * PCI interrupts
 */
#define	IRQ_IQ80331_INTA	IRQ_IOP331_XINT0
#define	IRQ_IQ80331_INTB	IRQ_IOP331_XINT1
#define	IRQ_IQ80331_INTC	IRQ_IOP331_XINT2
#define	IRQ_IQ80331_INTD	IRQ_IOP331_XINT3

#elif defined(CONFIG_MACH_IQ80332)
/*
 * Interrupts available on the IQ80332 board
 */

/*
 * On board devices
 */
#define	IRQ_IQ80332_I82544	IRQ_IOP331_XINT0
#define IRQ_IQ80332_UART0	IRQ_IOP331_UART0
#define IRQ_IQ80332_UART1	IRQ_IOP331_UART1

/*
 * PCI interrupts
 */
#define	IRQ_IQ80332_INTA	IRQ_IOP331_XINT0
#define	IRQ_IQ80332_INTB	IRQ_IOP331_XINT1
#define	IRQ_IQ80332_INTC	IRQ_IOP331_XINT2
#define	IRQ_IQ80332_INTD	IRQ_IOP331_XINT3

#endif

#endif // _IOP331_IRQ_H_