Merge nommu branch
[linux-2.6] / include / asm-arm / arch-iop3xx / iop321-irqs.h
1 /*
2  * linux/include/asm-arm/arch-iop3xx/irqs.h
3  *
4  * Author:      Rory Bolt <rorybolt@pacbell.net>
5  * Copyright:   (C) 2002 Rory Bolt
6  *
7  * This program is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License version 2 as
9  * published by the Free Software Foundation.
10  *
11  */
12 #ifndef _IOP321_IRQS_H_
13 #define _IOP321_IRQS_H_
14
15 /*
16  * IOP80321 chipset interrupts
17  */
18 #define IOP321_IRQ_OFS          0
19 #define IOP321_IRQ(x)           (IOP321_IRQ_OFS + (x))
20
21 /*
22  * On IRQ or FIQ register
23  */
24 #define IRQ_IOP321_DMA0_EOT     IOP321_IRQ(0)
25 #define IRQ_IOP321_DMA0_EOC     IOP321_IRQ(1)
26 #define IRQ_IOP321_DMA1_EOT     IOP321_IRQ(2)
27 #define IRQ_IOP321_DMA1_EOC     IOP321_IRQ(3)
28 #define IRQ_IOP321_RSVD_4       IOP321_IRQ(4)
29 #define IRQ_IOP321_RSVD_5       IOP321_IRQ(5)
30 #define IRQ_IOP321_AA_EOT       IOP321_IRQ(6)
31 #define IRQ_IOP321_AA_EOC       IOP321_IRQ(7)
32 #define IRQ_IOP321_CORE_PMON    IOP321_IRQ(8)
33 #define IRQ_IOP321_TIMER0       IOP321_IRQ(9)
34 #define IRQ_IOP321_TIMER1       IOP321_IRQ(10)
35 #define IRQ_IOP321_I2C_0        IOP321_IRQ(11)
36 #define IRQ_IOP321_I2C_1        IOP321_IRQ(12)
37 #define IRQ_IOP321_MESSAGING    IOP321_IRQ(13)
38 #define IRQ_IOP321_ATU_BIST     IOP321_IRQ(14)
39 #define IRQ_IOP321_PERFMON      IOP321_IRQ(15)
40 #define IRQ_IOP321_CORE_PMU     IOP321_IRQ(16)
41 #define IRQ_IOP321_BIU_ERR      IOP321_IRQ(17)
42 #define IRQ_IOP321_ATU_ERR      IOP321_IRQ(18)
43 #define IRQ_IOP321_MCU_ERR      IOP321_IRQ(19)
44 #define IRQ_IOP321_DMA0_ERR     IOP321_IRQ(20)
45 #define IRQ_IOP321_DMA1_ERR     IOP321_IRQ(21)
46 #define IRQ_IOP321_RSVD_22      IOP321_IRQ(22)
47 #define IRQ_IOP321_AA_ERR       IOP321_IRQ(23)
48 #define IRQ_IOP321_MSG_ERR      IOP321_IRQ(24)
49 #define IRQ_IOP321_SSP          IOP321_IRQ(25)
50 #define IRQ_IOP321_RSVD_26      IOP321_IRQ(26)
51 #define IRQ_IOP321_XINT0        IOP321_IRQ(27)
52 #define IRQ_IOP321_XINT1        IOP321_IRQ(28)
53 #define IRQ_IOP321_XINT2        IOP321_IRQ(29)
54 #define IRQ_IOP321_XINT3        IOP321_IRQ(30)
55 #define IRQ_IOP321_HPI          IOP321_IRQ(31)
56
57 #define NR_IOP321_IRQS          (IOP321_IRQ(31) + 1)
58
59 #define NR_IRQS                 NR_IOP321_IRQS
60
61
62 /*
63  * Interrupts available on the IQ80321 board
64  */
65
66 /*
67  * On board devices
68  */
69 #define IRQ_IQ80321_I82544      IRQ_IOP321_XINT0
70 #define IRQ_IQ80321_UART        IRQ_IOP321_XINT1
71
72 /*
73  * PCI interrupts
74  */
75 #define IRQ_IQ80321_INTA        IRQ_IOP321_XINT0
76 #define IRQ_IQ80321_INTB        IRQ_IOP321_XINT1
77 #define IRQ_IQ80321_INTC        IRQ_IOP321_XINT2
78 #define IRQ_IQ80321_INTD        IRQ_IOP321_XINT3
79
80 /*
81  * Interrupts on the IQ31244 board
82  */
83
84 /*
85  * On board devices
86  */
87 #define IRQ_IQ31244_UART        IRQ_IOP321_XINT1
88 #define IRQ_IQ31244_I82546      IRQ_IOP321_XINT0
89 #define IRQ_IQ31244_SATA        IRQ_IOP321_XINT2
90 #define IRQ_IQ31244_PCIX_SLOT   IRQ_IOP321_XINT3
91
92 /*
93  * PCI interrupts
94  */
95 #define IRQ_IQ31244_INTA        IRQ_IOP321_XINT0
96 #define IRQ_IQ31244_INTB        IRQ_IOP321_XINT1
97 #define IRQ_IQ31244_INTC        IRQ_IOP321_XINT2
98 #define IRQ_IQ31244_INTD        IRQ_IOP321_XINT3
99
100 #endif // _IOP321_IRQ_H_