1 /* Coldfire C Header File
\r
2 * Copyright Freescale Semiconductor Inc
\r
3 * All rights reserved.
\r
5 * 2008/04/17 Revision: 0.2
\r
7 * (c) Copyright UNIS, spol. s r.o. 1997-2008
\r
12 * http : www.processorexpert.com
\r
13 * mail : info@processorexpert.com
\r
16 #ifndef __MCF52259_INTC_H__
\r
17 #define __MCF52259_INTC_H__
\r
20 /*********************************************************************
\r
22 * Interrupt Controller (INTC)
\r
24 *********************************************************************/
\r
26 /* Register read/write macros */
\r
27 #define MCF_INTC0_IPRH (*(vuint32*)(0x40000C00))
\r
28 #define MCF_INTC0_IPRL (*(vuint32*)(0x40000C04))
\r
29 #define MCF_INTC0_IMRH (*(vuint32*)(0x40000C08))
\r
30 #define MCF_INTC0_IMRL (*(vuint32*)(0x40000C0C))
\r
31 #define MCF_INTC0_INTFRCH (*(vuint32*)(0x40000C10))
\r
32 #define MCF_INTC0_INTFRCL (*(vuint32*)(0x40000C14))
\r
33 #define MCF_INTC0_IRLR (*(vuint8 *)(0x40000C18))
\r
34 #define MCF_INTC0_IACKLPR (*(vuint8 *)(0x40000C19))
\r
35 #define MCF_INTC0_ICR01 (*(vuint8 *)(0x40000C41))
\r
36 #define MCF_INTC0_ICR02 (*(vuint8 *)(0x40000C42))
\r
37 #define MCF_INTC0_ICR03 (*(vuint8 *)(0x40000C43))
\r
38 #define MCF_INTC0_ICR04 (*(vuint8 *)(0x40000C44))
\r
39 #define MCF_INTC0_ICR05 (*(vuint8 *)(0x40000C45))
\r
40 #define MCF_INTC0_ICR06 (*(vuint8 *)(0x40000C46))
\r
41 #define MCF_INTC0_ICR07 (*(vuint8 *)(0x40000C47))
\r
42 #define MCF_INTC0_ICR08 (*(vuint8 *)(0x40000C48))
\r
43 #define MCF_INTC0_ICR09 (*(vuint8 *)(0x40000C49))
\r
44 #define MCF_INTC0_ICR10 (*(vuint8 *)(0x40000C4A))
\r
45 #define MCF_INTC0_ICR11 (*(vuint8 *)(0x40000C4B))
\r
46 #define MCF_INTC0_ICR12 (*(vuint8 *)(0x40000C4C))
\r
47 #define MCF_INTC0_ICR13 (*(vuint8 *)(0x40000C4D))
\r
48 #define MCF_INTC0_ICR14 (*(vuint8 *)(0x40000C4E))
\r
49 #define MCF_INTC0_ICR15 (*(vuint8 *)(0x40000C4F))
\r
50 #define MCF_INTC0_ICR16 (*(vuint8 *)(0x40000C50))
\r
51 #define MCF_INTC0_ICR17 (*(vuint8 *)(0x40000C51))
\r
52 #define MCF_INTC0_ICR18 (*(vuint8 *)(0x40000C52))
\r
53 #define MCF_INTC0_ICR19 (*(vuint8 *)(0x40000C53))
\r
54 #define MCF_INTC0_ICR20 (*(vuint8 *)(0x40000C54))
\r
55 #define MCF_INTC0_ICR21 (*(vuint8 *)(0x40000C55))
\r
56 #define MCF_INTC0_ICR22 (*(vuint8 *)(0x40000C56))
\r
57 #define MCF_INTC0_ICR23 (*(vuint8 *)(0x40000C57))
\r
58 #define MCF_INTC0_ICR24 (*(vuint8 *)(0x40000C58))
\r
59 #define MCF_INTC0_ICR25 (*(vuint8 *)(0x40000C59))
\r
60 #define MCF_INTC0_ICR26 (*(vuint8 *)(0x40000C5A))
\r
61 #define MCF_INTC0_ICR27 (*(vuint8 *)(0x40000C5B))
\r
62 #define MCF_INTC0_ICR28 (*(vuint8 *)(0x40000C5C))
\r
63 #define MCF_INTC0_ICR29 (*(vuint8 *)(0x40000C5D))
\r
64 #define MCF_INTC0_ICR30 (*(vuint8 *)(0x40000C5E))
\r
65 #define MCF_INTC0_ICR31 (*(vuint8 *)(0x40000C5F))
\r
66 #define MCF_INTC0_ICR32 (*(vuint8 *)(0x40000C60))
\r
67 #define MCF_INTC0_ICR33 (*(vuint8 *)(0x40000C61))
\r
68 #define MCF_INTC0_ICR34 (*(vuint8 *)(0x40000C62))
\r
69 #define MCF_INTC0_ICR35 (*(vuint8 *)(0x40000C63))
\r
70 #define MCF_INTC0_ICR36 (*(vuint8 *)(0x40000C64))
\r
71 #define MCF_INTC0_ICR37 (*(vuint8 *)(0x40000C65))
\r
72 #define MCF_INTC0_ICR38 (*(vuint8 *)(0x40000C66))
\r
73 #define MCF_INTC0_ICR39 (*(vuint8 *)(0x40000C67))
\r
74 #define MCF_INTC0_ICR40 (*(vuint8 *)(0x40000C68))
\r
75 #define MCF_INTC0_ICR41 (*(vuint8 *)(0x40000C69))
\r
76 #define MCF_INTC0_ICR42 (*(vuint8 *)(0x40000C6A))
\r
77 #define MCF_INTC0_ICR43 (*(vuint8 *)(0x40000C6B))
\r
78 #define MCF_INTC0_ICR44 (*(vuint8 *)(0x40000C6C))
\r
79 #define MCF_INTC0_ICR45 (*(vuint8 *)(0x40000C6D))
\r
80 #define MCF_INTC0_ICR46 (*(vuint8 *)(0x40000C6E))
\r
81 #define MCF_INTC0_ICR47 (*(vuint8 *)(0x40000C6F))
\r
82 #define MCF_INTC0_ICR48 (*(vuint8 *)(0x40000C70))
\r
83 #define MCF_INTC0_ICR49 (*(vuint8 *)(0x40000C71))
\r
84 #define MCF_INTC0_ICR50 (*(vuint8 *)(0x40000C72))
\r
85 #define MCF_INTC0_ICR51 (*(vuint8 *)(0x40000C73))
\r
86 #define MCF_INTC0_ICR52 (*(vuint8 *)(0x40000C74))
\r
87 #define MCF_INTC0_ICR53 (*(vuint8 *)(0x40000C75))
\r
88 #define MCF_INTC0_ICR54 (*(vuint8 *)(0x40000C76))
\r
89 #define MCF_INTC0_ICR55 (*(vuint8 *)(0x40000C77))
\r
90 #define MCF_INTC0_ICR56 (*(vuint8 *)(0x40000C78))
\r
91 #define MCF_INTC0_ICR57 (*(vuint8 *)(0x40000C79))
\r
92 #define MCF_INTC0_ICR58 (*(vuint8 *)(0x40000C7A))
\r
93 #define MCF_INTC0_ICR59 (*(vuint8 *)(0x40000C7B))
\r
94 #define MCF_INTC0_ICR60 (*(vuint8 *)(0x40000C7C))
\r
95 #define MCF_INTC0_ICR61 (*(vuint8 *)(0x40000C7D))
\r
96 #define MCF_INTC0_ICR62 (*(vuint8 *)(0x40000C7E))
\r
97 #define MCF_INTC0_ICR63 (*(vuint8 *)(0x40000C7F))
\r
98 #define MCF_INTC0_SWIACK (*(vuint8 *)(0x40000CE0))
\r
99 #define MCF_INTC0_L1IACK (*(vuint8 *)(0x40000CE4))
\r
100 #define MCF_INTC0_L2IACK (*(vuint8 *)(0x40000CE8))
\r
101 #define MCF_INTC0_L3IACK (*(vuint8 *)(0x40000CEC))
\r
102 #define MCF_INTC0_L4IACK (*(vuint8 *)(0x40000CF0))
\r
103 #define MCF_INTC0_L5IACK (*(vuint8 *)(0x40000CF4))
\r
104 #define MCF_INTC0_L6IACK (*(vuint8 *)(0x40000CF8))
\r
105 #define MCF_INTC0_L7IACK (*(vuint8 *)(0x40000CFC))
\r
106 #define MCF_INTC0_ICR(x) (*(vuint8 *)(0x40000C41 + ((x-1)*0x1)))
\r
107 #define MCF_INTC0_LIACK(x) (*(vuint8 *)(0x40000CE4 + ((x-1)*0x4)))
\r
109 #define MCF_INTC1_IPRH (*(vuint32*)(0x40000D00))
\r
110 #define MCF_INTC1_IPRL (*(vuint32*)(0x40000D04))
\r
111 #define MCF_INTC1_IMRH (*(vuint32*)(0x40000D08))
\r
112 #define MCF_INTC1_IMRL (*(vuint32*)(0x40000D0C))
\r
113 #define MCF_INTC1_INTFRCH (*(vuint32*)(0x40000D10))
\r
114 #define MCF_INTC1_INTFRCL (*(vuint32*)(0x40000D14))
\r
115 #define MCF_INTC1_IRLR (*(vuint8 *)(0x40000D18))
\r
116 #define MCF_INTC1_IACKLPR (*(vuint8 *)(0x40000D19))
\r
117 #define MCF_INTC1_ICR01 (*(vuint8 *)(0x40000D41))
\r
118 #define MCF_INTC1_ICR02 (*(vuint8 *)(0x40000D42))
\r
119 #define MCF_INTC1_ICR03 (*(vuint8 *)(0x40000D43))
\r
120 #define MCF_INTC1_ICR04 (*(vuint8 *)(0x40000D44))
\r
121 #define MCF_INTC1_ICR05 (*(vuint8 *)(0x40000D45))
\r
122 #define MCF_INTC1_ICR06 (*(vuint8 *)(0x40000D46))
\r
123 #define MCF_INTC1_ICR07 (*(vuint8 *)(0x40000D47))
\r
124 #define MCF_INTC1_ICR08 (*(vuint8 *)(0x40000D48))
\r
125 #define MCF_INTC1_ICR09 (*(vuint8 *)(0x40000D49))
\r
126 #define MCF_INTC1_ICR10 (*(vuint8 *)(0x40000D4A))
\r
127 #define MCF_INTC1_ICR11 (*(vuint8 *)(0x40000D4B))
\r
128 #define MCF_INTC1_ICR12 (*(vuint8 *)(0x40000D4C))
\r
129 #define MCF_INTC1_ICR13 (*(vuint8 *)(0x40000D4D))
\r
130 #define MCF_INTC1_ICR14 (*(vuint8 *)(0x40000D4E))
\r
131 #define MCF_INTC1_ICR15 (*(vuint8 *)(0x40000D4F))
\r
132 #define MCF_INTC1_ICR16 (*(vuint8 *)(0x40000D50))
\r
133 #define MCF_INTC1_ICR17 (*(vuint8 *)(0x40000D51))
\r
134 #define MCF_INTC1_ICR18 (*(vuint8 *)(0x40000D52))
\r
135 #define MCF_INTC1_ICR19 (*(vuint8 *)(0x40000D53))
\r
136 #define MCF_INTC1_ICR20 (*(vuint8 *)(0x40000D54))
\r
137 #define MCF_INTC1_ICR21 (*(vuint8 *)(0x40000D55))
\r
138 #define MCF_INTC1_ICR22 (*(vuint8 *)(0x40000D56))
\r
139 #define MCF_INTC1_ICR23 (*(vuint8 *)(0x40000D57))
\r
140 #define MCF_INTC1_ICR24 (*(vuint8 *)(0x40000D58))
\r
141 #define MCF_INTC1_ICR25 (*(vuint8 *)(0x40000D59))
\r
142 #define MCF_INTC1_ICR26 (*(vuint8 *)(0x40000D5A))
\r
143 #define MCF_INTC1_ICR27 (*(vuint8 *)(0x40000D5B))
\r
144 #define MCF_INTC1_ICR28 (*(vuint8 *)(0x40000D5C))
\r
145 #define MCF_INTC1_ICR29 (*(vuint8 *)(0x40000D5D))
\r
146 #define MCF_INTC1_ICR30 (*(vuint8 *)(0x40000D5E))
\r
147 #define MCF_INTC1_ICR31 (*(vuint8 *)(0x40000D5F))
\r
148 #define MCF_INTC1_ICR32 (*(vuint8 *)(0x40000D60))
\r
149 #define MCF_INTC1_ICR33 (*(vuint8 *)(0x40000D61))
\r
150 #define MCF_INTC1_ICR34 (*(vuint8 *)(0x40000D62))
\r
151 #define MCF_INTC1_ICR35 (*(vuint8 *)(0x40000D63))
\r
152 #define MCF_INTC1_ICR36 (*(vuint8 *)(0x40000D64))
\r
153 #define MCF_INTC1_ICR37 (*(vuint8 *)(0x40000D65))
\r
154 #define MCF_INTC1_ICR38 (*(vuint8 *)(0x40000D66))
\r
155 #define MCF_INTC1_ICR39 (*(vuint8 *)(0x40000D67))
\r
156 #define MCF_INTC1_ICR40 (*(vuint8 *)(0x40000D68))
\r
157 #define MCF_INTC1_ICR41 (*(vuint8 *)(0x40000D69))
\r
158 #define MCF_INTC1_ICR42 (*(vuint8 *)(0x40000D6A))
\r
159 #define MCF_INTC1_ICR43 (*(vuint8 *)(0x40000D6B))
\r
160 #define MCF_INTC1_ICR44 (*(vuint8 *)(0x40000D6C))
\r
161 #define MCF_INTC1_ICR45 (*(vuint8 *)(0x40000D6D))
\r
162 #define MCF_INTC1_ICR46 (*(vuint8 *)(0x40000D6E))
\r
163 #define MCF_INTC1_ICR47 (*(vuint8 *)(0x40000D6F))
\r
164 #define MCF_INTC1_ICR48 (*(vuint8 *)(0x40000D70))
\r
165 #define MCF_INTC1_ICR49 (*(vuint8 *)(0x40000D71))
\r
166 #define MCF_INTC1_ICR50 (*(vuint8 *)(0x40000D72))
\r
167 #define MCF_INTC1_ICR51 (*(vuint8 *)(0x40000D73))
\r
168 #define MCF_INTC1_ICR52 (*(vuint8 *)(0x40000D74))
\r
169 #define MCF_INTC1_ICR53 (*(vuint8 *)(0x40000D75))
\r
170 #define MCF_INTC1_ICR54 (*(vuint8 *)(0x40000D76))
\r
171 #define MCF_INTC1_ICR55 (*(vuint8 *)(0x40000D77))
\r
172 #define MCF_INTC1_ICR56 (*(vuint8 *)(0x40000D78))
\r
173 #define MCF_INTC1_ICR57 (*(vuint8 *)(0x40000D79))
\r
174 #define MCF_INTC1_ICR58 (*(vuint8 *)(0x40000D7A))
\r
175 #define MCF_INTC1_ICR59 (*(vuint8 *)(0x40000D7B))
\r
176 #define MCF_INTC1_ICR60 (*(vuint8 *)(0x40000D7C))
\r
177 #define MCF_INTC1_ICR61 (*(vuint8 *)(0x40000D7D))
\r
178 #define MCF_INTC1_ICR62 (*(vuint8 *)(0x40000D7E))
\r
179 #define MCF_INTC1_ICR63 (*(vuint8 *)(0x40000D7F))
\r
180 #define MCF_INTC1_SWIACK (*(vuint8 *)(0x40000DE0))
\r
181 #define MCF_INTC1_L1IACK (*(vuint8 *)(0x40000DE4))
\r
182 #define MCF_INTC1_L2IACK (*(vuint8 *)(0x40000DE8))
\r
183 #define MCF_INTC1_L3IACK (*(vuint8 *)(0x40000DEC))
\r
184 #define MCF_INTC1_L4IACK (*(vuint8 *)(0x40000DF0))
\r
185 #define MCF_INTC1_L5IACK (*(vuint8 *)(0x40000DF4))
\r
186 #define MCF_INTC1_L6IACK (*(vuint8 *)(0x40000DF8))
\r
187 #define MCF_INTC1_L7IACK (*(vuint8 *)(0x40000DFC))
\r
188 #define MCF_INTC1_ICR(x) (*(vuint8 *)(0x40000D41 + ((x-1)*0x1)))
\r
189 #define MCF_INTC1_LIACK(x) (*(vuint8 *)(0x40000DE4 + ((x-1)*0x4)))
\r
191 #define MCF_INTC_IPRH(x) (*(vuint32*)(0x40000C00 + ((x)*0x100)))
\r
192 #define MCF_INTC_IPRL(x) (*(vuint32*)(0x40000C04 + ((x)*0x100)))
\r
193 #define MCF_INTC_IMRH(x) (*(vuint32*)(0x40000C08 + ((x)*0x100)))
\r
194 #define MCF_INTC_IMRL(x) (*(vuint32*)(0x40000C0C + ((x)*0x100)))
\r
195 #define MCF_INTC_INTFRCH(x) (*(vuint32*)(0x40000C10 + ((x)*0x100)))
\r
196 #define MCF_INTC_INTFRCL(x) (*(vuint32*)(0x40000C14 + ((x)*0x100)))
\r
197 #define MCF_INTC_IRLR(x) (*(vuint8 *)(0x40000C18 + ((x)*0x100)))
\r
198 #define MCF_INTC_IACKLPR(x) (*(vuint8 *)(0x40000C19 + ((x)*0x100)))
\r
199 #define MCF_INTC_ICR01(x) (*(vuint8 *)(0x40000C41 + ((x)*0x100)))
\r
200 #define MCF_INTC_ICR02(x) (*(vuint8 *)(0x40000C42 + ((x)*0x100)))
\r
201 #define MCF_INTC_ICR03(x) (*(vuint8 *)(0x40000C43 + ((x)*0x100)))
\r
202 #define MCF_INTC_ICR04(x) (*(vuint8 *)(0x40000C44 + ((x)*0x100)))
\r
203 #define MCF_INTC_ICR05(x) (*(vuint8 *)(0x40000C45 + ((x)*0x100)))
\r
204 #define MCF_INTC_ICR06(x) (*(vuint8 *)(0x40000C46 + ((x)*0x100)))
\r
205 #define MCF_INTC_ICR07(x) (*(vuint8 *)(0x40000C47 + ((x)*0x100)))
\r
206 #define MCF_INTC_ICR08(x) (*(vuint8 *)(0x40000C48 + ((x)*0x100)))
\r
207 #define MCF_INTC_ICR09(x) (*(vuint8 *)(0x40000C49 + ((x)*0x100)))
\r
208 #define MCF_INTC_ICR10(x) (*(vuint8 *)(0x40000C4A + ((x)*0x100)))
\r
209 #define MCF_INTC_ICR11(x) (*(vuint8 *)(0x40000C4B + ((x)*0x100)))
\r
210 #define MCF_INTC_ICR12(x) (*(vuint8 *)(0x40000C4C + ((x)*0x100)))
\r
211 #define MCF_INTC_ICR13(x) (*(vuint8 *)(0x40000C4D + ((x)*0x100)))
\r
212 #define MCF_INTC_ICR14(x) (*(vuint8 *)(0x40000C4E + ((x)*0x100)))
\r
213 #define MCF_INTC_ICR15(x) (*(vuint8 *)(0x40000C4F + ((x)*0x100)))
\r
214 #define MCF_INTC_ICR16(x) (*(vuint8 *)(0x40000C50 + ((x)*0x100)))
\r
215 #define MCF_INTC_ICR17(x) (*(vuint8 *)(0x40000C51 + ((x)*0x100)))
\r
216 #define MCF_INTC_ICR18(x) (*(vuint8 *)(0x40000C52 + ((x)*0x100)))
\r
217 #define MCF_INTC_ICR19(x) (*(vuint8 *)(0x40000C53 + ((x)*0x100)))
\r
218 #define MCF_INTC_ICR20(x) (*(vuint8 *)(0x40000C54 + ((x)*0x100)))
\r
219 #define MCF_INTC_ICR21(x) (*(vuint8 *)(0x40000C55 + ((x)*0x100)))
\r
220 #define MCF_INTC_ICR22(x) (*(vuint8 *)(0x40000C56 + ((x)*0x100)))
\r
221 #define MCF_INTC_ICR23(x) (*(vuint8 *)(0x40000C57 + ((x)*0x100)))
\r
222 #define MCF_INTC_ICR24(x) (*(vuint8 *)(0x40000C58 + ((x)*0x100)))
\r
223 #define MCF_INTC_ICR25(x) (*(vuint8 *)(0x40000C59 + ((x)*0x100)))
\r
224 #define MCF_INTC_ICR26(x) (*(vuint8 *)(0x40000C5A + ((x)*0x100)))
\r
225 #define MCF_INTC_ICR27(x) (*(vuint8 *)(0x40000C5B + ((x)*0x100)))
\r
226 #define MCF_INTC_ICR28(x) (*(vuint8 *)(0x40000C5C + ((x)*0x100)))
\r
227 #define MCF_INTC_ICR29(x) (*(vuint8 *)(0x40000C5D + ((x)*0x100)))
\r
228 #define MCF_INTC_ICR30(x) (*(vuint8 *)(0x40000C5E + ((x)*0x100)))
\r
229 #define MCF_INTC_ICR31(x) (*(vuint8 *)(0x40000C5F + ((x)*0x100)))
\r
230 #define MCF_INTC_ICR32(x) (*(vuint8 *)(0x40000C60 + ((x)*0x100)))
\r
231 #define MCF_INTC_ICR33(x) (*(vuint8 *)(0x40000C61 + ((x)*0x100)))
\r
232 #define MCF_INTC_ICR34(x) (*(vuint8 *)(0x40000C62 + ((x)*0x100)))
\r
233 #define MCF_INTC_ICR35(x) (*(vuint8 *)(0x40000C63 + ((x)*0x100)))
\r
234 #define MCF_INTC_ICR36(x) (*(vuint8 *)(0x40000C64 + ((x)*0x100)))
\r
235 #define MCF_INTC_ICR37(x) (*(vuint8 *)(0x40000C65 + ((x)*0x100)))
\r
236 #define MCF_INTC_ICR38(x) (*(vuint8 *)(0x40000C66 + ((x)*0x100)))
\r
237 #define MCF_INTC_ICR39(x) (*(vuint8 *)(0x40000C67 + ((x)*0x100)))
\r
238 #define MCF_INTC_ICR40(x) (*(vuint8 *)(0x40000C68 + ((x)*0x100)))
\r
239 #define MCF_INTC_ICR41(x) (*(vuint8 *)(0x40000C69 + ((x)*0x100)))
\r
240 #define MCF_INTC_ICR42(x) (*(vuint8 *)(0x40000C6A + ((x)*0x100)))
\r
241 #define MCF_INTC_ICR43(x) (*(vuint8 *)(0x40000C6B + ((x)*0x100)))
\r
242 #define MCF_INTC_ICR44(x) (*(vuint8 *)(0x40000C6C + ((x)*0x100)))
\r
243 #define MCF_INTC_ICR45(x) (*(vuint8 *)(0x40000C6D + ((x)*0x100)))
\r
244 #define MCF_INTC_ICR46(x) (*(vuint8 *)(0x40000C6E + ((x)*0x100)))
\r
245 #define MCF_INTC_ICR47(x) (*(vuint8 *)(0x40000C6F + ((x)*0x100)))
\r
246 #define MCF_INTC_ICR48(x) (*(vuint8 *)(0x40000C70 + ((x)*0x100)))
\r
247 #define MCF_INTC_ICR49(x) (*(vuint8 *)(0x40000C71 + ((x)*0x100)))
\r
248 #define MCF_INTC_ICR50(x) (*(vuint8 *)(0x40000C72 + ((x)*0x100)))
\r
249 #define MCF_INTC_ICR51(x) (*(vuint8 *)(0x40000C73 + ((x)*0x100)))
\r
250 #define MCF_INTC_ICR52(x) (*(vuint8 *)(0x40000C74 + ((x)*0x100)))
\r
251 #define MCF_INTC_ICR53(x) (*(vuint8 *)(0x40000C75 + ((x)*0x100)))
\r
252 #define MCF_INTC_ICR54(x) (*(vuint8 *)(0x40000C76 + ((x)*0x100)))
\r
253 #define MCF_INTC_ICR55(x) (*(vuint8 *)(0x40000C77 + ((x)*0x100)))
\r
254 #define MCF_INTC_ICR56(x) (*(vuint8 *)(0x40000C78 + ((x)*0x100)))
\r
255 #define MCF_INTC_ICR57(x) (*(vuint8 *)(0x40000C79 + ((x)*0x100)))
\r
256 #define MCF_INTC_ICR58(x) (*(vuint8 *)(0x40000C7A + ((x)*0x100)))
\r
257 #define MCF_INTC_ICR59(x) (*(vuint8 *)(0x40000C7B + ((x)*0x100)))
\r
258 #define MCF_INTC_ICR60(x) (*(vuint8 *)(0x40000C7C + ((x)*0x100)))
\r
259 #define MCF_INTC_ICR61(x) (*(vuint8 *)(0x40000C7D + ((x)*0x100)))
\r
260 #define MCF_INTC_ICR62(x) (*(vuint8 *)(0x40000C7E + ((x)*0x100)))
\r
261 #define MCF_INTC_ICR63(x) (*(vuint8 *)(0x40000C7F + ((x)*0x100)))
\r
262 #define MCF_INTC_SWIACK(x) (*(vuint8 *)(0x40000CE0 + ((x)*0x100)))
\r
263 #define MCF_INTC_L1IACK(x) (*(vuint8 *)(0x40000CE4 + ((x)*0x100)))
\r
264 #define MCF_INTC_L2IACK(x) (*(vuint8 *)(0x40000CE8 + ((x)*0x100)))
\r
265 #define MCF_INTC_L3IACK(x) (*(vuint8 *)(0x40000CEC + ((x)*0x100)))
\r
266 #define MCF_INTC_L4IACK(x) (*(vuint8 *)(0x40000CF0 + ((x)*0x100)))
\r
267 #define MCF_INTC_L5IACK(x) (*(vuint8 *)(0x40000CF4 + ((x)*0x100)))
\r
268 #define MCF_INTC_L6IACK(x) (*(vuint8 *)(0x40000CF8 + ((x)*0x100)))
\r
269 #define MCF_INTC_L7IACK(x) (*(vuint8 *)(0x40000CFC + ((x)*0x100)))
\r
272 /* Bit definitions and macros for MCF_INTC_IPRH */
\r
273 #define MCF_INTC_IPRH_INT32 (0x1)
\r
274 #define MCF_INTC_IPRH_INT33 (0x2)
\r
275 #define MCF_INTC_IPRH_INT34 (0x4)
\r
276 #define MCF_INTC_IPRH_INT35 (0x8)
\r
277 #define MCF_INTC_IPRH_INT36 (0x10)
\r
278 #define MCF_INTC_IPRH_INT37 (0x20)
\r
279 #define MCF_INTC_IPRH_INT38 (0x40)
\r
280 #define MCF_INTC_IPRH_INT39 (0x80)
\r
281 #define MCF_INTC_IPRH_INT40 (0x100)
\r
282 #define MCF_INTC_IPRH_INT41 (0x200)
\r
283 #define MCF_INTC_IPRH_INT42 (0x400)
\r
284 #define MCF_INTC_IPRH_INT43 (0x800)
\r
285 #define MCF_INTC_IPRH_INT44 (0x1000)
\r
286 #define MCF_INTC_IPRH_INT45 (0x2000)
\r
287 #define MCF_INTC_IPRH_INT46 (0x4000)
\r
288 #define MCF_INTC_IPRH_INT47 (0x8000)
\r
289 #define MCF_INTC_IPRH_INT48 (0x10000)
\r
290 #define MCF_INTC_IPRH_INT49 (0x20000)
\r
291 #define MCF_INTC_IPRH_INT50 (0x40000)
\r
292 #define MCF_INTC_IPRH_INT51 (0x80000)
\r
293 #define MCF_INTC_IPRH_INT52 (0x100000)
\r
294 #define MCF_INTC_IPRH_INT53 (0x200000)
\r
295 #define MCF_INTC_IPRH_INT54 (0x400000)
\r
296 #define MCF_INTC_IPRH_INT55 (0x800000)
\r
297 #define MCF_INTC_IPRH_INT56 (0x1000000)
\r
298 #define MCF_INTC_IPRH_INT57 (0x2000000)
\r
299 #define MCF_INTC_IPRH_INT58 (0x4000000)
\r
300 #define MCF_INTC_IPRH_INT59 (0x8000000)
\r
301 #define MCF_INTC_IPRH_INT60 (0x10000000)
\r
302 #define MCF_INTC_IPRH_INT61 (0x20000000)
\r
303 #define MCF_INTC_IPRH_INT62 (0x40000000)
\r
304 #define MCF_INTC_IPRH_INT63 (0x80000000)
\r
306 /* Bit definitions and macros for MCF_INTC_IPRL */
\r
307 #define MCF_INTC_IPRL_INT1 (0x2)
\r
308 #define MCF_INTC_IPRL_INT2 (0x4)
\r
309 #define MCF_INTC_IPRL_INT3 (0x8)
\r
310 #define MCF_INTC_IPRL_INT4 (0x10)
\r
311 #define MCF_INTC_IPRL_INT5 (0x20)
\r
312 #define MCF_INTC_IPRL_INT6 (0x40)
\r
313 #define MCF_INTC_IPRL_INT7 (0x80)
\r
314 #define MCF_INTC_IPRL_INT8 (0x100)
\r
315 #define MCF_INTC_IPRL_INT9 (0x200)
\r
316 #define MCF_INTC_IPRL_INT10 (0x400)
\r
317 #define MCF_INTC_IPRL_INT11 (0x800)
\r
318 #define MCF_INTC_IPRL_INT12 (0x1000)
\r
319 #define MCF_INTC_IPRL_INT13 (0x2000)
\r
320 #define MCF_INTC_IPRL_INT14 (0x4000)
\r
321 #define MCF_INTC_IPRL_INT15 (0x8000)
\r
322 #define MCF_INTC_IPRL_INT16 (0x10000)
\r
323 #define MCF_INTC_IPRL_INT17 (0x20000)
\r
324 #define MCF_INTC_IPRL_INT18 (0x40000)
\r
325 #define MCF_INTC_IPRL_INT19 (0x80000)
\r
326 #define MCF_INTC_IPRL_INT20 (0x100000)
\r
327 #define MCF_INTC_IPRL_INT21 (0x200000)
\r
328 #define MCF_INTC_IPRL_INT22 (0x400000)
\r
329 #define MCF_INTC_IPRL_INT23 (0x800000)
\r
330 #define MCF_INTC_IPRL_INT24 (0x1000000)
\r
331 #define MCF_INTC_IPRL_INT25 (0x2000000)
\r
332 #define MCF_INTC_IPRL_INT26 (0x4000000)
\r
333 #define MCF_INTC_IPRL_INT27 (0x8000000)
\r
334 #define MCF_INTC_IPRL_INT28 (0x10000000)
\r
335 #define MCF_INTC_IPRL_INT29 (0x20000000)
\r
336 #define MCF_INTC_IPRL_INT30 (0x40000000)
\r
337 #define MCF_INTC_IPRL_INT31 (0x80000000)
\r
339 /* Bit definitions and macros for MCF_INTC_IMRH */
\r
340 #define MCF_INTC_IMRH_INT_MASK32 (0x1)
\r
341 #define MCF_INTC_IMRH_INT_MASK33 (0x2)
\r
342 #define MCF_INTC_IMRH_INT_MASK34 (0x4)
\r
343 #define MCF_INTC_IMRH_INT_MASK35 (0x8)
\r
344 #define MCF_INTC_IMRH_INT_MASK36 (0x10)
\r
345 #define MCF_INTC_IMRH_INT_MASK37 (0x20)
\r
346 #define MCF_INTC_IMRH_INT_MASK38 (0x40)
\r
347 #define MCF_INTC_IMRH_INT_MASK39 (0x80)
\r
348 #define MCF_INTC_IMRH_INT_MASK40 (0x100)
\r
349 #define MCF_INTC_IMRH_INT_MASK41 (0x200)
\r
350 #define MCF_INTC_IMRH_INT_MASK42 (0x400)
\r
351 #define MCF_INTC_IMRH_INT_MASK43 (0x800)
\r
352 #define MCF_INTC_IMRH_INT_MASK44 (0x1000)
\r
353 #define MCF_INTC_IMRH_INT_MASK45 (0x2000)
\r
354 #define MCF_INTC_IMRH_INT_MASK46 (0x4000)
\r
355 #define MCF_INTC_IMRH_INT_MASK47 (0x8000)
\r
356 #define MCF_INTC_IMRH_INT_MASK48 (0x10000)
\r
357 #define MCF_INTC_IMRH_INT_MASK49 (0x20000)
\r
358 #define MCF_INTC_IMRH_INT_MASK50 (0x40000)
\r
359 #define MCF_INTC_IMRH_INT_MASK51 (0x80000)
\r
360 #define MCF_INTC_IMRH_INT_MASK52 (0x100000)
\r
361 #define MCF_INTC_IMRH_INT_MASK53 (0x200000)
\r
362 #define MCF_INTC_IMRH_INT_MASK54 (0x400000)
\r
363 #define MCF_INTC_IMRH_INT_MASK55 (0x800000)
\r
364 #define MCF_INTC_IMRH_INT_MASK56 (0x1000000)
\r
365 #define MCF_INTC_IMRH_INT_MASK57 (0x2000000)
\r
366 #define MCF_INTC_IMRH_INT_MASK58 (0x4000000)
\r
367 #define MCF_INTC_IMRH_INT_MASK59 (0x8000000)
\r
368 #define MCF_INTC_IMRH_INT_MASK60 (0x10000000)
\r
369 #define MCF_INTC_IMRH_INT_MASK61 (0x20000000)
\r
370 #define MCF_INTC_IMRH_INT_MASK62 (0x40000000)
\r
371 #define MCF_INTC_IMRH_INT_MASK63 (0x80000000)
\r
373 /* Bit definitions and macros for MCF_INTC_IMRL */
\r
374 #define MCF_INTC_IMRL_MASKALL (0x1)
\r
375 #define MCF_INTC_IMRL_INT_MASK1 (0x2)
\r
376 #define MCF_INTC_IMRL_INT_MASK2 (0x4)
\r
377 #define MCF_INTC_IMRL_INT_MASK3 (0x8)
\r
378 #define MCF_INTC_IMRL_INT_MASK4 (0x10)
\r
379 #define MCF_INTC_IMRL_INT_MASK5 (0x20)
\r
380 #define MCF_INTC_IMRL_INT_MASK6 (0x40)
\r
381 #define MCF_INTC_IMRL_INT_MASK7 (0x80)
\r
382 #define MCF_INTC_IMRL_INT_MASK8 (0x100)
\r
383 #define MCF_INTC_IMRL_INT_MASK9 (0x200)
\r
384 #define MCF_INTC_IMRL_INT_MASK10 (0x400)
\r
385 #define MCF_INTC_IMRL_INT_MASK11 (0x800)
\r
386 #define MCF_INTC_IMRL_INT_MASK12 (0x1000)
\r
387 #define MCF_INTC_IMRL_INT_MASK13 (0x2000)
\r
388 #define MCF_INTC_IMRL_INT_MASK14 (0x4000)
\r
389 #define MCF_INTC_IMRL_INT_MASK15 (0x8000)
\r
390 #define MCF_INTC_IMRL_INT_MASK16 (0x10000)
\r
391 #define MCF_INTC_IMRL_INT_MASK17 (0x20000)
\r
392 #define MCF_INTC_IMRL_INT_MASK18 (0x40000)
\r
393 #define MCF_INTC_IMRL_INT_MASK19 (0x80000)
\r
394 #define MCF_INTC_IMRL_INT_MASK20 (0x100000)
\r
395 #define MCF_INTC_IMRL_INT_MASK21 (0x200000)
\r
396 #define MCF_INTC_IMRL_INT_MASK22 (0x400000)
\r
397 #define MCF_INTC_IMRL_INT_MASK23 (0x800000)
\r
398 #define MCF_INTC_IMRL_INT_MASK24 (0x1000000)
\r
399 #define MCF_INTC_IMRL_INT_MASK25 (0x2000000)
\r
400 #define MCF_INTC_IMRL_INT_MASK26 (0x4000000)
\r
401 #define MCF_INTC_IMRL_INT_MASK27 (0x8000000)
\r
402 #define MCF_INTC_IMRL_INT_MASK28 (0x10000000)
\r
403 #define MCF_INTC_IMRL_INT_MASK29 (0x20000000)
\r
404 #define MCF_INTC_IMRL_INT_MASK30 (0x40000000)
\r
405 #define MCF_INTC_IMRL_INT_MASK31 (0x80000000)
\r
407 /* Bit definitions and macros for MCF_INTC_INTFRCH */
\r
408 #define MCF_INTC_INTFRCH_INTFRC32 (0x1)
\r
409 #define MCF_INTC_INTFRCH_INTFRC33 (0x2)
\r
410 #define MCF_INTC_INTFRCH_INTFRC34 (0x4)
\r
411 #define MCF_INTC_INTFRCH_INTFRC35 (0x8)
\r
412 #define MCF_INTC_INTFRCH_INTFRC36 (0x10)
\r
413 #define MCF_INTC_INTFRCH_INTFRC37 (0x20)
\r
414 #define MCF_INTC_INTFRCH_INTFRC38 (0x40)
\r
415 #define MCF_INTC_INTFRCH_INTFRC39 (0x80)
\r
416 #define MCF_INTC_INTFRCH_INTFRC40 (0x100)
\r
417 #define MCF_INTC_INTFRCH_INTFRC41 (0x200)
\r
418 #define MCF_INTC_INTFRCH_INTFRC42 (0x400)
\r
419 #define MCF_INTC_INTFRCH_INTFRC43 (0x800)
\r
420 #define MCF_INTC_INTFRCH_INTFRC44 (0x1000)
\r
421 #define MCF_INTC_INTFRCH_INTFRC45 (0x2000)
\r
422 #define MCF_INTC_INTFRCH_INTFRC46 (0x4000)
\r
423 #define MCF_INTC_INTFRCH_INTFRC47 (0x8000)
\r
424 #define MCF_INTC_INTFRCH_INTFRC48 (0x10000)
\r
425 #define MCF_INTC_INTFRCH_INTFRC49 (0x20000)
\r
426 #define MCF_INTC_INTFRCH_INTFRC50 (0x40000)
\r
427 #define MCF_INTC_INTFRCH_INTFRC51 (0x80000)
\r
428 #define MCF_INTC_INTFRCH_INTFRC52 (0x100000)
\r
429 #define MCF_INTC_INTFRCH_INTFRC53 (0x200000)
\r
430 #define MCF_INTC_INTFRCH_INTFRC54 (0x400000)
\r
431 #define MCF_INTC_INTFRCH_INTFRC55 (0x800000)
\r
432 #define MCF_INTC_INTFRCH_INTFRC56 (0x1000000)
\r
433 #define MCF_INTC_INTFRCH_INTFRC57 (0x2000000)
\r
434 #define MCF_INTC_INTFRCH_INTFRC58 (0x4000000)
\r
435 #define MCF_INTC_INTFRCH_INTFRC59 (0x8000000)
\r
436 #define MCF_INTC_INTFRCH_INTFRC60 (0x10000000)
\r
437 #define MCF_INTC_INTFRCH_INTFRC61 (0x20000000)
\r
438 #define MCF_INTC_INTFRCH_INTFRC62 (0x40000000)
\r
439 #define MCF_INTC_INTFRCH_INTFRC63 (0x80000000)
\r
441 /* Bit definitions and macros for MCF_INTC_INTFRCL */
\r
442 #define MCF_INTC_INTFRCL_INTFRC1 (0x2)
\r
443 #define MCF_INTC_INTFRCL_INTFRC2 (0x4)
\r
444 #define MCF_INTC_INTFRCL_INTFRC3 (0x8)
\r
445 #define MCF_INTC_INTFRCL_INTFRC4 (0x10)
\r
446 #define MCF_INTC_INTFRCL_INTFRC5 (0x20)
\r
447 #define MCF_INTC_INTFRCL_INTFRC6 (0x40)
\r
448 #define MCF_INTC_INTFRCL_INTFRC7 (0x80)
\r
449 #define MCF_INTC_INTFRCL_INTFRC8 (0x100)
\r
450 #define MCF_INTC_INTFRCL_INTFRC9 (0x200)
\r
451 #define MCF_INTC_INTFRCL_INTFRC10 (0x400)
\r
452 #define MCF_INTC_INTFRCL_INTFRC11 (0x800)
\r
453 #define MCF_INTC_INTFRCL_INTFRC12 (0x1000)
\r
454 #define MCF_INTC_INTFRCL_INTFRC13 (0x2000)
\r
455 #define MCF_INTC_INTFRCL_INTFRC14 (0x4000)
\r
456 #define MCF_INTC_INTFRCL_INTFRC15 (0x8000)
\r
457 #define MCF_INTC_INTFRCL_INTFRC16 (0x10000)
\r
458 #define MCF_INTC_INTFRCL_INTFRC17 (0x20000)
\r
459 #define MCF_INTC_INTFRCL_INTFRC18 (0x40000)
\r
460 #define MCF_INTC_INTFRCL_INTFRC19 (0x80000)
\r
461 #define MCF_INTC_INTFRCL_INTFRC20 (0x100000)
\r
462 #define MCF_INTC_INTFRCL_INTFRC21 (0x200000)
\r
463 #define MCF_INTC_INTFRCL_INTFRC22 (0x400000)
\r
464 #define MCF_INTC_INTFRCL_INTFRC23 (0x800000)
\r
465 #define MCF_INTC_INTFRCL_INTFRC24 (0x1000000)
\r
466 #define MCF_INTC_INTFRCL_INTFRC25 (0x2000000)
\r
467 #define MCF_INTC_INTFRCL_INTFRC26 (0x4000000)
\r
468 #define MCF_INTC_INTFRCL_INTFRC27 (0x8000000)
\r
469 #define MCF_INTC_INTFRCL_INTFRC28 (0x10000000)
\r
470 #define MCF_INTC_INTFRCL_INTFRC29 (0x20000000)
\r
471 #define MCF_INTC_INTFRCL_INTFRC30 (0x40000000)
\r
472 #define MCF_INTC_INTFRCL_INTFRC31 (0x80000000)
\r
474 /* Bit definitions and macros for MCF_INTC_IRLR */
\r
475 #define MCF_INTC_IRLR_IRQ(x) (((x)&0x7F)<<0x1)
\r
477 /* Bit definitions and macros for MCF_INTC_IACKLPR */
\r
478 #define MCF_INTC_IACKLPR_PRI(x) (((x)&0xF)<<0)
\r
479 #define MCF_INTC_IACKLPR_LEVEL(x) (((x)&0x7)<<0x4)
\r
481 /* Bit definitions and macros for MCF_INTC_ICR */
\r
482 #define MCF_INTC_ICR_IP(x) (((x)&0x7)<<0)
\r
483 #define MCF_INTC_ICR_IL(x) (((x)&0x7)<<0x3)
\r
485 /* Bit definitions and macros for MCF_INTC_SWIACK */
\r
486 #define MCF_INTC_SWIACK_VECTOR(x) (((x)&0xFF)<<0)
\r
488 /* Bit definitions and macros for MCF_INTC_LIACK */
\r
489 #define MCF_INTC_LIACK_VECTOR(x) (((x)&0xFF)<<0)
\r
492 #endif /* __MCF52259_INTC_H__ */
\r