openpicreg.h revision 1.3 1 1.3 matt /* $NetBSD: openpicreg.h,v 1.3 2011/02/08 06:16:03 matt Exp $ */
2 1.1 matt /*-
3 1.2 matt * Copyright (c) 2010, 2011 The NetBSD Foundation, Inc.
4 1.1 matt * All rights reserved.
5 1.1 matt *
6 1.1 matt * This code is derived from software contributed to The NetBSD Foundation
7 1.2 matt * by Raytheon BBN Technologies Corp and Defense Advanced Research Projects
8 1.2 matt * Agency and which was developed by Matt Thomas of 3am Software Foundry.
9 1.2 matt *
10 1.2 matt * This material is based upon work supported by the Defense Advanced Research
11 1.2 matt * Projects Agency and Space and Naval Warfare Systems Center, Pacific, under
12 1.2 matt * Contract No. N66001-09-C-2073.
13 1.2 matt * Approved for Public Release, Distribution Unlimited
14 1.1 matt *
15 1.1 matt * Redistribution and use in source and binary forms, with or without
16 1.1 matt * modification, are permitted provided that the following conditions
17 1.1 matt * are met:
18 1.1 matt * 1. Redistributions of source code must retain the above copyright
19 1.1 matt * notice, this list of conditions and the following disclaimer.
20 1.1 matt * 2. Redistributions in binary form must reproduce the above copyright
21 1.1 matt * notice, this list of conditions and the following disclaimer in the
22 1.1 matt * documentation and/or other materials provided with the distribution.
23 1.1 matt *
24 1.1 matt * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
25 1.1 matt * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
26 1.1 matt * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
27 1.1 matt * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
28 1.1 matt * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
29 1.1 matt * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
30 1.1 matt * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
31 1.1 matt * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
32 1.1 matt * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
33 1.1 matt * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
34 1.1 matt * POSSIBILITY OF SUCH DAMAGE.
35 1.1 matt */
36 1.1 matt
37 1.1 matt #ifndef _POWERPC_BOOKE_OPENPICREG_H_
38 1.1 matt #define _POWERPC_BOOKE_OPENPICREG_H_
39 1.1 matt
40 1.1 matt /*
41 1.1 matt * Common definition of VPR registers (IPIVPR, GTVPR, ...)
42 1.1 matt */
43 1.1 matt #define VPR_MSK 0x80000000 /* Mask */
44 1.1 matt #define VPR_A 0x40000000 /* Activity */
45 1.1 matt #define VPR_P 0x00800000 /* Polatity */
46 1.1 matt #define VPR_P_HIGH 0x00800000 /* Active High */
47 1.1 matt #define VPR_S 0x00400000 /* Sense */
48 1.1 matt #define VPR_S_LEVEL 0x00400000 /* Level Sensitive */
49 1.1 matt #define VPR_PRIORITY 0x000f0000 /* Priority */
50 1.1 matt #define VPR_PRIORITY_GET(n) (((n) >> 16) & 0x000f)
51 1.1 matt #define VPR_PRIORITY_MAKE(n) (((n) & 0x000f) << 16)
52 1.1 matt #define VPR_VECTOR 0x0000ffff /* Vector */
53 1.1 matt #define VPR_VECTOR_GET(n) (((n) >> 0) & 0xffff)
54 1.1 matt #define VPR_VECTOR_MAKE(n) (((n) & 0xffff) << 0)
55 1.1 matt
56 1.1 matt #define VPR_LEVEL_LOW (VPR_S_LEVEL)
57 1.1 matt #define VPR_LEVEL_HIGH (VPR_S_LEVEL | VPR_P_HIGH)
58 1.1 matt
59 1.1 matt /*
60 1.1 matt * Common definition of DR registers (IPIVPR, GTVPR, ...)
61 1.1 matt */
62 1.1 matt #define DR_EP 0x80000000 /* external signal */
63 1.1 matt #define DR_CI(n) (1 << (30 - (n))) /* critical intr cpu n */
64 1.1 matt #define DR_P(n) (1 << (n)) /* intr cpu n */
65 1.1 matt
66 1.1 matt
67 1.1 matt #define OPENPIC_BRR1 0x0000 /* Block Revision 1 */
68 1.1 matt #define BRR1_IPID(n) (((n) >> 16) & 0xffff)
69 1.1 matt #define BRR1_IPMJ(n) (((n) >> 8) & 0x00ff)
70 1.1 matt #define BRR1_IPMN(n) (((n) >> 0) & 0x00ff)
71 1.1 matt #define OPENPIC_BRR2 0x0010 /* Block Revision 2 */
72 1.1 matt #define BRR2_IPINT0(n) (((n) >> 16) & 0xff)
73 1.1 matt #define BRR2_IPCFG0(n) (((n) >> 0) & 0xff)
74 1.1 matt
75 1.1 matt #define OPENPIC_IPIDR(n) (0x0040 + 0x10 * (n))
76 1.1 matt
77 1.1 matt #define OPENPIC_CTPR 0x0080
78 1.1 matt #define OPENPIC_WHOAMI 0x0090
79 1.1 matt #define OPENPIC_IACK 0x00a0
80 1.1 matt #define OPENPIC_EOI 0x00b0
81 1.1 matt
82 1.1 matt #define OPENPIC_FRR 0x1000 /* Feature Reporting */
83 1.2 matt #define FRR_NIRQ_GET(n) (((n) >> 16) & 0x7ff) /* intr sources - 1 */
84 1.2 matt #define FRR_NCPU_GET(n) (((n) >> 8) & 0x01f) /* cpus - 1 */
85 1.2 matt #define FRR_VID_GET(n) (((n) >> 0) & 0x0ff) /* version id */
86 1.1 matt #define OPENPIC_GCR 0x1020 /* Global Configuration */
87 1.1 matt #define GCR_RST 0x80000000 /* Reset */
88 1.1 matt #define GCR_M 0x20000000 /* Mixed Mode */
89 1.1 matt #define OPENPIC_VIR 0x1080 /* Vendor Identification */
90 1.1 matt #define OPENPIC_PIR 0x1090 /* Processor Initialization */
91 1.1 matt
92 1.1 matt #define OPENPIC_IPIVPR(n) (0x10a0 + 0x10 * (n))
93 1.1 matt #define OPENPIC_SVR 0x10e0
94 1.1 matt #define SVR_VECTOR 0x0000ffff /* Vector */
95 1.1 matt #define SVR_VECTOR_GET(n) (((n) >> 0) & 0xffff)
96 1.1 matt #define SVR_VECTOR_MAKE(n) (((n) & 0xffff) << 0)
97 1.1 matt
98 1.1 matt #define OPENPIC_TFRR 0x10f0
99 1.2 matt #define OPENPIC_GTCCR(cpu, n) (0x1100 + 0x40 * (n) + 0x1000 * (cpu))
100 1.1 matt #define GTCCR_TOG 0x80000000
101 1.1 matt #define GTCCR_COUNT 0x7fffffff
102 1.2 matt #define OPENPIC_GTBCR(cpu, n) (0x1110 + 0x40 * (n) + 0x1000 * (cpu))
103 1.1 matt #define GTBCR_CI 0x80000000 /* Count Inhibit */
104 1.1 matt #define GTBCR_BASECNT 0x7fffffff /* Base Count */
105 1.2 matt #define OPENPIC_GTVPR(cpu, n) (0x1120 + 0x40 * (n) + 0x1000 * (cpu))
106 1.2 matt #define OPENPIC_GTDR(cpu, n) (0x1130 + 0x40 * (n) + 0x1000 * (cpu))
107 1.1 matt #define OPENPIC_TCR 0x1300
108 1.1 matt #define TCR_ROVR(n) (1 << (24 + (n))) /* timer n rollover */
109 1.1 matt #define TCR_RTM 0x00010000 /* real time source */
110 1.1 matt #define TCR_CLKR 0x00000300 /* clock ratio */
111 1.1 matt #define TCR_CLKR_64 0x00000300 /* divide by .. */
112 1.1 matt #define TCR_CLKR_32 0x00000200 /* divide by .. */
113 1.1 matt #define TCR_CLKR_16 0x00000100 /* divide by .. */
114 1.1 matt #define TCR_CLKR_8 0x00000000 /* divide by .. */
115 1.1 matt #define TCR_CASC 0x00000007 /* cascase timers */
116 1.1 matt #define TCR_CASC_0123 0x00000007
117 1.1 matt #define TCR_CASC_123 0x00000006
118 1.1 matt #define TCR_CASC_01_23 0x00000005
119 1.1 matt #define TCR_CASC_23 0x00000004
120 1.1 matt #define TCR_CASC_012 0x00000003
121 1.1 matt #define TCR_CASC_12 0x00000002
122 1.1 matt #define TCR_CASC_01 0x00000001
123 1.1 matt #define TCR_CASC_OFF 0x00000000
124 1.1 matt
125 1.1 matt #define OPENPIC_ERQSR 0x1308 /* ext. intr summary */
126 1.1 matt #define ERQSR_A(n) (1 << (31 - (n))) /* intr <n> active */
127 1.1 matt #define OPENPIC_IRQSR0 0x1310 /* irq out summary 0 */
128 1.1 matt #define IRSR0_MSI_A(n) (1 << (31 - (n))) /* msg sig intr <n> */
129 1.1 matt #define IRSR0_MSG_A(n) (1 << (20 - ((n) ^ 4))) /* shared msg intr */
130 1.1 matt #define IRSR0_EXT_A(n) (1 << (11 - (n))) /* ext int <n> active */
131 1.1 matt #define OPENPIC_IRQSR1 0x1320 /* irq out summary 1 */
132 1.1 matt #define IRQSR1_A(n) (1 << (31 - ((n) - 0))) /* intr <n> active */
133 1.1 matt #define OPENPIC_IRQSR2 0x1324 /* irq out summary 2 */
134 1.1 matt #define IRQSR2_A(n) (1 << (31 - ((n) - 32))) /* intr <n> active */
135 1.1 matt #define OPENPIC_CISR0 0x1330
136 1.1 matt #define OPENPIC_CISR1 0x1340
137 1.1 matt #define CISR1_A(n) (1 << (31 - ((n) - 0))) /* intr <n> active */
138 1.1 matt #define OPENPIC_CISR2 0x1344
139 1.1 matt #define CISR2_A(n) (1 << (31 - ((n) - 32))) /* intr <n> active */
140 1.1 matt
141 1.1 matt /*
142 1.1 matt * Performance Monitor Mask Registers
143 1.1 matt */
144 1.1 matt #define OPENPIC_PMMR0(n) (0x1350 + 0x20 * (n))
145 1.1 matt #define PMMR0_MShl(n) (1 << (31 - (n)))
146 1.1 matt #define PMMR0_IPI(n) (1 << (24 - (n)))
147 1.1 matt #define PMMR0_TIMER(n) (1 << (20 - (n)))
148 1.1 matt #define PMMR0_MSG(n) (1 << (16 - ((n) & 7)))
149 1.1 matt #define PMMR0_EXT(n) (1 << (12 - (n)))
150 1.1 matt #define OPENPIC_PMMR1(n) (0x1360 + 0x20 * (n))
151 1.1 matt #define PMMR1_INT(n) (1 << (31 - ((n) - 0))) /* intr <n> active */
152 1.1 matt #define OPENPIC_PMMR2(n) (0x1364 + 0x20 * (n))
153 1.1 matt #define PMMR2_INT(n) (1 << (31 - ((n) - 32))) /* intr <n> active */
154 1.1 matt
155 1.1 matt /*
156 1.1 matt * Message Registers
157 1.1 matt */
158 1.1 matt #define OPENPIC_MSGR(cpu, n) (0x1400 + 0x1000 * (cpu) + 0x10 * (n))
159 1.2 matt #define OPENPIC_MER(cpu) (0x1500 + 0x1000 * (cpu))
160 1.2 matt #define MER_MSG(n) (1 << (n))
161 1.1 matt #define OPENPIC_MSR(cpu) (0x1510 + 0x1000 * (cpu))
162 1.2 matt #define MSR_MSG(n) (1 << (n))
163 1.1 matt
164 1.1 matt #define OPENPIC_MSIR(n) (0x1600 + 0x10 * (n))
165 1.1 matt #define OPENPIC_MSISR 0x1720
166 1.2 matt #define MSIR_SR(n) (1 << (n))
167 1.1 matt #define OPENPIC_MSIIR 0x1740
168 1.1 matt #define MSIIR_BIT(srs, ibs) (((srs) << 29) | ((ibs) << 24))
169 1.1 matt
170 1.1 matt /*
171 1.1 matt * Interrupt Source Configuration Registers
172 1.1 matt */
173 1.1 matt #define OPENPIC_EIVPR(n) (0x10000 + 0x20 * (n))
174 1.1 matt #define OPENPIC_EIDR(n) (0x10010 + 0x20 * (n))
175 1.1 matt #define OPENPIC_IIVPR(n) (0x10200 + 0x20 * (n))
176 1.1 matt #define OPENPIC_IIDR(n) (0x10210 + 0x20 * (n))
177 1.1 matt #define OPENPIC_MIVPR(n) (0x11600 + 0x20 * (n))
178 1.1 matt #define OPENPIC_MIDR(n) (0x11610 + 0x20 * (n))
179 1.1 matt #define OPENPIC_MSIVPR(n) (0x11c00 + 0x20 * (n))
180 1.1 matt #define OPENPIC_MSIDR(n) (0x11c10 + 0x20 * (n))
181 1.1 matt
182 1.3 matt #define MPC8536_EXTERNALSOURCES 12
183 1.3 matt #define MPC8536_ONCHIPSOURCES 64
184 1.3 matt #define MPC8536_ONCHIPBITMAP { 0xfe07ffff, 0x05501c00 }
185 1.3 matt #define MPC8536_IPISOURCES 8
186 1.3 matt #define MPC8536_TIMERSOURCES 8
187 1.3 matt #define MPC8536_MISOURCES 4
188 1.3 matt #define MPC8536_MSIGROUPSOURCES 8
189 1.3 matt #define MPC8536_NCPUS 1
190 1.3 matt #define MPC8536_SOURCES /* 104 */ \
191 1.3 matt (MPC8536_EXTERNALSOURCES \
192 1.3 matt + MPC8536_ONCHIPSOURCES \
193 1.3 matt + MPC8536_MSIGROUPSOURCES \
194 1.3 matt + MPC8536_NCPUS*(MPC8536_IPISOURCES \
195 1.3 matt + MPC8536_TIMERSOURCES \
196 1.3 matt + MPC8536_MISOURCES))
197 1.3 matt
198 1.2 matt #define MPC8544_EXTERNALSOURCES 12
199 1.2 matt #define MPC8544_ONCHIPSOURCES 48
200 1.2 matt #define MPC8544_ONCHIPBITMAP { 0x3c3fefff, 0x00000000 }
201 1.2 matt #define MPC8544_IPISOURCES 4
202 1.2 matt #define MPC8544_TIMERSOURCES 4
203 1.2 matt #define MPC8544_MISOURCES 4
204 1.2 matt #define MPC8544_MSIGROUPSOURCES 8
205 1.2 matt #define MPC8544_NCPUS 1
206 1.3 matt #define MPC8544_SOURCES /* 80 */ \
207 1.2 matt (MPC8544_EXTERNALSOURCES \
208 1.2 matt + MPC8544_ONCHIPSOURCES \
209 1.2 matt + MPC8544_MSIGROUPSOURCES \
210 1.2 matt + MPC8544_NCPUS*(MPC8544_IPISOURCES \
211 1.2 matt + MPC8544_TIMERSOURCES \
212 1.2 matt + MPC8544_MISOURCES))
213 1.2 matt
214 1.1 matt #define MPC8548_EXTERNALSOURCES 12
215 1.2 matt #define MPC8548_ONCHIPSOURCES 48
216 1.2 matt #define MPC8548_ONCHIPBITMAP { 0x3dffffff, 0x000000f3 }
217 1.1 matt #define MPC8548_IPISOURCES 4
218 1.1 matt #define MPC8548_TIMERSOURCES 4
219 1.1 matt #define MPC8548_MISOURCES 4
220 1.2 matt #define MPC8548_MSIGROUPSOURCES 8
221 1.1 matt #define MPC8548_NCPUS 1
222 1.3 matt #define MPC8548_SOURCES /* 80 */ \
223 1.1 matt (MPC8548_EXTERNALSOURCES \
224 1.2 matt + MPC8548_ONCHIPSOURCES \
225 1.2 matt + MPC8548_MSIGROUPSOURCES \
226 1.1 matt + MPC8548_NCPUS*(MPC8548_IPISOURCES \
227 1.1 matt + MPC8548_TIMERSOURCES \
228 1.1 matt + MPC8548_MISOURCES))
229 1.1 matt
230 1.3 matt #define MPC8555_EXTERNALSOURCES 12
231 1.3 matt #define MPC8555_ONCHIPSOURCES 32
232 1.3 matt #define MPC8555_ONCHIPBITMAP { 0x7d1c63ff, 0 }
233 1.3 matt #define MPC8555_IPISOURCES 4
234 1.3 matt #define MPC8555_TIMERSOURCES 4
235 1.3 matt #define MPC8555_MISOURCES 4
236 1.3 matt #define MPC8555_MSIGROUPSOURCES 0
237 1.3 matt #define MPC8555_NCPUS 1
238 1.3 matt #define MPC8555_SOURCES /* 56 */ \
239 1.3 matt (MPC8555_EXTERNALSOURCES \
240 1.3 matt + MPC8555_ONCHIPSOURCES \
241 1.3 matt + MPC8555_MSIGROUPSOURCES \
242 1.3 matt + MPC8555_NCPUS*(MPC8555_IPISOURCES \
243 1.3 matt + MPC8555_TIMERSOURCES \
244 1.3 matt + MPC8555_MISOURCES))
245 1.3 matt
246 1.3 matt #define MPC8568_EXTERNALSOURCES 12
247 1.3 matt #define MPC8568_ONCHIPSOURCES 48
248 1.3 matt #define MPC8568_ONCHIPBITMAP { 0xfd1c65ff, 0x000b9e7 }
249 1.3 matt #define MPC8568_IPISOURCES 4
250 1.3 matt #define MPC8568_TIMERSOURCES 4
251 1.3 matt #define MPC8568_MISOURCES 4
252 1.3 matt #define MPC8568_MSIGROUPSOURCES 8
253 1.3 matt #define MPC8568_NCPUS 1
254 1.3 matt #define MPC8568_SOURCES /* 80 */ \
255 1.3 matt (MPC8568_EXTERNALSOURCES \
256 1.3 matt + MPC8568_ONCHIPSOURCES \
257 1.3 matt + MPC8568_MSIGROUPSOURCES \
258 1.3 matt + MPC8568_NCPUS*(MPC8568_IPISOURCES \
259 1.3 matt + MPC8568_TIMERSOURCES \
260 1.3 matt + MPC8568_MISOURCES))
261 1.2 matt
262 1.1 matt #define MPC8572_EXTERNALSOURCES 12
263 1.2 matt #define MPC8572_ONCHIPSOURCES 64
264 1.2 matt #define MPC8572_ONCHIPBITMAP { 0xdeffffff, 0xf8ff93f3 }
265 1.1 matt #define MPC8572_IPISOURCES 4
266 1.1 matt #define MPC8572_TIMERSOURCES 4
267 1.1 matt #define MPC8572_MISOURCES 4
268 1.2 matt #define MPC8572_MSIGROUPSOURCES 8
269 1.2 matt #define MPC8572_NCPUS 2
270 1.3 matt #define MPC8572_SOURCES /* 108 */ \
271 1.1 matt (MPC8572_EXTERNALSOURCES \
272 1.2 matt + MPC8572_ONCHIPSOURCES \
273 1.2 matt + MPC8572_MSIGROUPSOURCES \
274 1.1 matt + MPC8572_NCPUS*(MPC8572_IPISOURCES \
275 1.1 matt + MPC8572_TIMERSOURCES \
276 1.1 matt + MPC8572_MISOURCES))
277 1.1 matt
278 1.3 matt #define P20x0_EXTERNALSOURCES 12
279 1.3 matt #define P20x0_ONCHIPSOURCES 64
280 1.3 matt #define P20x0_ONCHIPBITMAP { 0xdd1ff7ff, 0xf9700de7 }
281 1.3 matt #define P20x0_IPISOURCES 4
282 1.3 matt #define P20x0_TIMERSOURCES 4
283 1.3 matt #define P20x0_MISOURCES 4
284 1.3 matt #define P20x0_MSIGROUPSOURCES 8
285 1.3 matt #define P2020_NCPUS 2
286 1.3 matt #define P2020_SOURCES /* 108 */ \
287 1.3 matt (P20x0_EXTERNALSOURCES \
288 1.3 matt + P20x0_ONCHIPSOURCES \
289 1.3 matt + P20x0_MSIGROUPSOURCES \
290 1.3 matt + P2020_NCPUS*(P20x0_IPISOURCES \
291 1.3 matt + P20x0_TIMERSOURCES \
292 1.3 matt + P20x0_MISOURCES))
293 1.3 matt #define P2010_NCPUS 1
294 1.3 matt #define P2010_SOURCES \
295 1.3 matt (P20x0_EXTERNALSOURCES \
296 1.3 matt + P20x0_ONCHIPSOURCES \
297 1.3 matt + P20x0_MSIGROUPSOURCES \
298 1.3 matt + P2010_NCPUS*(P20x0_IPISOURCES \
299 1.3 matt + P20x0_TIMERSOURCES \
300 1.3 matt + P20x0_MISOURCES))
301 1.3 matt
302 1.1 matt /*
303 1.1 matt * Per-CPU Registers
304 1.1 matt */
305 1.1 matt #define OPENPIC_IPIDRn(cpu, n) (0x20040 + 0x1000 * (cpu) + 0x10 * (n))
306 1.1 matt #define OPENPIC_CTPRn(cpu) (0x20080 + 0x1000 * (cpu))
307 1.1 matt #define OPENPIC_WHOAMIn(cpu) (0x20090 + 0x1000 * (cpu))
308 1.1 matt #define OPENPIC_IACKn(cpu) (0x200a0 + 0x1000 * (cpu))
309 1.1 matt #define OPENPIC_EOIn(cpu) (0x200b0 + 0x1000 * (cpu))
310 1.1 matt
311 1.2 matt #define IRQ_SPURIOUS 0xffff
312 1.2 matt
313 1.1 matt #define ISOURCE_L2 0
314 1.1 matt #define ISOURCE_ECM 1
315 1.2 matt #define ISOURCE_DDR 2
316 1.1 matt #define ISOURCE_LBC 3
317 1.1 matt #define ISOURCE_DMA_CHAN1 4
318 1.1 matt #define ISOURCE_DMA_CHAN2 5
319 1.1 matt #define ISOURCE_DMA_CHAN3 6
320 1.1 matt #define ISOURCE_DMA_CHAN4 7
321 1.3 matt #define ISOURCE_PCIEX3_MPC8572 8 /* MPC8572/P20x0 */
322 1.3 matt #define ISOURCE_PCI1 8 /* MPC8548/MPC8544/MPC8536/MPC8555 */
323 1.1 matt #define ISOURCE_PCI2 9 /* MPC8548 */
324 1.3 matt #define ISOURCE_PCIEX2 9 /* MPC8544/MPC8572/MPC8536/P20x0 */
325 1.1 matt #define ISOURCE_PCIEX 10
326 1.2 matt #define ISOURCE_PCIEX3 11 /* MPC8544/MPC8536 */
327 1.3 matt #define ISOURCE_USB1 12 /* MPC8536/P20x0 */
328 1.1 matt #define ISOURCE_ETSEC1_TX 13
329 1.1 matt #define ISOURCE_ETSEC1_RX 14
330 1.1 matt #define ISOURCE_ETSEC3_TX 15
331 1.1 matt #define ISOURCE_ETSEC3_RX 16
332 1.1 matt #define ISOURCE_ETSEC3_ERR 17
333 1.1 matt #define ISOURCE_ETSEC1_ERR 18
334 1.2 matt #define ISOURCE_ETSEC2_TX 19 /* !MPC8544/!MPC8536 */
335 1.2 matt #define ISOURCE_ETSEC2_RX 20 /* !MPC8544/!MPC8536 */
336 1.3 matt #define ISOURCE_ETSEC4_TX 21 /* !MPC8544/!MPC8536/!P20x0 */
337 1.3 matt #define ISOURCE_ETSEC4_RX 22 /* !MPC8544/!MPC8536/!P20x0 */
338 1.3 matt #define ISOURCE_ETSEC4_ERR 23 /* !MPC8544/!MPC8536/!P20x0 */
339 1.2 matt #define ISOURCE_ETSEC2_ERR 24 /* !MPC8544/!MPC8536 */
340 1.1 matt #define ISOURCE_FEC 25 /* MPC8572 */
341 1.2 matt #define ISOURCE_SATA2 25 /* MPC8536 */
342 1.1 matt #define ISOURCE_DUART 26
343 1.1 matt #define ISOURCE_I2C 27
344 1.1 matt #define ISOURCE_PERFMON 28
345 1.1 matt #define ISOURCE_SECURITY1 29
346 1.3 matt #define ISOURCE_CPM 30 /* MPC8555 */
347 1.3 matt #define ISOURCE_QEB_LOW 30 /* MPC8568 */
348 1.2 matt #define ISOURCE_USB2 30 /* MPC8536 */
349 1.2 matt #define ISOURCE_GPIO 31 /* MPC8572/!MPC8548 */
350 1.3 matt #define ISOURCE_QEB_PORT 31 /* MPC8568 */
351 1.3 matt #define ISOURCE_SRIO_EWPU 32 /* !MPC8548&!P20x0 */
352 1.3 matt #define ISOURCE_SRIO_ODBELL 33 /* !MPC8548&!P20x0 */
353 1.3 matt #define ISOURCE_SRIO_IDBELL 34 /* !MPC8548&!P20x0 */
354 1.1 matt #define ISOURCE_35 35
355 1.1 matt #define ISOURCE_36 36
356 1.3 matt #define ISOURCE_SRIO_OMU1 37 /* !MPC8548&!P20x0 */
357 1.3 matt #define ISOURCE_SRIO_IMU1 38 /* !MPC8548&!P20x0 */
358 1.3 matt #define ISOURCE_SRIO_OMU2 39 /* !MPC8548&!P20x0 */
359 1.3 matt #define ISOURCE_SRIO_IMU2 40 /* !MPC8548&!P20x0 */
360 1.1 matt #define ISOURCE_PME_GENERAL 41 /* MPC8572 */
361 1.3 matt #define ISOURCE_SECURITY2 42 /* MPC8572|MPC8536|P20x0 */
362 1.3 matt #define ISOURCE_SPI 43 /* MPC8536|P20x0 */
363 1.3 matt #define ISOURCE_QEB_IECC 43 /* MPC8568 */
364 1.2 matt #define ISOURCE_USB3 44 /* MPC8536 */
365 1.3 matt #define ISOURCE_QEB_MUECC 44 /* MPC8568 */
366 1.3 matt #define ISOURCE_TLU1 45 /* MPC8568/MPC8572 */
367 1.1 matt #define ISOURCE_46 46
368 1.3 matt #define ISOURCE_QEB_HIGH 47 /* MPC8548 */
369 1.1 matt #define ISOURCE_PME_CHAN1 48 /* MPC8572 */
370 1.1 matt #define ISOURCE_PME_CHAN2 49 /* MPC8572 */
371 1.1 matt #define ISOURCE_PME_CHAN3 50 /* MPC8572 */
372 1.1 matt #define ISOURCE_PME_CHAN4 51 /* MPC8572 */
373 1.3 matt #define ISOURCE_ETSEC1_PTP 52 /* MPC8572|MPC8536|P20x0 */
374 1.3 matt #define ISOURCE_ETSEC2_PTP 53 /* MPC8572|P20x0 */
375 1.3 matt #define ISOURCE_ETSEC3_PTP 54 /* MPC8572|MPC8536|P20x0 */
376 1.1 matt #define ISOURCE_ETSEC4_PTP 55 /* MPC8572 */
377 1.3 matt #define ISOURCE_ESDHC 56 /* MPC8536|P20x0 */
378 1.1 matt #define ISOURCE_57 57
379 1.2 matt #define ISOURCE_SATA1 58 /* MPC8536 */
380 1.1 matt #define ISOURCE_TLU2 59 /* MPC8572 */
381 1.3 matt #define ISOURCE_DMA2_CHAN1 60 /* MPC8572|P20x0 */
382 1.3 matt #define ISOURCE_DMA2_CHAN2 61 /* MPC8572|P20x0 */
383 1.3 matt #define ISOURCE_DMA2_CHAN3 62 /* MPC8572|P20x0 */
384 1.3 matt #define ISOURCE_DMA2_CHAN4 63 /* MPC8572|P20x0 */
385 1.1 matt
386 1.1 matt #endif /* _POWERPC_BOOKE_OPENPICREG_H_ */
387