1 /* Coldfire C Header File
\r
2 * Copyright Freescale Semiconductor Inc
\r
3 * All rights reserved.
\r
5 * 2007/03/19 Revision: 0.9
\r
8 #ifndef __MCF5282_INTC_H__
\r
9 #define __MCF5282_INTC_H__
\r
12 /*********************************************************************
\r
14 * Interrupt Controller (INTC)
\r
16 *********************************************************************/
\r
18 /* Register read/write macros */
\r
19 #define MCF_INTC0_IPRH (*(vuint32*)(&__IPSBAR[0xC00]))
\r
20 #define MCF_INTC0_IPRL (*(vuint32*)(&__IPSBAR[0xC04]))
\r
21 #define MCF_INTC0_IMRH (*(vuint32*)(&__IPSBAR[0xC08]))
\r
22 #define MCF_INTC0_IMRL (*(vuint32*)(&__IPSBAR[0xC0C]))
\r
23 #define MCF_INTC0_INTFRCH (*(vuint32*)(&__IPSBAR[0xC10]))
\r
24 #define MCF_INTC0_INTFRCL (*(vuint32*)(&__IPSBAR[0xC14]))
\r
25 #define MCF_INTC0_IRLR (*(vuint8 *)(&__IPSBAR[0xC18]))
\r
26 #define MCF_INTC0_IACKLPR (*(vuint8 *)(&__IPSBAR[0xC19]))
\r
27 #define MCF_INTC0_ICR01 (*(vuint8 *)(&__IPSBAR[0xC41]))
\r
28 #define MCF_INTC0_ICR02 (*(vuint8 *)(&__IPSBAR[0xC42]))
\r
29 #define MCF_INTC0_ICR03 (*(vuint8 *)(&__IPSBAR[0xC43]))
\r
30 #define MCF_INTC0_ICR04 (*(vuint8 *)(&__IPSBAR[0xC44]))
\r
31 #define MCF_INTC0_ICR05 (*(vuint8 *)(&__IPSBAR[0xC45]))
\r
32 #define MCF_INTC0_ICR06 (*(vuint8 *)(&__IPSBAR[0xC46]))
\r
33 #define MCF_INTC0_ICR07 (*(vuint8 *)(&__IPSBAR[0xC47]))
\r
34 #define MCF_INTC0_ICR08 (*(vuint8 *)(&__IPSBAR[0xC48]))
\r
35 #define MCF_INTC0_ICR09 (*(vuint8 *)(&__IPSBAR[0xC49]))
\r
36 #define MCF_INTC0_ICR10 (*(vuint8 *)(&__IPSBAR[0xC4A]))
\r
37 #define MCF_INTC0_ICR11 (*(vuint8 *)(&__IPSBAR[0xC4B]))
\r
38 #define MCF_INTC0_ICR12 (*(vuint8 *)(&__IPSBAR[0xC4C]))
\r
39 #define MCF_INTC0_ICR13 (*(vuint8 *)(&__IPSBAR[0xC4D]))
\r
40 #define MCF_INTC0_ICR14 (*(vuint8 *)(&__IPSBAR[0xC4E]))
\r
41 #define MCF_INTC0_ICR15 (*(vuint8 *)(&__IPSBAR[0xC4F]))
\r
42 #define MCF_INTC0_ICR16 (*(vuint8 *)(&__IPSBAR[0xC50]))
\r
43 #define MCF_INTC0_ICR17 (*(vuint8 *)(&__IPSBAR[0xC51]))
\r
44 #define MCF_INTC0_ICR18 (*(vuint8 *)(&__IPSBAR[0xC52]))
\r
45 #define MCF_INTC0_ICR19 (*(vuint8 *)(&__IPSBAR[0xC53]))
\r
46 #define MCF_INTC0_ICR20 (*(vuint8 *)(&__IPSBAR[0xC54]))
\r
47 #define MCF_INTC0_ICR21 (*(vuint8 *)(&__IPSBAR[0xC55]))
\r
48 #define MCF_INTC0_ICR22 (*(vuint8 *)(&__IPSBAR[0xC56]))
\r
49 #define MCF_INTC0_ICR23 (*(vuint8 *)(&__IPSBAR[0xC57]))
\r
50 #define MCF_INTC0_ICR24 (*(vuint8 *)(&__IPSBAR[0xC58]))
\r
51 #define MCF_INTC0_ICR25 (*(vuint8 *)(&__IPSBAR[0xC59]))
\r
52 #define MCF_INTC0_ICR26 (*(vuint8 *)(&__IPSBAR[0xC5A]))
\r
53 #define MCF_INTC0_ICR27 (*(vuint8 *)(&__IPSBAR[0xC5B]))
\r
54 #define MCF_INTC0_ICR28 (*(vuint8 *)(&__IPSBAR[0xC5C]))
\r
55 #define MCF_INTC0_ICR29 (*(vuint8 *)(&__IPSBAR[0xC5D]))
\r
56 #define MCF_INTC0_ICR30 (*(vuint8 *)(&__IPSBAR[0xC5E]))
\r
57 #define MCF_INTC0_ICR31 (*(vuint8 *)(&__IPSBAR[0xC5F]))
\r
58 #define MCF_INTC0_ICR32 (*(vuint8 *)(&__IPSBAR[0xC60]))
\r
59 #define MCF_INTC0_ICR33 (*(vuint8 *)(&__IPSBAR[0xC61]))
\r
60 #define MCF_INTC0_ICR34 (*(vuint8 *)(&__IPSBAR[0xC62]))
\r
61 #define MCF_INTC0_ICR35 (*(vuint8 *)(&__IPSBAR[0xC63]))
\r
62 #define MCF_INTC0_ICR36 (*(vuint8 *)(&__IPSBAR[0xC64]))
\r
63 #define MCF_INTC0_ICR37 (*(vuint8 *)(&__IPSBAR[0xC65]))
\r
64 #define MCF_INTC0_ICR38 (*(vuint8 *)(&__IPSBAR[0xC66]))
\r
65 #define MCF_INTC0_ICR39 (*(vuint8 *)(&__IPSBAR[0xC67]))
\r
66 #define MCF_INTC0_ICR40 (*(vuint8 *)(&__IPSBAR[0xC68]))
\r
67 #define MCF_INTC0_ICR41 (*(vuint8 *)(&__IPSBAR[0xC69]))
\r
68 #define MCF_INTC0_ICR42 (*(vuint8 *)(&__IPSBAR[0xC6A]))
\r
69 #define MCF_INTC0_ICR43 (*(vuint8 *)(&__IPSBAR[0xC6B]))
\r
70 #define MCF_INTC0_ICR44 (*(vuint8 *)(&__IPSBAR[0xC6C]))
\r
71 #define MCF_INTC0_ICR45 (*(vuint8 *)(&__IPSBAR[0xC6D]))
\r
72 #define MCF_INTC0_ICR46 (*(vuint8 *)(&__IPSBAR[0xC6E]))
\r
73 #define MCF_INTC0_ICR47 (*(vuint8 *)(&__IPSBAR[0xC6F]))
\r
74 #define MCF_INTC0_ICR48 (*(vuint8 *)(&__IPSBAR[0xC70]))
\r
75 #define MCF_INTC0_ICR49 (*(vuint8 *)(&__IPSBAR[0xC71]))
\r
76 #define MCF_INTC0_ICR50 (*(vuint8 *)(&__IPSBAR[0xC72]))
\r
77 #define MCF_INTC0_ICR51 (*(vuint8 *)(&__IPSBAR[0xC73]))
\r
78 #define MCF_INTC0_ICR52 (*(vuint8 *)(&__IPSBAR[0xC74]))
\r
79 #define MCF_INTC0_ICR53 (*(vuint8 *)(&__IPSBAR[0xC75]))
\r
80 #define MCF_INTC0_ICR54 (*(vuint8 *)(&__IPSBAR[0xC76]))
\r
81 #define MCF_INTC0_ICR55 (*(vuint8 *)(&__IPSBAR[0xC77]))
\r
82 #define MCF_INTC0_ICR56 (*(vuint8 *)(&__IPSBAR[0xC78]))
\r
83 #define MCF_INTC0_ICR57 (*(vuint8 *)(&__IPSBAR[0xC79]))
\r
84 #define MCF_INTC0_ICR58 (*(vuint8 *)(&__IPSBAR[0xC7A]))
\r
85 #define MCF_INTC0_ICR59 (*(vuint8 *)(&__IPSBAR[0xC7B]))
\r
86 #define MCF_INTC0_ICR60 (*(vuint8 *)(&__IPSBAR[0xC7C]))
\r
87 #define MCF_INTC0_ICR61 (*(vuint8 *)(&__IPSBAR[0xC7D]))
\r
88 #define MCF_INTC0_ICR62 (*(vuint8 *)(&__IPSBAR[0xC7E]))
\r
89 #define MCF_INTC0_ICR63 (*(vuint8 *)(&__IPSBAR[0xC7F]))
\r
90 #define MCF_INTC0_SWIACK (*(vuint8 *)(&__IPSBAR[0xCE0]))
\r
91 #define MCF_INTC0_L1IACK (*(vuint8 *)(&__IPSBAR[0xCE4]))
\r
92 #define MCF_INTC0_L2IACK (*(vuint8 *)(&__IPSBAR[0xCE8]))
\r
93 #define MCF_INTC0_L3IACK (*(vuint8 *)(&__IPSBAR[0xCEC]))
\r
94 #define MCF_INTC0_L4IACK (*(vuint8 *)(&__IPSBAR[0xCF0]))
\r
95 #define MCF_INTC0_L5IACK (*(vuint8 *)(&__IPSBAR[0xCF4]))
\r
96 #define MCF_INTC0_L6IACK (*(vuint8 *)(&__IPSBAR[0xCF8]))
\r
97 #define MCF_INTC0_L7IACK (*(vuint8 *)(&__IPSBAR[0xCFC]))
\r
98 #define MCF_INTC0_ICR(x) (*(vuint8 *)(&__IPSBAR[0xC41 + ((x-1)*0x1)]))
\r
99 #define MCF_INTC0_LIACK(x) (*(vuint8 *)(&__IPSBAR[0xCE4 + ((x-1)*0x4)]))
\r
101 #define MCF_INTC1_IPRH (*(vuint32*)(&__IPSBAR[0xD00]))
\r
102 #define MCF_INTC1_IPRL (*(vuint32*)(&__IPSBAR[0xD04]))
\r
103 #define MCF_INTC1_IMRH (*(vuint32*)(&__IPSBAR[0xD08]))
\r
104 #define MCF_INTC1_IMRL (*(vuint32*)(&__IPSBAR[0xD0C]))
\r
105 #define MCF_INTC1_INTFRCH (*(vuint32*)(&__IPSBAR[0xD10]))
\r
106 #define MCF_INTC1_INTFRCL (*(vuint32*)(&__IPSBAR[0xD14]))
\r
107 #define MCF_INTC1_IRLR (*(vuint8 *)(&__IPSBAR[0xD18]))
\r
108 #define MCF_INTC1_IACKLPR (*(vuint8 *)(&__IPSBAR[0xD19]))
\r
109 #define MCF_INTC1_ICR01 (*(vuint8 *)(&__IPSBAR[0xD41]))
\r
110 #define MCF_INTC1_ICR02 (*(vuint8 *)(&__IPSBAR[0xD42]))
\r
111 #define MCF_INTC1_ICR03 (*(vuint8 *)(&__IPSBAR[0xD43]))
\r
112 #define MCF_INTC1_ICR04 (*(vuint8 *)(&__IPSBAR[0xD44]))
\r
113 #define MCF_INTC1_ICR05 (*(vuint8 *)(&__IPSBAR[0xD45]))
\r
114 #define MCF_INTC1_ICR06 (*(vuint8 *)(&__IPSBAR[0xD46]))
\r
115 #define MCF_INTC1_ICR07 (*(vuint8 *)(&__IPSBAR[0xD47]))
\r
116 #define MCF_INTC1_ICR08 (*(vuint8 *)(&__IPSBAR[0xD48]))
\r
117 #define MCF_INTC1_ICR09 (*(vuint8 *)(&__IPSBAR[0xD49]))
\r
118 #define MCF_INTC1_ICR10 (*(vuint8 *)(&__IPSBAR[0xD4A]))
\r
119 #define MCF_INTC1_ICR11 (*(vuint8 *)(&__IPSBAR[0xD4B]))
\r
120 #define MCF_INTC1_ICR12 (*(vuint8 *)(&__IPSBAR[0xD4C]))
\r
121 #define MCF_INTC1_ICR13 (*(vuint8 *)(&__IPSBAR[0xD4D]))
\r
122 #define MCF_INTC1_ICR14 (*(vuint8 *)(&__IPSBAR[0xD4E]))
\r
123 #define MCF_INTC1_ICR15 (*(vuint8 *)(&__IPSBAR[0xD4F]))
\r
124 #define MCF_INTC1_ICR16 (*(vuint8 *)(&__IPSBAR[0xD50]))
\r
125 #define MCF_INTC1_ICR17 (*(vuint8 *)(&__IPSBAR[0xD51]))
\r
126 #define MCF_INTC1_ICR18 (*(vuint8 *)(&__IPSBAR[0xD52]))
\r
127 #define MCF_INTC1_ICR19 (*(vuint8 *)(&__IPSBAR[0xD53]))
\r
128 #define MCF_INTC1_ICR20 (*(vuint8 *)(&__IPSBAR[0xD54]))
\r
129 #define MCF_INTC1_ICR21 (*(vuint8 *)(&__IPSBAR[0xD55]))
\r
130 #define MCF_INTC1_ICR22 (*(vuint8 *)(&__IPSBAR[0xD56]))
\r
131 #define MCF_INTC1_ICR23 (*(vuint8 *)(&__IPSBAR[0xD57]))
\r
132 #define MCF_INTC1_ICR24 (*(vuint8 *)(&__IPSBAR[0xD58]))
\r
133 #define MCF_INTC1_ICR25 (*(vuint8 *)(&__IPSBAR[0xD59]))
\r
134 #define MCF_INTC1_ICR26 (*(vuint8 *)(&__IPSBAR[0xD5A]))
\r
135 #define MCF_INTC1_ICR27 (*(vuint8 *)(&__IPSBAR[0xD5B]))
\r
136 #define MCF_INTC1_ICR28 (*(vuint8 *)(&__IPSBAR[0xD5C]))
\r
137 #define MCF_INTC1_ICR29 (*(vuint8 *)(&__IPSBAR[0xD5D]))
\r
138 #define MCF_INTC1_ICR30 (*(vuint8 *)(&__IPSBAR[0xD5E]))
\r
139 #define MCF_INTC1_ICR31 (*(vuint8 *)(&__IPSBAR[0xD5F]))
\r
140 #define MCF_INTC1_ICR32 (*(vuint8 *)(&__IPSBAR[0xD60]))
\r
141 #define MCF_INTC1_ICR33 (*(vuint8 *)(&__IPSBAR[0xD61]))
\r
142 #define MCF_INTC1_ICR34 (*(vuint8 *)(&__IPSBAR[0xD62]))
\r
143 #define MCF_INTC1_ICR35 (*(vuint8 *)(&__IPSBAR[0xD63]))
\r
144 #define MCF_INTC1_ICR36 (*(vuint8 *)(&__IPSBAR[0xD64]))
\r
145 #define MCF_INTC1_ICR37 (*(vuint8 *)(&__IPSBAR[0xD65]))
\r
146 #define MCF_INTC1_ICR38 (*(vuint8 *)(&__IPSBAR[0xD66]))
\r
147 #define MCF_INTC1_ICR39 (*(vuint8 *)(&__IPSBAR[0xD67]))
\r
148 #define MCF_INTC1_ICR40 (*(vuint8 *)(&__IPSBAR[0xD68]))
\r
149 #define MCF_INTC1_ICR41 (*(vuint8 *)(&__IPSBAR[0xD69]))
\r
150 #define MCF_INTC1_ICR42 (*(vuint8 *)(&__IPSBAR[0xD6A]))
\r
151 #define MCF_INTC1_ICR43 (*(vuint8 *)(&__IPSBAR[0xD6B]))
\r
152 #define MCF_INTC1_ICR44 (*(vuint8 *)(&__IPSBAR[0xD6C]))
\r
153 #define MCF_INTC1_ICR45 (*(vuint8 *)(&__IPSBAR[0xD6D]))
\r
154 #define MCF_INTC1_ICR46 (*(vuint8 *)(&__IPSBAR[0xD6E]))
\r
155 #define MCF_INTC1_ICR47 (*(vuint8 *)(&__IPSBAR[0xD6F]))
\r
156 #define MCF_INTC1_ICR48 (*(vuint8 *)(&__IPSBAR[0xD70]))
\r
157 #define MCF_INTC1_ICR49 (*(vuint8 *)(&__IPSBAR[0xD71]))
\r
158 #define MCF_INTC1_ICR50 (*(vuint8 *)(&__IPSBAR[0xD72]))
\r
159 #define MCF_INTC1_ICR51 (*(vuint8 *)(&__IPSBAR[0xD73]))
\r
160 #define MCF_INTC1_ICR52 (*(vuint8 *)(&__IPSBAR[0xD74]))
\r
161 #define MCF_INTC1_ICR53 (*(vuint8 *)(&__IPSBAR[0xD75]))
\r
162 #define MCF_INTC1_ICR54 (*(vuint8 *)(&__IPSBAR[0xD76]))
\r
163 #define MCF_INTC1_ICR55 (*(vuint8 *)(&__IPSBAR[0xD77]))
\r
164 #define MCF_INTC1_ICR56 (*(vuint8 *)(&__IPSBAR[0xD78]))
\r
165 #define MCF_INTC1_ICR57 (*(vuint8 *)(&__IPSBAR[0xD79]))
\r
166 #define MCF_INTC1_ICR58 (*(vuint8 *)(&__IPSBAR[0xD7A]))
\r
167 #define MCF_INTC1_ICR59 (*(vuint8 *)(&__IPSBAR[0xD7B]))
\r
168 #define MCF_INTC1_ICR60 (*(vuint8 *)(&__IPSBAR[0xD7C]))
\r
169 #define MCF_INTC1_ICR61 (*(vuint8 *)(&__IPSBAR[0xD7D]))
\r
170 #define MCF_INTC1_ICR62 (*(vuint8 *)(&__IPSBAR[0xD7E]))
\r
171 #define MCF_INTC1_ICR63 (*(vuint8 *)(&__IPSBAR[0xD7F]))
\r
172 #define MCF_INTC1_SWIACK (*(vuint8 *)(&__IPSBAR[0xDE0]))
\r
173 #define MCF_INTC1_L1IACK (*(vuint8 *)(&__IPSBAR[0xDE4]))
\r
174 #define MCF_INTC1_L2IACK (*(vuint8 *)(&__IPSBAR[0xDE8]))
\r
175 #define MCF_INTC1_L3IACK (*(vuint8 *)(&__IPSBAR[0xDEC]))
\r
176 #define MCF_INTC1_L4IACK (*(vuint8 *)(&__IPSBAR[0xDF0]))
\r
177 #define MCF_INTC1_L5IACK (*(vuint8 *)(&__IPSBAR[0xDF4]))
\r
178 #define MCF_INTC1_L6IACK (*(vuint8 *)(&__IPSBAR[0xDF8]))
\r
179 #define MCF_INTC1_L7IACK (*(vuint8 *)(&__IPSBAR[0xDFC]))
\r
180 #define MCF_INTC1_ICR(x) (*(vuint8 *)(&__IPSBAR[0xD41 + ((x-1)*0x1)]))
\r
181 #define MCF_INTC1_LIACK(x) (*(vuint8 *)(&__IPSBAR[0xDE4 + ((x-1)*0x4)]))
\r
183 #define MCF_INTC_IPRH(x) (*(vuint32*)(&__IPSBAR[0xC00 + ((x)*0x100)]))
\r
184 #define MCF_INTC_IPRL(x) (*(vuint32*)(&__IPSBAR[0xC04 + ((x)*0x100)]))
\r
185 #define MCF_INTC_IMRH(x) (*(vuint32*)(&__IPSBAR[0xC08 + ((x)*0x100)]))
\r
186 #define MCF_INTC_IMRL(x) (*(vuint32*)(&__IPSBAR[0xC0C + ((x)*0x100)]))
\r
187 #define MCF_INTC_INTFRCH(x) (*(vuint32*)(&__IPSBAR[0xC10 + ((x)*0x100)]))
\r
188 #define MCF_INTC_INTFRCL(x) (*(vuint32*)(&__IPSBAR[0xC14 + ((x)*0x100)]))
\r
189 #define MCF_INTC_IRLR(x) (*(vuint8 *)(&__IPSBAR[0xC18 + ((x)*0x100)]))
\r
190 #define MCF_INTC_IACKLPR(x) (*(vuint8 *)(&__IPSBAR[0xC19 + ((x)*0x100)]))
\r
191 #define MCF_INTC_ICR01(x) (*(vuint8 *)(&__IPSBAR[0xC41 + ((x)*0x100)]))
\r
192 #define MCF_INTC_ICR02(x) (*(vuint8 *)(&__IPSBAR[0xC42 + ((x)*0x100)]))
\r
193 #define MCF_INTC_ICR03(x) (*(vuint8 *)(&__IPSBAR[0xC43 + ((x)*0x100)]))
\r
194 #define MCF_INTC_ICR04(x) (*(vuint8 *)(&__IPSBAR[0xC44 + ((x)*0x100)]))
\r
195 #define MCF_INTC_ICR05(x) (*(vuint8 *)(&__IPSBAR[0xC45 + ((x)*0x100)]))
\r
196 #define MCF_INTC_ICR06(x) (*(vuint8 *)(&__IPSBAR[0xC46 + ((x)*0x100)]))
\r
197 #define MCF_INTC_ICR07(x) (*(vuint8 *)(&__IPSBAR[0xC47 + ((x)*0x100)]))
\r
198 #define MCF_INTC_ICR08(x) (*(vuint8 *)(&__IPSBAR[0xC48 + ((x)*0x100)]))
\r
199 #define MCF_INTC_ICR09(x) (*(vuint8 *)(&__IPSBAR[0xC49 + ((x)*0x100)]))
\r
200 #define MCF_INTC_ICR10(x) (*(vuint8 *)(&__IPSBAR[0xC4A + ((x)*0x100)]))
\r
201 #define MCF_INTC_ICR11(x) (*(vuint8 *)(&__IPSBAR[0xC4B + ((x)*0x100)]))
\r
202 #define MCF_INTC_ICR12(x) (*(vuint8 *)(&__IPSBAR[0xC4C + ((x)*0x100)]))
\r
203 #define MCF_INTC_ICR13(x) (*(vuint8 *)(&__IPSBAR[0xC4D + ((x)*0x100)]))
\r
204 #define MCF_INTC_ICR14(x) (*(vuint8 *)(&__IPSBAR[0xC4E + ((x)*0x100)]))
\r
205 #define MCF_INTC_ICR15(x) (*(vuint8 *)(&__IPSBAR[0xC4F + ((x)*0x100)]))
\r
206 #define MCF_INTC_ICR16(x) (*(vuint8 *)(&__IPSBAR[0xC50 + ((x)*0x100)]))
\r
207 #define MCF_INTC_ICR17(x) (*(vuint8 *)(&__IPSBAR[0xC51 + ((x)*0x100)]))
\r
208 #define MCF_INTC_ICR18(x) (*(vuint8 *)(&__IPSBAR[0xC52 + ((x)*0x100)]))
\r
209 #define MCF_INTC_ICR19(x) (*(vuint8 *)(&__IPSBAR[0xC53 + ((x)*0x100)]))
\r
210 #define MCF_INTC_ICR20(x) (*(vuint8 *)(&__IPSBAR[0xC54 + ((x)*0x100)]))
\r
211 #define MCF_INTC_ICR21(x) (*(vuint8 *)(&__IPSBAR[0xC55 + ((x)*0x100)]))
\r
212 #define MCF_INTC_ICR22(x) (*(vuint8 *)(&__IPSBAR[0xC56 + ((x)*0x100)]))
\r
213 #define MCF_INTC_ICR23(x) (*(vuint8 *)(&__IPSBAR[0xC57 + ((x)*0x100)]))
\r
214 #define MCF_INTC_ICR24(x) (*(vuint8 *)(&__IPSBAR[0xC58 + ((x)*0x100)]))
\r
215 #define MCF_INTC_ICR25(x) (*(vuint8 *)(&__IPSBAR[0xC59 + ((x)*0x100)]))
\r
216 #define MCF_INTC_ICR26(x) (*(vuint8 *)(&__IPSBAR[0xC5A + ((x)*0x100)]))
\r
217 #define MCF_INTC_ICR27(x) (*(vuint8 *)(&__IPSBAR[0xC5B + ((x)*0x100)]))
\r
218 #define MCF_INTC_ICR28(x) (*(vuint8 *)(&__IPSBAR[0xC5C + ((x)*0x100)]))
\r
219 #define MCF_INTC_ICR29(x) (*(vuint8 *)(&__IPSBAR[0xC5D + ((x)*0x100)]))
\r
220 #define MCF_INTC_ICR30(x) (*(vuint8 *)(&__IPSBAR[0xC5E + ((x)*0x100)]))
\r
221 #define MCF_INTC_ICR31(x) (*(vuint8 *)(&__IPSBAR[0xC5F + ((x)*0x100)]))
\r
222 #define MCF_INTC_ICR32(x) (*(vuint8 *)(&__IPSBAR[0xC60 + ((x)*0x100)]))
\r
223 #define MCF_INTC_ICR33(x) (*(vuint8 *)(&__IPSBAR[0xC61 + ((x)*0x100)]))
\r
224 #define MCF_INTC_ICR34(x) (*(vuint8 *)(&__IPSBAR[0xC62 + ((x)*0x100)]))
\r
225 #define MCF_INTC_ICR35(x) (*(vuint8 *)(&__IPSBAR[0xC63 + ((x)*0x100)]))
\r
226 #define MCF_INTC_ICR36(x) (*(vuint8 *)(&__IPSBAR[0xC64 + ((x)*0x100)]))
\r
227 #define MCF_INTC_ICR37(x) (*(vuint8 *)(&__IPSBAR[0xC65 + ((x)*0x100)]))
\r
228 #define MCF_INTC_ICR38(x) (*(vuint8 *)(&__IPSBAR[0xC66 + ((x)*0x100)]))
\r
229 #define MCF_INTC_ICR39(x) (*(vuint8 *)(&__IPSBAR[0xC67 + ((x)*0x100)]))
\r
230 #define MCF_INTC_ICR40(x) (*(vuint8 *)(&__IPSBAR[0xC68 + ((x)*0x100)]))
\r
231 #define MCF_INTC_ICR41(x) (*(vuint8 *)(&__IPSBAR[0xC69 + ((x)*0x100)]))
\r
232 #define MCF_INTC_ICR42(x) (*(vuint8 *)(&__IPSBAR[0xC6A + ((x)*0x100)]))
\r
233 #define MCF_INTC_ICR43(x) (*(vuint8 *)(&__IPSBAR[0xC6B + ((x)*0x100)]))
\r
234 #define MCF_INTC_ICR44(x) (*(vuint8 *)(&__IPSBAR[0xC6C + ((x)*0x100)]))
\r
235 #define MCF_INTC_ICR45(x) (*(vuint8 *)(&__IPSBAR[0xC6D + ((x)*0x100)]))
\r
236 #define MCF_INTC_ICR46(x) (*(vuint8 *)(&__IPSBAR[0xC6E + ((x)*0x100)]))
\r
237 #define MCF_INTC_ICR47(x) (*(vuint8 *)(&__IPSBAR[0xC6F + ((x)*0x100)]))
\r
238 #define MCF_INTC_ICR48(x) (*(vuint8 *)(&__IPSBAR[0xC70 + ((x)*0x100)]))
\r
239 #define MCF_INTC_ICR49(x) (*(vuint8 *)(&__IPSBAR[0xC71 + ((x)*0x100)]))
\r
240 #define MCF_INTC_ICR50(x) (*(vuint8 *)(&__IPSBAR[0xC72 + ((x)*0x100)]))
\r
241 #define MCF_INTC_ICR51(x) (*(vuint8 *)(&__IPSBAR[0xC73 + ((x)*0x100)]))
\r
242 #define MCF_INTC_ICR52(x) (*(vuint8 *)(&__IPSBAR[0xC74 + ((x)*0x100)]))
\r
243 #define MCF_INTC_ICR53(x) (*(vuint8 *)(&__IPSBAR[0xC75 + ((x)*0x100)]))
\r
244 #define MCF_INTC_ICR54(x) (*(vuint8 *)(&__IPSBAR[0xC76 + ((x)*0x100)]))
\r
245 #define MCF_INTC_ICR55(x) (*(vuint8 *)(&__IPSBAR[0xC77 + ((x)*0x100)]))
\r
246 #define MCF_INTC_ICR56(x) (*(vuint8 *)(&__IPSBAR[0xC78 + ((x)*0x100)]))
\r
247 #define MCF_INTC_ICR57(x) (*(vuint8 *)(&__IPSBAR[0xC79 + ((x)*0x100)]))
\r
248 #define MCF_INTC_ICR58(x) (*(vuint8 *)(&__IPSBAR[0xC7A + ((x)*0x100)]))
\r
249 #define MCF_INTC_ICR59(x) (*(vuint8 *)(&__IPSBAR[0xC7B + ((x)*0x100)]))
\r
250 #define MCF_INTC_ICR60(x) (*(vuint8 *)(&__IPSBAR[0xC7C + ((x)*0x100)]))
\r
251 #define MCF_INTC_ICR61(x) (*(vuint8 *)(&__IPSBAR[0xC7D + ((x)*0x100)]))
\r
252 #define MCF_INTC_ICR62(x) (*(vuint8 *)(&__IPSBAR[0xC7E + ((x)*0x100)]))
\r
253 #define MCF_INTC_ICR63(x) (*(vuint8 *)(&__IPSBAR[0xC7F + ((x)*0x100)]))
\r
254 #define MCF_INTC_SWIACK(x) (*(vuint8 *)(&__IPSBAR[0xCE0 + ((x)*0x100)]))
\r
255 #define MCF_INTC_L1IACK(x) (*(vuint8 *)(&__IPSBAR[0xCE4 + ((x)*0x100)]))
\r
256 #define MCF_INTC_L2IACK(x) (*(vuint8 *)(&__IPSBAR[0xCE8 + ((x)*0x100)]))
\r
257 #define MCF_INTC_L3IACK(x) (*(vuint8 *)(&__IPSBAR[0xCEC + ((x)*0x100)]))
\r
258 #define MCF_INTC_L4IACK(x) (*(vuint8 *)(&__IPSBAR[0xCF0 + ((x)*0x100)]))
\r
259 #define MCF_INTC_L5IACK(x) (*(vuint8 *)(&__IPSBAR[0xCF4 + ((x)*0x100)]))
\r
260 #define MCF_INTC_L6IACK(x) (*(vuint8 *)(&__IPSBAR[0xCF8 + ((x)*0x100)]))
\r
261 #define MCF_INTC_L7IACK(x) (*(vuint8 *)(&__IPSBAR[0xCFC + ((x)*0x100)]))
\r
264 /* Bit definitions and macros for MCF_INTC_IPRH */
\r
265 #define MCF_INTC_IPRH_INT32 (0x1)
\r
266 #define MCF_INTC_IPRH_INT33 (0x2)
\r
267 #define MCF_INTC_IPRH_INT34 (0x4)
\r
268 #define MCF_INTC_IPRH_INT35 (0x8)
\r
269 #define MCF_INTC_IPRH_INT36 (0x10)
\r
270 #define MCF_INTC_IPRH_INT37 (0x20)
\r
271 #define MCF_INTC_IPRH_INT38 (0x40)
\r
272 #define MCF_INTC_IPRH_INT39 (0x80)
\r
273 #define MCF_INTC_IPRH_INT40 (0x100)
\r
274 #define MCF_INTC_IPRH_INT41 (0x200)
\r
275 #define MCF_INTC_IPRH_INT42 (0x400)
\r
276 #define MCF_INTC_IPRH_INT43 (0x800)
\r
277 #define MCF_INTC_IPRH_INT44 (0x1000)
\r
278 #define MCF_INTC_IPRH_INT45 (0x2000)
\r
279 #define MCF_INTC_IPRH_INT46 (0x4000)
\r
280 #define MCF_INTC_IPRH_INT47 (0x8000)
\r
281 #define MCF_INTC_IPRH_INT48 (0x10000)
\r
282 #define MCF_INTC_IPRH_INT49 (0x20000)
\r
283 #define MCF_INTC_IPRH_INT50 (0x40000)
\r
284 #define MCF_INTC_IPRH_INT51 (0x80000)
\r
285 #define MCF_INTC_IPRH_INT52 (0x100000)
\r
286 #define MCF_INTC_IPRH_INT53 (0x200000)
\r
287 #define MCF_INTC_IPRH_INT54 (0x400000)
\r
288 #define MCF_INTC_IPRH_INT55 (0x800000)
\r
289 #define MCF_INTC_IPRH_INT56 (0x1000000)
\r
290 #define MCF_INTC_IPRH_INT57 (0x2000000)
\r
291 #define MCF_INTC_IPRH_INT58 (0x4000000)
\r
292 #define MCF_INTC_IPRH_INT59 (0x8000000)
\r
293 #define MCF_INTC_IPRH_INT60 (0x10000000)
\r
294 #define MCF_INTC_IPRH_INT61 (0x20000000)
\r
295 #define MCF_INTC_IPRH_INT62 (0x40000000)
\r
296 #define MCF_INTC_IPRH_INT63 (0x80000000)
\r
298 /* Bit definitions and macros for MCF_INTC_IPRL */
\r
299 #define MCF_INTC_IPRL_INT1 (0x2)
\r
300 #define MCF_INTC_IPRL_INT2 (0x4)
\r
301 #define MCF_INTC_IPRL_INT3 (0x8)
\r
302 #define MCF_INTC_IPRL_INT4 (0x10)
\r
303 #define MCF_INTC_IPRL_INT5 (0x20)
\r
304 #define MCF_INTC_IPRL_INT6 (0x40)
\r
305 #define MCF_INTC_IPRL_INT7 (0x80)
\r
306 #define MCF_INTC_IPRL_INT8 (0x100)
\r
307 #define MCF_INTC_IPRL_INT9 (0x200)
\r
308 #define MCF_INTC_IPRL_INT10 (0x400)
\r
309 #define MCF_INTC_IPRL_INT11 (0x800)
\r
310 #define MCF_INTC_IPRL_INT12 (0x1000)
\r
311 #define MCF_INTC_IPRL_INT13 (0x2000)
\r
312 #define MCF_INTC_IPRL_INT14 (0x4000)
\r
313 #define MCF_INTC_IPRL_INT15 (0x8000)
\r
314 #define MCF_INTC_IPRL_INT16 (0x10000)
\r
315 #define MCF_INTC_IPRL_INT17 (0x20000)
\r
316 #define MCF_INTC_IPRL_INT18 (0x40000)
\r
317 #define MCF_INTC_IPRL_INT19 (0x80000)
\r
318 #define MCF_INTC_IPRL_INT20 (0x100000)
\r
319 #define MCF_INTC_IPRL_INT21 (0x200000)
\r
320 #define MCF_INTC_IPRL_INT22 (0x400000)
\r
321 #define MCF_INTC_IPRL_INT23 (0x800000)
\r
322 #define MCF_INTC_IPRL_INT24 (0x1000000)
\r
323 #define MCF_INTC_IPRL_INT25 (0x2000000)
\r
324 #define MCF_INTC_IPRL_INT26 (0x4000000)
\r
325 #define MCF_INTC_IPRL_INT27 (0x8000000)
\r
326 #define MCF_INTC_IPRL_INT28 (0x10000000)
\r
327 #define MCF_INTC_IPRL_INT29 (0x20000000)
\r
328 #define MCF_INTC_IPRL_INT30 (0x40000000)
\r
329 #define MCF_INTC_IPRL_INT31 (0x80000000)
\r
331 /* Bit definitions and macros for MCF_INTC_IMRH */
\r
332 #define MCF_INTC_IMRH_INT_MASK32 (0x1)
\r
333 #define MCF_INTC_IMRH_INT_MASK33 (0x2)
\r
334 #define MCF_INTC_IMRH_INT_MASK34 (0x4)
\r
335 #define MCF_INTC_IMRH_INT_MASK35 (0x8)
\r
336 #define MCF_INTC_IMRH_INT_MASK36 (0x10)
\r
337 #define MCF_INTC_IMRH_INT_MASK37 (0x20)
\r
338 #define MCF_INTC_IMRH_INT_MASK38 (0x40)
\r
339 #define MCF_INTC_IMRH_INT_MASK39 (0x80)
\r
340 #define MCF_INTC_IMRH_INT_MASK40 (0x100)
\r
341 #define MCF_INTC_IMRH_INT_MASK41 (0x200)
\r
342 #define MCF_INTC_IMRH_INT_MASK42 (0x400)
\r
343 #define MCF_INTC_IMRH_INT_MASK43 (0x800)
\r
344 #define MCF_INTC_IMRH_INT_MASK44 (0x1000)
\r
345 #define MCF_INTC_IMRH_INT_MASK45 (0x2000)
\r
346 #define MCF_INTC_IMRH_INT_MASK46 (0x4000)
\r
347 #define MCF_INTC_IMRH_INT_MASK47 (0x8000)
\r
348 #define MCF_INTC_IMRH_INT_MASK48 (0x10000)
\r
349 #define MCF_INTC_IMRH_INT_MASK49 (0x20000)
\r
350 #define MCF_INTC_IMRH_INT_MASK50 (0x40000)
\r
351 #define MCF_INTC_IMRH_INT_MASK51 (0x80000)
\r
352 #define MCF_INTC_IMRH_INT_MASK52 (0x100000)
\r
353 #define MCF_INTC_IMRH_INT_MASK53 (0x200000)
\r
354 #define MCF_INTC_IMRH_INT_MASK54 (0x400000)
\r
355 #define MCF_INTC_IMRH_INT_MASK55 (0x800000)
\r
356 #define MCF_INTC_IMRH_INT_MASK56 (0x1000000)
\r
357 #define MCF_INTC_IMRH_INT_MASK57 (0x2000000)
\r
358 #define MCF_INTC_IMRH_INT_MASK58 (0x4000000)
\r
359 #define MCF_INTC_IMRH_INT_MASK59 (0x8000000)
\r
360 #define MCF_INTC_IMRH_INT_MASK60 (0x10000000)
\r
361 #define MCF_INTC_IMRH_INT_MASK61 (0x20000000)
\r
362 #define MCF_INTC_IMRH_INT_MASK62 (0x40000000)
\r
363 #define MCF_INTC_IMRH_INT_MASK63 (0x80000000)
\r
365 /* Bit definitions and macros for MCF_INTC_IMRL */
\r
366 #define MCF_INTC_IMRL_MASKALL (0x1)
\r
367 #define MCF_INTC_IMRL_INT_MASK1 (0x2)
\r
368 #define MCF_INTC_IMRL_INT_MASK2 (0x4)
\r
369 #define MCF_INTC_IMRL_INT_MASK3 (0x8)
\r
370 #define MCF_INTC_IMRL_INT_MASK4 (0x10)
\r
371 #define MCF_INTC_IMRL_INT_MASK5 (0x20)
\r
372 #define MCF_INTC_IMRL_INT_MASK6 (0x40)
\r
373 #define MCF_INTC_IMRL_INT_MASK7 (0x80)
\r
374 #define MCF_INTC_IMRL_INT_MASK8 (0x100)
\r
375 #define MCF_INTC_IMRL_INT_MASK9 (0x200)
\r
376 #define MCF_INTC_IMRL_INT_MASK10 (0x400)
\r
377 #define MCF_INTC_IMRL_INT_MASK11 (0x800)
\r
378 #define MCF_INTC_IMRL_INT_MASK12 (0x1000)
\r
379 #define MCF_INTC_IMRL_INT_MASK13 (0x2000)
\r
380 #define MCF_INTC_IMRL_INT_MASK14 (0x4000)
\r
381 #define MCF_INTC_IMRL_INT_MASK15 (0x8000)
\r
382 #define MCF_INTC_IMRL_INT_MASK16 (0x10000)
\r
383 #define MCF_INTC_IMRL_INT_MASK17 (0x20000)
\r
384 #define MCF_INTC_IMRL_INT_MASK18 (0x40000)
\r
385 #define MCF_INTC_IMRL_INT_MASK19 (0x80000)
\r
386 #define MCF_INTC_IMRL_INT_MASK20 (0x100000)
\r
387 #define MCF_INTC_IMRL_INT_MASK21 (0x200000)
\r
388 #define MCF_INTC_IMRL_INT_MASK22 (0x400000)
\r
389 #define MCF_INTC_IMRL_INT_MASK23 (0x800000)
\r
390 #define MCF_INTC_IMRL_INT_MASK24 (0x1000000)
\r
391 #define MCF_INTC_IMRL_INT_MASK25 (0x2000000)
\r
392 #define MCF_INTC_IMRL_INT_MASK26 (0x4000000)
\r
393 #define MCF_INTC_IMRL_INT_MASK27 (0x8000000)
\r
394 #define MCF_INTC_IMRL_INT_MASK28 (0x10000000)
\r
395 #define MCF_INTC_IMRL_INT_MASK29 (0x20000000)
\r
396 #define MCF_INTC_IMRL_INT_MASK30 (0x40000000)
\r
397 #define MCF_INTC_IMRL_INT_MASK31 (0x80000000)
\r
399 /* Bit definitions and macros for MCF_INTC_INTFRCH */
\r
400 #define MCF_INTC_INTFRCH_INTFRC32 (0x1)
\r
401 #define MCF_INTC_INTFRCH_INTFRC33 (0x2)
\r
402 #define MCF_INTC_INTFRCH_INTFRC34 (0x4)
\r
403 #define MCF_INTC_INTFRCH_INTFRC35 (0x8)
\r
404 #define MCF_INTC_INTFRCH_INTFRC36 (0x10)
\r
405 #define MCF_INTC_INTFRCH_INTFRC37 (0x20)
\r
406 #define MCF_INTC_INTFRCH_INTFRC38 (0x40)
\r
407 #define MCF_INTC_INTFRCH_INTFRC39 (0x80)
\r
408 #define MCF_INTC_INTFRCH_INTFRC40 (0x100)
\r
409 #define MCF_INTC_INTFRCH_INTFRC41 (0x200)
\r
410 #define MCF_INTC_INTFRCH_INTFRC42 (0x400)
\r
411 #define MCF_INTC_INTFRCH_INTFRC43 (0x800)
\r
412 #define MCF_INTC_INTFRCH_INTFRC44 (0x1000)
\r
413 #define MCF_INTC_INTFRCH_INTFRC45 (0x2000)
\r
414 #define MCF_INTC_INTFRCH_INTFRC46 (0x4000)
\r
415 #define MCF_INTC_INTFRCH_INTFRC47 (0x8000)
\r
416 #define MCF_INTC_INTFRCH_INTFRC48 (0x10000)
\r
417 #define MCF_INTC_INTFRCH_INTFRC49 (0x20000)
\r
418 #define MCF_INTC_INTFRCH_INTFRC50 (0x40000)
\r
419 #define MCF_INTC_INTFRCH_INTFRC51 (0x80000)
\r
420 #define MCF_INTC_INTFRCH_INTFRC52 (0x100000)
\r
421 #define MCF_INTC_INTFRCH_INTFRC53 (0x200000)
\r
422 #define MCF_INTC_INTFRCH_INTFRC54 (0x400000)
\r
423 #define MCF_INTC_INTFRCH_INTFRC55 (0x800000)
\r
424 #define MCF_INTC_INTFRCH_INTFRC56 (0x1000000)
\r
425 #define MCF_INTC_INTFRCH_INTFRC57 (0x2000000)
\r
426 #define MCF_INTC_INTFRCH_INTFRC58 (0x4000000)
\r
427 #define MCF_INTC_INTFRCH_INTFRC59 (0x8000000)
\r
428 #define MCF_INTC_INTFRCH_INTFRC60 (0x10000000)
\r
429 #define MCF_INTC_INTFRCH_INTFRC61 (0x20000000)
\r
430 #define MCF_INTC_INTFRCH_INTFRC62 (0x40000000)
\r
431 #define MCF_INTC_INTFRCH_INTFRC63 (0x80000000)
\r
433 /* Bit definitions and macros for MCF_INTC_INTFRCL */
\r
434 #define MCF_INTC_INTFRCL_INTFRC1 (0x2)
\r
435 #define MCF_INTC_INTFRCL_INTFRC2 (0x4)
\r
436 #define MCF_INTC_INTFRCL_INTFRC3 (0x8)
\r
437 #define MCF_INTC_INTFRCL_INTFRC4 (0x10)
\r
438 #define MCF_INTC_INTFRCL_INTFRC5 (0x20)
\r
439 #define MCF_INTC_INTFRCL_INTFRC6 (0x40)
\r
440 #define MCF_INTC_INTFRCL_INTFRC7 (0x80)
\r
441 #define MCF_INTC_INTFRCL_INTFRC8 (0x100)
\r
442 #define MCF_INTC_INTFRCL_INTFRC9 (0x200)
\r
443 #define MCF_INTC_INTFRCL_INTFRC10 (0x400)
\r
444 #define MCF_INTC_INTFRCL_INTFRC11 (0x800)
\r
445 #define MCF_INTC_INTFRCL_INTFRC12 (0x1000)
\r
446 #define MCF_INTC_INTFRCL_INTFRC13 (0x2000)
\r
447 #define MCF_INTC_INTFRCL_INTFRC14 (0x4000)
\r
448 #define MCF_INTC_INTFRCL_INTFRC15 (0x8000)
\r
449 #define MCF_INTC_INTFRCL_INTFRC16 (0x10000)
\r
450 #define MCF_INTC_INTFRCL_INTFRC17 (0x20000)
\r
451 #define MCF_INTC_INTFRCL_INTFRC18 (0x40000)
\r
452 #define MCF_INTC_INTFRCL_INTFRC19 (0x80000)
\r
453 #define MCF_INTC_INTFRCL_INTFRC20 (0x100000)
\r
454 #define MCF_INTC_INTFRCL_INTFRC21 (0x200000)
\r
455 #define MCF_INTC_INTFRCL_INTFRC22 (0x400000)
\r
456 #define MCF_INTC_INTFRCL_INTFRC23 (0x800000)
\r
457 #define MCF_INTC_INTFRCL_INTFRC24 (0x1000000)
\r
458 #define MCF_INTC_INTFRCL_INTFRC25 (0x2000000)
\r
459 #define MCF_INTC_INTFRCL_INTFRC26 (0x4000000)
\r
460 #define MCF_INTC_INTFRCL_INTFRC27 (0x8000000)
\r
461 #define MCF_INTC_INTFRCL_INTFRC28 (0x10000000)
\r
462 #define MCF_INTC_INTFRCL_INTFRC29 (0x20000000)
\r
463 #define MCF_INTC_INTFRCL_INTFRC30 (0x40000000)
\r
464 #define MCF_INTC_INTFRCL_INTFRC31 (0x80000000)
\r
466 /* Bit definitions and macros for MCF_INTC_IRLR */
\r
467 #define MCF_INTC_IRLR_IRQ(x) (((x)&0x7F)<<0x1)
\r
469 /* Bit definitions and macros for MCF_INTC_IACKLPR */
\r
470 #define MCF_INTC_IACKLPR_PRI(x) (((x)&0xF)<<0)
\r
471 #define MCF_INTC_IACKLPR_LEVEL(x) (((x)&0x7)<<0x4)
\r
473 /* Bit definitions and macros for MCF_INTC_ICR */
\r
474 #define MCF_INTC_ICR_IP(x) (((x)&0x7)<<0)
\r
475 #define MCF_INTC_ICR_IL(x) (((x)&0x7)<<0x3)
\r
477 /* Bit definitions and macros for MCF_INTC_SWIACK */
\r
478 #define MCF_INTC_SWIACK_VECTOR(x) (((x)&0xFF)<<0)
\r
480 /* Bit definitions and macros for MCF_INTC_LIACK */
\r
481 #define MCF_INTC_LIACK_VECTOR(x) (((x)&0xFF)<<0)
\r
484 #endif /* __MCF5282_INTC_H__ */
\r