]> rtime.felk.cvut.cz Git - arc.git/blob - arch/ppc/mpc55xx/drivers/mpc563m.h
Merge with 3ecb6845e742978827406b7da6f77dc350e6b55b
[arc.git] / arch / ppc / mpc55xx / drivers / mpc563m.h
1 /**************************************************************************/\r
2 /* FILE NAME: mpc563m.h                      COPYRIGHT (c) Freescale 2008 */\r
3 /* VERSION:  1.2                                  All Rights Reserved     */\r
4 /*                                                                        */\r
5 /* DESCRIPTION:                                                           */\r
6 /* This file contain all of the register and bit field definitions for    */\r
7 /* MPC563m.                                                               */\r
8 /*========================================================================*/\r
9 /* UPDATE HISTORY                                                         */\r
10 /* REV      AUTHOR      DATE       DESCRIPTION OF CHANGE                  */\r
11 /* ---   -----------  ---------    ---------------------                  */\r
12 /* 1.0   G. Emerson   31/OCT/07    Initial version.                       */\r
13 /* 1.1   G. Emerson   20/DEC/07    Added SYSDIV HLT HLTACK                */\r
14 /*                                 Added ESYNCR1 ESYNCR2 SYNFMMR          */\r
15 /* 1.2   G. Emerson   31/JAN/08    Change eMIOS channels so there are 24. */\r
16 /*                                 8 channels in the middle of the range  */\r
17 /*                                 do not exist                           */\r
18 /**************************************************************************/\r
19 /*>>>>NOTE! this file is auto-generated please do not edit it!<<<<*/\r
20 \r
21 #ifndef _MPC563M_H_\r
22 #define _MPC563M_H_\r
23 \r
24 #include "typedefs.h"\r
25 \r
26 #ifdef  __cplusplus\r
27 extern "C" {\r
28 #endif\r
29 \r
30 #ifdef __MWERKS__\r
31 #pragma push\r
32 #pragma ANSI_strict off\r
33 #endif\r
34 \r
35 /****************************************************************************/\r
36 /*                          MODULE : PBRIDGE Peripheral Bridge            */\r
37 /****************************************************************************/\r
38     struct PBRIDGE_tag {\r
39         union {\r
40             vuint32_t R;\r
41             struct {\r
42                 vuint32_t MBW0:1;\r
43                 vuint32_t MTR0:1;\r
44                 vuint32_t MTW0:1;\r
45                 vuint32_t MPL0:1;\r
46                 vuint32_t MBW1:1;\r
47                 vuint32_t MTR1:1;\r
48                 vuint32_t MTW1:1;\r
49                 vuint32_t MPL1:1;\r
50                 vuint32_t MBW2:1;\r
51                 vuint32_t MTR2:1;\r
52                 vuint32_t MTW2:1;\r
53                 vuint32_t MPL2:1;\r
54                 vuint32_t MBW3:1;\r
55                 vuint32_t MTR3:1;\r
56                 vuint32_t MTW3:1;\r
57                 vuint32_t MPL3:1;\r
58 \r
59                   vuint32_t:4;\r
60 \r
61                   vuint32_t:4;\r
62 \r
63                   vuint32_t:4;\r
64 \r
65                   vuint32_t:4;\r
66             } B;\r
67         } MPCR;                 /* Master Privilege Control Register */\r
68     };\r
69 /****************************************************************************/\r
70 /*                     MODULE : FMPLL                                       */\r
71 /****************************************************************************/\r
72     struct FMPLL_tag {\r
73         union {\r
74             vuint32_t R;\r
75             struct {\r
76                 vuint32_t:1;\r
77                 vuint32_t PREDIV:3;\r
78                 vuint32_t MFD:5;\r
79                   vuint32_t:1;\r
80                 vuint32_t RFD:3;\r
81                 vuint32_t LOCEN:1;\r
82                 vuint32_t LOLRE:1;\r
83                 vuint32_t LOCRE:1;\r
84                   vuint32_t:1;\r
85                 vuint32_t LOLIRQ:1;\r
86                 vuint32_t LOCIRQ:1;\r
87                   vuint32_t:13;\r
88             } B;\r
89         } SYNCR;\r
90 \r
91         union {\r
92             vuint32_t R;\r
93             struct {\r
94                 vuint32_t:22;\r
95                 vuint32_t LOLF:1;\r
96                 vuint32_t LOC:1;\r
97                 vuint32_t MODE:1;\r
98                 vuint32_t PLLSEL:1;\r
99                 vuint32_t PLLREF:1;\r
100                 vuint32_t LOCKS:1;\r
101                 vuint32_t LOCK:1;\r
102                 vuint32_t LOCF:1;\r
103                   vuint32_t:2;\r
104             } B;\r
105         } SYNSR;\r
106 \r
107         union {\r
108             vuint32_t R;\r
109             struct {\r
110                 vuint32_t EMODE:1;\r
111                 vuint32_t CLKCFG:3;\r
112                   vuint32_t:8;\r
113                 vuint32_t EPREDIV:4;\r
114                   vuint32_t:9;\r
115                 vuint32_t EMFD:7;\r
116             } B;\r
117         } ESYNCR1;\r
118 \r
119         union {\r
120             vuint32_t R;\r
121             struct {\r
122                 vuint32_t:8;\r
123                 vuint32_t LOCEN:1;\r
124                 vuint32_t LOLRE:1;\r
125                 vuint32_t LOCRE:1;\r
126                 vuint32_t LOLIRQ:1;\r
127                 vuint32_t LOCIRQ:1;\r
128                   vuint32_t:17;\r
129                 vuint32_t ERFD:2;\r
130             } B;\r
131         } ESYNCR2;\r
132 \r
133         int32_t FMPLL_reserved0[2];\r
134 \r
135         union {\r
136             vuint32_t R;\r
137             struct {\r
138                 vuint32_t:1;\r
139                 vuint32_t MODEN:1;\r
140                 vuint32_t MODSEL:1;\r
141                 vuint32_t MODPERIOD:13;\r
142                   vuint32_t:1;\r
143                 vuint32_t INC_STEP:15;\r
144             } B;\r
145         } SYNFMMR;\r
146     };\r
147 /****************************************************************************/\r
148 /*                     MODULE : External Bus Interface (EBI)                */\r
149 /****************************************************************************/\r
150     struct CS_tag {\r
151         union {                 /* Base Register Bank */\r
152             vuint32_t R;\r
153             struct {\r
154                 vuint32_t BA:17;\r
155                   vuint32_t:3;\r
156                 vuint32_t PS:1;\r
157                   vuint32_t:4;\r
158                 vuint32_t BL:1;\r
159                 vuint32_t WEBS:1;\r
160                 vuint32_t TBDIP:1;\r
161                   vuint32_t:2;\r
162                 vuint32_t BI:1;\r
163                 vuint32_t V:1;\r
164             } B;\r
165         } BR;\r
166 \r
167         union {                 /* Option Register Bank */\r
168             vuint32_t R;\r
169             struct {\r
170                 vuint32_t AM:17;\r
171                   vuint32_t:7;\r
172                 vuint32_t SCY:4;\r
173                   vuint32_t:1;\r
174                 vuint32_t BSCY:2;\r
175                   vuint32_t:1;\r
176             } B;\r
177         } OR;\r
178     };\r
179 \r
180     struct CAL_CS_tag {\r
181         union {                 /* Calibration Base Register Bank */\r
182             vuint32_t R;\r
183             struct {\r
184                 vuint32_t BA:17;\r
185                   vuint32_t:3;\r
186                 vuint32_t PS:1;\r
187                   vuint32_t:4;\r
188                 vuint32_t BL:1;\r
189                 vuint32_t WEBS:1;\r
190                 vuint32_t TBDIP:1;\r
191                   vuint32_t:2;\r
192                 vuint32_t BI:1;\r
193                 vuint32_t V:1;\r
194             } B;\r
195         } BR;\r
196 \r
197         union {                 /* Calibration Option Register Bank */\r
198             vuint32_t R;\r
199             struct {\r
200                 vuint32_t AM:17;\r
201                   vuint32_t:7;\r
202                 vuint32_t SCY:4;\r
203                   vuint32_t:1;\r
204                 vuint32_t BSCY:2;\r
205                   vuint32_t:1;\r
206             } B;\r
207         } OR;\r
208     };\r
209 \r
210     struct EBI_tag {\r
211         union {                 /* Module Configuration Register */\r
212             vuint32_t R;\r
213             struct {\r
214                 vuint32_t:5;\r
215                 vuint32_t SIZEEN:1;\r
216                 vuint32_t SIZE:2;\r
217                   vuint32_t:8;\r
218                 vuint32_t ACGE:1;\r
219                 vuint32_t EXTM:1;\r
220                 vuint32_t EARB:1;\r
221                 vuint32_t EARP:2;\r
222                   vuint32_t:4;\r
223                 vuint32_t MDIS:1;\r
224                   vuint32_t:5;\r
225                 vuint32_t DBM:1;\r
226             } B;\r
227         } MCR;\r
228 \r
229         uint32_t EBI_reserved1;\r
230 \r
231         union {                 /* Transfer Error Status Register */\r
232             vuint32_t R;\r
233             struct {\r
234                 vuint32_t:30;\r
235                 vuint32_t TEAF:1;\r
236                 vuint32_t BMTF:1;\r
237             } B;\r
238         } TESR;\r
239 \r
240         union {                 /* Bus Monitor Control Register */\r
241             vuint32_t R;\r
242             struct {\r
243                 vuint32_t:16;\r
244                 vuint32_t BMT:8;\r
245                 vuint32_t BME:1;\r
246                   vuint32_t:7;\r
247             } B;\r
248         } BMCR;\r
249 \r
250         struct CS_tag CS[4];\r
251 \r
252 /* Calibration registers */\r
253         uint32_t EBI_reserved2[4];\r
254         struct CAL_CS_tag CAL_CS[4];\r
255 \r
256     };\r
257 /****************************************************************************/\r
258 /*                     MODULE : FLASH                                       */\r
259 /****************************************************************************/\r
260     struct FLASH_tag {\r
261         union {                 /* Module Configuration Register */\r
262             vuint32_t R;\r
263             struct {\r
264                 vuint32_t:4;\r
265                 vuint32_t SIZE:4;\r
266                   vuint32_t:1;\r
267                 vuint32_t LAS:3;\r
268                   vuint32_t:3;\r
269                 vuint32_t MAS:1;\r
270                 vuint32_t EER:1;\r
271                 vuint32_t RWE:1;\r
272                 vuint32_t BBEPE:1;\r
273                 vuint32_t EPE:1;\r
274                 vuint32_t PEAS:1;\r
275                 vuint32_t DONE:1;\r
276                 vuint32_t PEG:1;\r
277 \r
278                   vuint32_t:1;\r
279                 vuint32_t PRD:1;        /* Include PRD Field */\r
280 \r
281                 vuint32_t STOP:1;\r
282                   vuint32_t:1;\r
283                 vuint32_t PGM:1;\r
284                 vuint32_t PSUS:1;\r
285                 vuint32_t ERS:1;\r
286                 vuint32_t ESUS:1;\r
287                 vuint32_t EHV:1;\r
288             } B;\r
289         } MCR;\r
290 \r
291         union {                 /* LML Register */\r
292             vuint32_t R;\r
293             struct {\r
294                 vuint32_t LME:1;\r
295                   vuint32_t:10;\r
296                 vuint32_t SLOCK:1;\r
297                 vuint32_t MLOCK:4;\r
298                 vuint32_t LLOCK:16;\r
299             } B;\r
300         } LMLR;\r
301 \r
302         union {                 /* HL Register */\r
303             vuint32_t R;\r
304             struct {\r
305                 vuint32_t HBE:1;\r
306                   vuint32_t:3;\r
307                 vuint32_t HBLOCK:28;\r
308             } B;\r
309         } HLR;\r
310 \r
311         union {                 /* SLML Register */\r
312             vuint32_t R;\r
313             struct {\r
314                 vuint32_t SLE:1;\r
315                   vuint32_t:10;\r
316                 vuint32_t SSLOCK:1;\r
317                 vuint32_t SMLOCK:4;\r
318                 vuint32_t SLLOCK:16;\r
319             } B;\r
320         } SLMLR;\r
321 \r
322         union {                 /* LMS Register */\r
323             vuint32_t R;\r
324             struct {\r
325                 vuint32_t:12;\r
326                 vuint32_t MSEL:4;\r
327                 vuint32_t LSEL:16;\r
328             } B;\r
329         } LMSR;\r
330 \r
331         union {\r
332             vuint32_t R;\r
333             struct {\r
334                 vuint32_t:4;\r
335                 vuint32_t HBSEL:28;\r
336             } B;\r
337         } HSR;\r
338 \r
339         union {\r
340             vuint32_t R;\r
341             struct {\r
342                 vuint32_t:10;\r
343                 vuint32_t ADDR:19;\r
344                   vuint32_t:3;\r
345             } B;\r
346         } AR;\r
347 \r
348         union {\r
349             vuint32_t R;\r
350             struct {\r
351 \r
352                 vuint32_t:11;\r
353 \r
354                 vuint32_t:1;\r
355 \r
356                 vuint32_t M3PFE:1;\r
357                 vuint32_t M2PFE:1;\r
358                 vuint32_t M1PFE:1;\r
359                 vuint32_t M0PFE:1;\r
360                 vuint32_t APC:3;\r
361                 vuint32_t WWSC:2;\r
362                 vuint32_t RWSC:3;\r
363 \r
364                   vuint32_t:1;\r
365                 vuint32_t DPFEN:1;\r
366                   vuint32_t:1;\r
367                 vuint32_t IPFEN:1;\r
368 \r
369                 vuint32_t PFLIM:3;\r
370                 vuint32_t BFEN:1;\r
371             } B;\r
372         } BIUCR;\r
373 \r
374         union {\r
375             vuint32_t R;\r
376             struct {\r
377 \r
378                 vuint32_t:22;\r
379 \r
380                 vuint32_t:2;\r
381 \r
382                 vuint32_t M3AP:2;\r
383                 vuint32_t M2AP:2;\r
384                 vuint32_t M1AP:2;\r
385                 vuint32_t M0AP:2;\r
386             } B;\r
387         } BIUAPR;\r
388 \r
389         union {\r
390             vuint32_t R;\r
391             struct {\r
392                 vuint32_t LBCFG:2;\r
393                   vuint32_t:30;\r
394             } B;\r
395         } BIUCR2;\r
396 \r
397     };\r
398 /****************************************************************************/\r
399 /*                     MODULE : SIU                                         */\r
400 /****************************************************************************/\r
401     struct SIU_tag {\r
402         int32_t SIU_reserved0;\r
403 \r
404         union {                 /* MCU ID Register */\r
405             vuint32_t R;\r
406             struct {\r
407                 vuint32_t PARTNUM:16;\r
408                 vuint32_t MASKNUM:16;\r
409             } B;\r
410         } MIDR;\r
411         int32_t SIU_reserved00;\r
412 \r
413         union {                 /* Reset Status Register */\r
414             vuint32_t R;\r
415             struct {\r
416                 vuint32_t PORS:1;\r
417                 vuint32_t ERS:1;\r
418                 vuint32_t LLRS:1;\r
419                 vuint32_t LCRS:1;\r
420                 vuint32_t WDRS:1;\r
421                 vuint32_t CRS:1;\r
422                   vuint32_t:8;\r
423                 vuint32_t SSRS:1;\r
424                 vuint32_t SERF:1;\r
425                 vuint32_t WKPCFG:1;\r
426                   vuint32_t:12;\r
427                 vuint32_t BOOTCFG:2;\r
428                 vuint32_t RGF:1;\r
429             } B;\r
430         } RSR;\r
431 \r
432         union {                 /* System Reset Control Register */\r
433             vuint32_t R;\r
434             struct {\r
435                 vuint32_t SSR:1;\r
436                 vuint32_t SER:1;\r
437                   vuint32_t:14;\r
438                 vuint32_t CRE:1;\r
439                   vuint32_t:15;\r
440             } B;\r
441         } SRCR;\r
442 \r
443         union {                 /* External Interrupt Status Register */\r
444             vuint32_t R;\r
445             struct {\r
446                 vuint32_t:16;\r
447                 vuint32_t EIF15:1;\r
448                 vuint32_t EIF14:1;\r
449                 vuint32_t EIF13:1;\r
450                 vuint32_t EIF12:1;\r
451                 vuint32_t EIF11:1;\r
452                 vuint32_t EIF10:1;\r
453                 vuint32_t EIF9:1;\r
454                 vuint32_t EIF8:1;\r
455                 vuint32_t EIF7:1;\r
456                 vuint32_t EIF6:1;\r
457                 vuint32_t EIF5:1;\r
458                 vuint32_t EIF4:1;\r
459                 vuint32_t EIF3:1;\r
460                 vuint32_t EIF2:1;\r
461                 vuint32_t EIF1:1;\r
462                 vuint32_t EIF0:1;\r
463             } B;\r
464         } EISR;\r
465 \r
466         union {                 /* DMA/Interrupt Request Enable Register */\r
467             vuint32_t R;\r
468             struct {\r
469                 vuint32_t:16;\r
470                 vuint32_t EIRE15:1;\r
471                 vuint32_t EIRE14:1;\r
472                 vuint32_t EIRE13:1;\r
473                 vuint32_t EIRE12:1;\r
474                 vuint32_t EIRE11:1;\r
475                 vuint32_t EIRE10:1;\r
476                 vuint32_t EIRE9:1;\r
477                 vuint32_t EIRE8:1;\r
478                 vuint32_t EIRE7:1;\r
479                 vuint32_t EIRE6:1;\r
480                 vuint32_t EIRE5:1;\r
481                 vuint32_t EIRE4:1;\r
482                 vuint32_t EIRE3:1;\r
483                 vuint32_t EIRE2:1;\r
484                 vuint32_t EIRE1:1;\r
485                 vuint32_t EIRE0:1;\r
486             } B;\r
487         } DIRER;\r
488 \r
489         union {                 /* DMA/Interrupt Select Register */\r
490             vuint32_t R;\r
491             struct {\r
492                 vuint32_t:28;\r
493                 vuint32_t DIRS3:1;\r
494                 vuint32_t DIRS2:1;\r
495                 vuint32_t DIRS1:1;\r
496                 vuint32_t DIRS0:1;\r
497             } B;\r
498         } DIRSR;\r
499 \r
500         union {                 /* Overrun Status Register */\r
501             vuint32_t R;\r
502             struct {\r
503                 vuint32_t:16;\r
504                 vuint32_t OVF15:1;\r
505                 vuint32_t OVF14:1;\r
506                 vuint32_t OVF13:1;\r
507                 vuint32_t OVF12:1;\r
508                 vuint32_t OVF11:1;\r
509                 vuint32_t OVF10:1;\r
510                 vuint32_t OVF9:1;\r
511                 vuint32_t OVF8:1;\r
512                 vuint32_t OVF7:1;\r
513                 vuint32_t OVF6:1;\r
514                 vuint32_t OVF5:1;\r
515                 vuint32_t OVF4:1;\r
516                 vuint32_t OVF3:1;\r
517                 vuint32_t OVF2:1;\r
518                 vuint32_t OVF1:1;\r
519                 vuint32_t OVF0:1;\r
520             } B;\r
521         } OSR;\r
522 \r
523         union {                 /* Overrun Request Enable Register */\r
524             vuint32_t R;\r
525             struct {\r
526                 vuint32_t:16;\r
527                 vuint32_t ORE15:1;\r
528                 vuint32_t ORE14:1;\r
529                 vuint32_t ORE13:1;\r
530                 vuint32_t ORE12:1;\r
531                 vuint32_t ORE11:1;\r
532                 vuint32_t ORE10:1;\r
533                 vuint32_t ORE9:1;\r
534                 vuint32_t ORE8:1;\r
535                 vuint32_t ORE7:1;\r
536                 vuint32_t ORE6:1;\r
537                 vuint32_t ORE5:1;\r
538                 vuint32_t ORE4:1;\r
539                 vuint32_t ORE3:1;\r
540                 vuint32_t ORE2:1;\r
541                 vuint32_t ORE1:1;\r
542                 vuint32_t ORE0:1;\r
543             } B;\r
544         } ORER;\r
545 \r
546         union {                 /* External IRQ Rising-Edge Event Enable Register */\r
547             vuint32_t R;\r
548             struct {\r
549                 vuint32_t:16;\r
550                 vuint32_t IREE15:1;\r
551                 vuint32_t IREE14:1;\r
552                 vuint32_t IREE13:1;\r
553                 vuint32_t IREE12:1;\r
554                 vuint32_t IREE11:1;\r
555                 vuint32_t IREE10:1;\r
556                 vuint32_t IREE9:1;\r
557                 vuint32_t IREE8:1;\r
558                 vuint32_t IREE7:1;\r
559                 vuint32_t IREE6:1;\r
560                 vuint32_t IREE5:1;\r
561                 vuint32_t IREE4:1;\r
562                 vuint32_t IREE3:1;\r
563                 vuint32_t IREE2:1;\r
564                 vuint32_t IREE1:1;\r
565                 vuint32_t IREE0:1;\r
566             } B;\r
567         } IREER;\r
568 \r
569         union {                 /* External IRQ Falling-Edge Event Enable Register */\r
570             vuint32_t R;\r
571             struct {\r
572                 vuint32_t:16;\r
573                 vuint32_t IFEE15:1;\r
574                 vuint32_t IFEE14:1;\r
575                 vuint32_t IFEE13:1;\r
576                 vuint32_t IFEE12:1;\r
577                 vuint32_t IFEE11:1;\r
578                 vuint32_t IFEE10:1;\r
579                 vuint32_t IFEE9:1;\r
580                 vuint32_t IFEE8:1;\r
581                 vuint32_t IFEE7:1;\r
582                 vuint32_t IFEE6:1;\r
583                 vuint32_t IFEE5:1;\r
584                 vuint32_t IFEE4:1;\r
585                 vuint32_t IFEE3:1;\r
586                 vuint32_t IFEE2:1;\r
587                 vuint32_t IFEE1:1;\r
588                 vuint32_t IFEE0:1;\r
589             } B;\r
590         } IFEER;\r
591 \r
592         union {                 /* External IRQ Digital Filter Register */\r
593             vuint32_t R;\r
594             struct {\r
595                 vuint32_t:28;\r
596                 vuint32_t DFL:4;\r
597             } B;\r
598         } IDFR;\r
599 \r
600         int32_t SIU_reserved1[3];\r
601 \r
602         union {                 /* Pad Configuration Registers */\r
603             vuint16_t R;\r
604             struct {\r
605                 vuint16_t:3;\r
606                 vuint16_t PA:3;\r
607                 vuint16_t OBE:1;\r
608                 vuint16_t IBE:1;\r
609                 vuint16_t DSC:2;\r
610                 vuint16_t ODE:1;\r
611                 vuint16_t HYS:1;\r
612                 vuint16_t SRC:2;\r
613                 vuint16_t WPE:1;\r
614                 vuint16_t WPS:1;\r
615             } B;\r
616         } PCR[512];\r
617 \r
618         int16_t SIU_reserved_0[224];\r
619 \r
620         union {                 /* GPIO Pin Data Output Registers */\r
621             vuint8_t R;\r
622             struct {\r
623                 vuint8_t:7;\r
624                 vuint8_t PDO:1;\r
625             } B;\r
626         } GPDO[256];\r
627 \r
628         int32_t SIU_reserved_3[64];\r
629 \r
630         union {                 /* GPIO Pin Data Input Registers */\r
631             vuint8_t R;\r
632             struct {\r
633                 vuint8_t:7;\r
634                 vuint8_t PDI:1;\r
635             } B;\r
636         } GPDI[256];\r
637 \r
638         union {                 /* IMUX Register */\r
639             vuint32_t R;\r
640             struct {\r
641                 vuint32_t TSEL5:2;\r
642                 vuint32_t TSEL4:2;\r
643                 vuint32_t TSEL3:2;\r
644                 vuint32_t TSEL2:2;\r
645                 vuint32_t TSEL1:2;\r
646                 vuint32_t TSEL0:2;\r
647                   vuint32_t:20;\r
648             } B;\r
649         } ETISR;\r
650 \r
651         union {                 /* IMUX Register */\r
652             vuint32_t R;\r
653             struct {\r
654                 vuint32_t ESEL15:2;\r
655                 vuint32_t ESEL14:2;\r
656                 vuint32_t ESEL13:2;\r
657                 vuint32_t ESEL12:2;\r
658                 vuint32_t ESEL11:2;\r
659                 vuint32_t ESEL10:2;\r
660                 vuint32_t ESEL9:2;\r
661                 vuint32_t ESEL8:2;\r
662                 vuint32_t ESEL7:2;\r
663                 vuint32_t ESEL6:2;\r
664                 vuint32_t ESEL5:2;\r
665                 vuint32_t ESEL4:2;\r
666                 vuint32_t ESEL3:2;\r
667                 vuint32_t ESEL2:2;\r
668                 vuint32_t ESEL1:2;\r
669                 vuint32_t ESEL0:2;\r
670             } B;\r
671         } EIISR;\r
672 \r
673         union {                 /* IMUX Register */\r
674             vuint32_t R;\r
675             struct {\r
676                 vuint32_t SINSELA:2;\r
677                 vuint32_t SSSELA:2;\r
678                 vuint32_t SCKSELA:2;\r
679                 vuint32_t TRIGSELA:2;\r
680                 vuint32_t SINSELB:2;\r
681                 vuint32_t SSSELB:2;\r
682                 vuint32_t SCKSELB:2;\r
683                 vuint32_t TRIGSELB:2;\r
684                 vuint32_t SINSELC:2;\r
685                 vuint32_t SSSELC:2;\r
686                 vuint32_t SCKSELC:2;\r
687                 vuint32_t TRIGSELC:2;\r
688                 vuint32_t SINSELD:2;\r
689                 vuint32_t SSSELD:2;\r
690                 vuint32_t SCKSELD:2;\r
691                 vuint32_t TRIGSELD:2;\r
692             } B;\r
693         } DISR;\r
694 \r
695         int32_t SIU_reserved2[29];\r
696 \r
697         union {                 /* Chip Configuration Register Register */\r
698             vuint32_t R;\r
699             struct {\r
700                 vuint32_t:14;\r
701                 vuint32_t MATCH:1;\r
702                 vuint32_t DISNEX:1;\r
703                   vuint32_t:16;\r
704             } B;\r
705         } CCR;\r
706 \r
707         union {                 /* External Clock Configuration Register Register */\r
708             vuint32_t R;\r
709             struct {\r
710                 vuint32_t:18;\r
711                 vuint32_t ENGDIV:6;\r
712                   vuint32_t:4;\r
713                 vuint32_t EBTS:1;\r
714                   vuint32_t:1;\r
715                 vuint32_t EBDF:2;\r
716             } B;\r
717         } ECCR;\r
718 \r
719         union {\r
720             vuint32_t R;\r
721         } CARH;\r
722 \r
723         union {\r
724             vuint32_t R;\r
725         } CARL;\r
726 \r
727         union {\r
728             vuint32_t R;\r
729         } CBRH;\r
730 \r
731         union {\r
732             vuint32_t R;\r
733         } CBRL;\r
734 \r
735         int32_t SIU_reserved3[2];\r
736 \r
737         union {                 /* System Clock Register */\r
738             vuint32_t R;\r
739             struct {\r
740                 vuint32_t:27;\r
741                 vuint32_t BYPASS:1;\r
742                 vuint32_t SYSCLKDIV:2;\r
743                   vuint32_t:2;\r
744             } B;\r
745         } SYSDIV;\r
746 \r
747         union {\r
748             vuint32_t R;\r
749 \r
750         } HLT;\r
751 \r
752         union {\r
753             vuint32_t R;\r
754         } HLTACK;\r
755     };\r
756 /****************************************************************************/\r
757 /*                          MODULE : EMIOS                                  */\r
758 /****************************************************************************/\r
759     struct EMIOS_tag {\r
760         union {\r
761             vuint32_t R;\r
762             struct {\r
763                 vuint32_t:1;\r
764                 vuint32_t MDIS:1;\r
765                 vuint32_t FRZ:1;\r
766                 vuint32_t GTBE:1;\r
767                 vuint32_t ETB:1;\r
768                 vuint32_t GPREN:1;\r
769                   vuint32_t:6;\r
770                 vuint32_t SRV:4;\r
771                 vuint32_t GPRE:8;\r
772                   vuint32_t:8;\r
773             } B;\r
774         } MCR;                  /* Module Configuration Register */\r
775 \r
776         union {\r
777             vuint32_t R;\r
778             struct {\r
779                 vuint32_t:8;\r
780                 vuint32_t F23:1;\r
781                 vuint32_t F22:1;\r
782                 vuint32_t F21:1;\r
783                 vuint32_t F20:1;\r
784                 vuint32_t F19:1;\r
785                 vuint32_t F18:1;\r
786                 vuint32_t F17:1;\r
787                 vuint32_t F16:1;\r
788                 vuint32_t F15:1;\r
789                 vuint32_t F14:1;\r
790                 vuint32_t F13:1;\r
791                 vuint32_t F12:1;\r
792                 vuint32_t F11:1;\r
793                 vuint32_t F10:1;\r
794                 vuint32_t F9:1;\r
795                 vuint32_t F8:1;\r
796                 vuint32_t F7:1;\r
797                 vuint32_t F6:1;\r
798                 vuint32_t F5:1;\r
799                 vuint32_t F4:1;\r
800                 vuint32_t F3:1;\r
801                 vuint32_t F2:1;\r
802                 vuint32_t F1:1;\r
803                 vuint32_t F0:1;\r
804             } B;\r
805         } GFR;                  /* Global FLAG Register */\r
806 \r
807         union {\r
808             vuint32_t R;\r
809             struct {\r
810                 vuint32_t:8;\r
811                 vuint32_t OU23:1;\r
812                 vuint32_t OU22:1;\r
813                 vuint32_t OU21:1;\r
814                 vuint32_t OU20:1;\r
815                 vuint32_t OU19:1;\r
816                 vuint32_t OU18:1;\r
817                 vuint32_t OU17:1;\r
818                 vuint32_t OU16:1;\r
819                 vuint32_t OU15:1;\r
820                 vuint32_t OU14:1;\r
821                 vuint32_t OU13:1;\r
822                 vuint32_t OU12:1;\r
823                 vuint32_t OU11:1;\r
824                 vuint32_t OU10:1;\r
825                 vuint32_t OU9:1;\r
826                 vuint32_t OU8:1;\r
827                 vuint32_t OU7:1;\r
828                 vuint32_t OU6:1;\r
829                 vuint32_t OU5:1;\r
830                 vuint32_t OU4:1;\r
831                 vuint32_t OU3:1;\r
832                 vuint32_t OU2:1;\r
833                 vuint32_t OU1:1;\r
834                 vuint32_t OU0:1;\r
835             } B;\r
836         } OUDR;                 /* Output Update Disable Register */\r
837 \r
838         uint32_t emios_reserved[5];\r
839 \r
840         struct {\r
841             union {\r
842                 vuint32_t R;    /* Channel A Data Register */\r
843             } CADR;\r
844 \r
845             union {\r
846                 vuint32_t R;    /* Channel B Data Register */\r
847             } CBDR;\r
848 \r
849             union {\r
850                 vuint32_t R;    /* Channel Counter Register */\r
851             } CCNTR;\r
852 \r
853             union {\r
854                 vuint32_t R;\r
855                 struct {\r
856                     vuint32_t FREN:1;\r
857                     vuint32_t ODIS:1;\r
858                     vuint32_t ODISSL:2;\r
859                     vuint32_t UCPRE:2;\r
860                     vuint32_t UCPREN:1;\r
861                     vuint32_t DMA:1;\r
862                       vuint32_t:1;\r
863                     vuint32_t IF:4;\r
864                     vuint32_t FCK:1;\r
865                     vuint32_t FEN:1;\r
866                       vuint32_t:3;\r
867                     vuint32_t FORCMA:1;\r
868                     vuint32_t FORCMB:1;\r
869                       vuint32_t:1;\r
870                     vuint32_t BSL:2;\r
871                     vuint32_t EDSEL:1;\r
872                     vuint32_t EDPOL:1;\r
873                     vuint32_t MODE:7;\r
874                 } B;\r
875             } CCR;              /* Channel Control Register */\r
876 \r
877             union {\r
878                 vuint32_t R;\r
879                 struct {\r
880                     vuint32_t OVR:1;\r
881                       vuint32_t:15;\r
882                     vuint32_t OVFL:1;\r
883                       vuint32_t:12;\r
884                     vuint32_t UCIN:1;\r
885                     vuint32_t UCOUT:1;\r
886                     vuint32_t FLAG:1;\r
887                 } B;\r
888             } CSR;              /* Channel Status Register */\r
889             uint32_t emios_channel_reserved[3];\r
890 \r
891         } CH[24];\r
892 \r
893     };\r
894 /****************************************************************************/\r
895 /*                              MODULE :ETPU                                */\r
896 /****************************************************************************/\r
897 \r
898 /***************************Configuration Registers**************************/\r
899 \r
900     struct ETPU_tag {\r
901         union {                 /* MODULE CONFIGURATION REGISTER */\r
902             vuint32_t R;\r
903             struct {\r
904                 vuint32_t GEC:1;        /* Global Exception Clear */\r
905                   vuint32_t:3;\r
906                 vuint32_t MGE1:1;       /* Microcode Global Exception-ETPU_A */\r
907 \r
908                   vuint32_t:1;  /* For single ETPU implementations */\r
909 \r
910                 vuint32_t ILF1:1;       /* Illegal Instruction Flag-ETPU_A */\r
911 \r
912                   vuint32_t:1;  /* For single ETPU implementations */\r
913 \r
914                   vuint32_t:3;\r
915                 vuint32_t SCMSIZE:5;    /* Shared Code Memory size */\r
916                   vuint32_t:5;\r
917                 vuint32_t SCMMISF:1;    /* SCM MISC Flag */\r
918                 vuint32_t SCMMISEN:1;   /* SCM MISC Enable */\r
919                   vuint32_t:2;\r
920                 vuint32_t VIS:1;        /* SCM Visability */\r
921                   vuint32_t:5;\r
922                 vuint32_t GTBE:1;       /* Global Time Base Enable */\r
923             } B;\r
924         } MCR;\r
925 \r
926         union {                 /* COHERENT DUAL-PARAMETER CONTROL */\r
927             vuint32_t R;\r
928             struct {\r
929                 vuint32_t STS:1;        /* Start Status bit */\r
930                 vuint32_t CTBASE:5;     /* Channel Transfer Base */\r
931                 vuint32_t PBASE:10;     /* Parameter Buffer Base Address */\r
932                 vuint32_t PWIDTH:1;     /* Parameter Width */\r
933                 vuint32_t PARAM0:7;     /* Channel Parameter 0 */\r
934                 vuint32_t WR:1;\r
935                 vuint32_t PARAM1:7;     /* Channel Parameter 1 */\r
936             } B;\r
937         } CDCR;\r
938 \r
939         uint32_t etpu_reserved1;\r
940 \r
941         union {                 /* MISC Compare Register */\r
942             vuint32_t R;\r
943         } MISCCMPR;\r
944 \r
945         union {                 /* SCM off-range Date Register */\r
946             vuint32_t R;\r
947         } SCMOFFDATAR;\r
948 \r
949         union {                 /* ETPU_A Configuration Register */\r
950             vuint32_t R;\r
951             struct {\r
952                 vuint32_t FEND:1;       /* Force END */\r
953                 vuint32_t MDIS:1;       /* Low power Stop */\r
954                   vuint32_t:1;\r
955                 vuint32_t STF:1;        /* Stop Flag */\r
956                   vuint32_t:4;\r
957                 vuint32_t HLTF:1;       /* Halt Mode Flag */\r
958                   vuint32_t:4;\r
959                 vuint32_t FPSCK:3;      /* Filter Prescaler Clock Control */\r
960                 vuint32_t CDFC:2;\r
961                   vuint32_t:9;\r
962                 vuint32_t ETB:5;        /* Entry Table Base */\r
963             } B;\r
964         } ECR_A;\r
965         uint32_t etpu_reserved3;        /* For single ETPU implementations */\r
966 \r
967         uint32_t etpu_reserved4;\r
968 \r
969         union {                 /* ETPU_A Timebase Configuration Register */\r
970             vuint32_t R;\r
971             struct {\r
972                 vuint32_t TCR2CTL:3;    /* TCR2 Clock/Gate Control */\r
973                 vuint32_t TCRCF:2;      /* TCRCLK Signal Filter Control */\r
974                   vuint32_t:1;\r
975                 vuint32_t AM:1; /* Angle Mode */\r
976                   vuint32_t:3;\r
977                 vuint32_t TCR2P:6;      /* TCR2 Prescaler Control */\r
978                 vuint32_t TCR1CTL:2;    /* TCR1 Clock/Gate Control */\r
979                   vuint32_t:6;\r
980                 vuint32_t TCR1P:8;      /* TCR1 Prescaler Control */\r
981             } B;\r
982         } TBCR_A;\r
983 \r
984         union {                 /* ETPU_A TCR1 Visibility Register */\r
985             vuint32_t R;\r
986         } TB1R_A;\r
987 \r
988         union {                 /* ETPU_A TCR2 Visibility Register */\r
989             vuint32_t R;\r
990         } TB2R_A;\r
991 \r
992         union {                 /* ETPU_A STAC Configuration Register */\r
993             vuint32_t R;\r
994             struct {\r
995                 vuint32_t REN1:1;       /* Resource Enable TCR1 */\r
996                 vuint32_t RSC1:1;       /* Resource Control TCR1 */\r
997                   vuint32_t:2;\r
998                 vuint32_t SERVER_ID1:4;\r
999                   vuint32_t:4;\r
1000                 vuint32_t SRV1:4;       /* Resource Server Slot */\r
1001                 vuint32_t REN2:1;       /* Resource Enable TCR2 */\r
1002                 vuint32_t RSC2:1;       /* Resource Control TCR2 */\r
1003                   vuint32_t:2;\r
1004                 vuint32_t SERVER_ID2:4;\r
1005                   vuint32_t:4;\r
1006                 vuint32_t SRV2:4;       /* Resource Server Slot */\r
1007             } B;\r
1008         } REDCR_A;\r
1009 \r
1010         uint32_t etpu_reserved5[4];\r
1011         uint32_t etpu_reserved6[4];     /* For single ETPU implementations */\r
1012 \r
1013         uint32_t etpu_reserved7[108];\r
1014 \r
1015 /*****************************Status and Control Registers**************************/\r
1016 \r
1017         union {                 /* ETPU_A Channel Interrut Status */\r
1018             vuint32_t R;\r
1019             struct {\r
1020                 vuint32_t CIS31:1;      /* Channel 31 Interrut Status */\r
1021                 vuint32_t CIS30:1;      /* Channel 30 Interrut Status */\r
1022                 vuint32_t CIS29:1;      /* Channel 29 Interrut Status */\r
1023                 vuint32_t CIS28:1;      /* Channel 28 Interrut Status */\r
1024                 vuint32_t CIS27:1;      /* Channel 27 Interrut Status */\r
1025                 vuint32_t CIS26:1;      /* Channel 26 Interrut Status */\r
1026                 vuint32_t CIS25:1;      /* Channel 25 Interrut Status */\r
1027                 vuint32_t CIS24:1;      /* Channel 24 Interrut Status */\r
1028                 vuint32_t CIS23:1;      /* Channel 23 Interrut Status */\r
1029                 vuint32_t CIS22:1;      /* Channel 22 Interrut Status */\r
1030                 vuint32_t CIS21:1;      /* Channel 21 Interrut Status */\r
1031                 vuint32_t CIS20:1;      /* Channel 20 Interrut Status */\r
1032                 vuint32_t CIS19:1;      /* Channel 19 Interrut Status */\r
1033                 vuint32_t CIS18:1;      /* Channel 18 Interrut Status */\r
1034                 vuint32_t CIS17:1;      /* Channel 17 Interrut Status */\r
1035                 vuint32_t CIS16:1;      /* Channel 16 Interrut Status */\r
1036                 vuint32_t CIS15:1;      /* Channel 15 Interrut Status */\r
1037                 vuint32_t CIS14:1;      /* Channel 14 Interrut Status */\r
1038                 vuint32_t CIS13:1;      /* Channel 13 Interrut Status */\r
1039                 vuint32_t CIS12:1;      /* Channel 12 Interrut Status */\r
1040                 vuint32_t CIS11:1;      /* Channel 11 Interrut Status */\r
1041                 vuint32_t CIS10:1;      /* Channel 10 Interrut Status */\r
1042                 vuint32_t CIS9:1;       /* Channel 9 Interrut Status */\r
1043                 vuint32_t CIS8:1;       /* Channel 8 Interrut Status */\r
1044                 vuint32_t CIS7:1;       /* Channel 7 Interrut Status */\r
1045                 vuint32_t CIS6:1;       /* Channel 6 Interrut Status */\r
1046                 vuint32_t CIS5:1;       /* Channel 5 Interrut Status */\r
1047                 vuint32_t CIS4:1;       /* Channel 4 Interrut Status */\r
1048                 vuint32_t CIS3:1;       /* Channel 3 Interrut Status */\r
1049                 vuint32_t CIS2:1;       /* Channel 2 Interrut Status */\r
1050                 vuint32_t CIS1:1;       /* Channel 1 Interrut Status */\r
1051                 vuint32_t CIS0:1;       /* Channel 0 Interrut Status */\r
1052             } B;\r
1053         } CISR_A;\r
1054         uint32_t etpu_reserved8;        /* For single ETPU implementations */\r
1055 \r
1056         uint32_t etpu_reserved9[2];\r
1057 \r
1058         union {                 /* ETPU_A Data Transfer Request Status */\r
1059             vuint32_t R;\r
1060             struct {\r
1061                 vuint32_t DTRS31:1;     /* Channel 31 Data Transfer Request Status */\r
1062                 vuint32_t DTRS30:1;     /* Channel 30 Data Transfer Request Status */\r
1063                 vuint32_t DTRS29:1;     /* Channel 29 Data Transfer Request Status */\r
1064                 vuint32_t DTRS28:1;     /* Channel 28 Data Transfer Request Status */\r
1065                 vuint32_t DTRS27:1;     /* Channel 27 Data Transfer Request Status */\r
1066                 vuint32_t DTRS26:1;     /* Channel 26 Data Transfer Request Status */\r
1067                 vuint32_t DTRS25:1;     /* Channel 25 Data Transfer Request Status */\r
1068                 vuint32_t DTRS24:1;     /* Channel 24 Data Transfer Request Status */\r
1069                 vuint32_t DTRS23:1;     /* Channel 23 Data Transfer Request Status */\r
1070                 vuint32_t DTRS22:1;     /* Channel 22 Data Transfer Request Status */\r
1071                 vuint32_t DTRS21:1;     /* Channel 21 Data Transfer Request Status */\r
1072                 vuint32_t DTRS20:1;     /* Channel 20 Data Transfer Request Status */\r
1073                 vuint32_t DTRS19:1;     /* Channel 19 Data Transfer Request Status */\r
1074                 vuint32_t DTRS18:1;     /* Channel 18 Data Transfer Request Status */\r
1075                 vuint32_t DTRS17:1;     /* Channel 17 Data Transfer Request Status */\r
1076                 vuint32_t DTRS16:1;     /* Channel 16 Data Transfer Request Status */\r
1077                 vuint32_t DTRS15:1;     /* Channel 15 Data Transfer Request Status */\r
1078                 vuint32_t DTRS14:1;     /* Channel 14 Data Transfer Request Status */\r
1079                 vuint32_t DTRS13:1;     /* Channel 13 Data Transfer Request Status */\r
1080                 vuint32_t DTRS12:1;     /* Channel 12 Data Transfer Request Status */\r
1081                 vuint32_t DTRS11:1;     /* Channel 11 Data Transfer Request Status */\r
1082                 vuint32_t DTRS10:1;     /* Channel 10 Data Transfer Request Status */\r
1083                 vuint32_t DTRS9:1;      /* Channel 9 Data Transfer Request Status */\r
1084                 vuint32_t DTRS8:1;      /* Channel 8 Data Transfer Request Status */\r
1085                 vuint32_t DTRS7:1;      /* Channel 7 Data Transfer Request Status */\r
1086                 vuint32_t DTRS6:1;      /* Channel 6 Data Transfer Request Status */\r
1087                 vuint32_t DTRS5:1;      /* Channel 5 Data Transfer Request Status */\r
1088                 vuint32_t DTRS4:1;      /* Channel 4 Data Transfer Request Status */\r
1089                 vuint32_t DTRS3:1;      /* Channel 3 Data Transfer Request Status */\r
1090                 vuint32_t DTRS2:1;      /* Channel 2 Data Transfer Request Status */\r
1091                 vuint32_t DTRS1:1;      /* Channel 1 Data Transfer Request Status */\r
1092                 vuint32_t DTRS0:1;      /* Channel 0 Data Transfer Request Status */\r
1093             } B;\r
1094         } CDTRSR_A;\r
1095         uint32_t etpu_reserved10;       /* For single ETPU implementations */\r
1096 \r
1097         uint32_t etpu_reserved11[2];\r
1098 \r
1099         union {                 /* ETPU_A Interruput Overflow Status */\r
1100             vuint32_t R;\r
1101             struct {\r
1102                 vuint32_t CIOS31:1;     /* Channel 31 Interruput Overflow Status */\r
1103                 vuint32_t CIOS30:1;     /* Channel 30 Interruput Overflow Status */\r
1104                 vuint32_t CIOS29:1;     /* Channel 29 Interruput Overflow Status */\r
1105                 vuint32_t CIOS28:1;     /* Channel 28 Interruput Overflow Status */\r
1106                 vuint32_t CIOS27:1;     /* Channel 27 Interruput Overflow Status */\r
1107                 vuint32_t CIOS26:1;     /* Channel 26 Interruput Overflow Status */\r
1108                 vuint32_t CIOS25:1;     /* Channel 25 Interruput Overflow Status */\r
1109                 vuint32_t CIOS24:1;     /* Channel 24 Interruput Overflow Status */\r
1110                 vuint32_t CIOS23:1;     /* Channel 23 Interruput Overflow Status */\r
1111                 vuint32_t CIOS22:1;     /* Channel 22 Interruput Overflow Status */\r
1112                 vuint32_t CIOS21:1;     /* Channel 21 Interruput Overflow Status */\r
1113                 vuint32_t CIOS20:1;     /* Channel 20 Interruput Overflow Status */\r
1114                 vuint32_t CIOS19:1;     /* Channel 19 Interruput Overflow Status */\r
1115                 vuint32_t CIOS18:1;     /* Channel 18 Interruput Overflow Status */\r
1116                 vuint32_t CIOS17:1;     /* Channel 17 Interruput Overflow Status */\r
1117                 vuint32_t CIOS16:1;     /* Channel 16 Interruput Overflow Status */\r
1118                 vuint32_t CIOS15:1;     /* Channel 15 Interruput Overflow Status */\r
1119                 vuint32_t CIOS14:1;     /* Channel 14 Interruput Overflow Status */\r
1120                 vuint32_t CIOS13:1;     /* Channel 13 Interruput Overflow Status */\r
1121                 vuint32_t CIOS12:1;     /* Channel 12 Interruput Overflow Status */\r
1122                 vuint32_t CIOS11:1;     /* Channel 11 Interruput Overflow Status */\r
1123                 vuint32_t CIOS10:1;     /* Channel 10 Interruput Overflow Status */\r
1124                 vuint32_t CIOS9:1;      /* Channel 9 Interruput Overflow Status */\r
1125                 vuint32_t CIOS8:1;      /* Channel 8 Interruput Overflow Status */\r
1126                 vuint32_t CIOS7:1;      /* Channel 7 Interruput Overflow Status */\r
1127                 vuint32_t CIOS6:1;      /* Channel 6 Interruput Overflow Status */\r
1128                 vuint32_t CIOS5:1;      /* Channel 5 Interruput Overflow Status */\r
1129                 vuint32_t CIOS4:1;      /* Channel 4 Interruput Overflow Status */\r
1130                 vuint32_t CIOS3:1;      /* Channel 3 Interruput Overflow Status */\r
1131                 vuint32_t CIOS2:1;      /* Channel 2 Interruput Overflow Status */\r
1132                 vuint32_t CIOS1:1;      /* Channel 1 Interruput Overflow Status */\r
1133                 vuint32_t CIOS0:1;      /* Channel 0 Interruput Overflow Status */\r
1134             } B;\r
1135         } CIOSR_A;\r
1136         uint32_t etpu_reserved12;       /* For single ETPU implementations */\r
1137 \r
1138         uint32_t etpu_reserved13[2];\r
1139 \r
1140         union {                 /* ETPU_A Data Transfer Overflow Status */\r
1141             vuint32_t R;\r
1142             struct {\r
1143                 vuint32_t DTROS31:1;    /* Channel 31 Data Transfer Overflow Status */\r
1144                 vuint32_t DTROS30:1;    /* Channel 30 Data Transfer Overflow Status */\r
1145                 vuint32_t DTROS29:1;    /* Channel 29 Data Transfer Overflow Status */\r
1146                 vuint32_t DTROS28:1;    /* Channel 28 Data Transfer Overflow Status */\r
1147                 vuint32_t DTROS27:1;    /* Channel 27 Data Transfer Overflow Status */\r
1148                 vuint32_t DTROS26:1;    /* Channel 26 Data Transfer Overflow Status */\r
1149                 vuint32_t DTROS25:1;    /* Channel 25 Data Transfer Overflow Status */\r
1150                 vuint32_t DTROS24:1;    /* Channel 24 Data Transfer Overflow Status */\r
1151                 vuint32_t DTROS23:1;    /* Channel 23 Data Transfer Overflow Status */\r
1152                 vuint32_t DTROS22:1;    /* Channel 22 Data Transfer Overflow Status */\r
1153                 vuint32_t DTROS21:1;    /* Channel 21 Data Transfer Overflow Status */\r
1154                 vuint32_t DTROS20:1;    /* Channel 20 Data Transfer Overflow Status */\r
1155                 vuint32_t DTROS19:1;    /* Channel 19 Data Transfer Overflow Status */\r
1156                 vuint32_t DTROS18:1;    /* Channel 18 Data Transfer Overflow Status */\r
1157                 vuint32_t DTROS17:1;    /* Channel 17 Data Transfer Overflow Status */\r
1158                 vuint32_t DTROS16:1;    /* Channel 16 Data Transfer Overflow Status */\r
1159                 vuint32_t DTROS15:1;    /* Channel 15 Data Transfer Overflow Status */\r
1160                 vuint32_t DTROS14:1;    /* Channel 14 Data Transfer Overflow Status */\r
1161                 vuint32_t DTROS13:1;    /* Channel 13 Data Transfer Overflow Status */\r
1162                 vuint32_t DTROS12:1;    /* Channel 12 Data Transfer Overflow Status */\r
1163                 vuint32_t DTROS11:1;    /* Channel 11 Data Transfer Overflow Status */\r
1164                 vuint32_t DTROS10:1;    /* Channel 10 Data Transfer Overflow Status */\r
1165                 vuint32_t DTROS9:1;     /* Channel 9 Data Transfer Overflow Status */\r
1166                 vuint32_t DTROS8:1;     /* Channel 8 Data Transfer Overflow Status */\r
1167                 vuint32_t DTROS7:1;     /* Channel 7 Data Transfer Overflow Status */\r
1168                 vuint32_t DTROS6:1;     /* Channel 6 Data Transfer Overflow Status */\r
1169                 vuint32_t DTROS5:1;     /* Channel 5 Data Transfer Overflow Status */\r
1170                 vuint32_t DTROS4:1;     /* Channel 4 Data Transfer Overflow Status */\r
1171                 vuint32_t DTROS3:1;     /* Channel 3 Data Transfer Overflow Status */\r
1172                 vuint32_t DTROS2:1;     /* Channel 2 Data Transfer Overflow Status */\r
1173                 vuint32_t DTROS1:1;     /* Channel 1 Data Transfer Overflow Status */\r
1174                 vuint32_t DTROS0:1;     /* Channel 0 Data Transfer Overflow Status */\r
1175             } B;\r
1176         } CDTROSR_A;\r
1177         uint32_t etpu_reserved14;       /* For single ETPU implementations */\r
1178 \r
1179         uint32_t etpu_reserved15[2];\r
1180 \r
1181         union {                 /* ETPU_A Channel Interruput Enable */\r
1182             vuint32_t R;\r
1183             struct {\r
1184                 vuint32_t CIE31:1;      /* Channel 31 Interruput Enable */\r
1185                 vuint32_t CIE30:1;      /* Channel 30 Interruput Enable */\r
1186                 vuint32_t CIE29:1;      /* Channel 29 Interruput Enable */\r
1187                 vuint32_t CIE28:1;      /* Channel 28 Interruput Enable */\r
1188                 vuint32_t CIE27:1;      /* Channel 27 Interruput Enable */\r
1189                 vuint32_t CIE26:1;      /* Channel 26 Interruput Enable */\r
1190                 vuint32_t CIE25:1;      /* Channel 25 Interruput Enable */\r
1191                 vuint32_t CIE24:1;      /* Channel 24 Interruput Enable */\r
1192                 vuint32_t CIE23:1;      /* Channel 23 Interruput Enable */\r
1193                 vuint32_t CIE22:1;      /* Channel 22 Interruput Enable */\r
1194                 vuint32_t CIE21:1;      /* Channel 21 Interruput Enable */\r
1195                 vuint32_t CIE20:1;      /* Channel 20 Interruput Enable */\r
1196                 vuint32_t CIE19:1;      /* Channel 19 Interruput Enable */\r
1197                 vuint32_t CIE18:1;      /* Channel 18 Interruput Enable */\r
1198                 vuint32_t CIE17:1;      /* Channel 17 Interruput Enable */\r
1199                 vuint32_t CIE16:1;      /* Channel 16 Interruput Enable */\r
1200                 vuint32_t CIE15:1;      /* Channel 15 Interruput Enable */\r
1201                 vuint32_t CIE14:1;      /* Channel 14 Interruput Enable */\r
1202                 vuint32_t CIE13:1;      /* Channel 13 Interruput Enable */\r
1203                 vuint32_t CIE12:1;      /* Channel 12 Interruput Enable */\r
1204                 vuint32_t CIE11:1;      /* Channel 11 Interruput Enable */\r
1205                 vuint32_t CIE10:1;      /* Channel 10 Interruput Enable */\r
1206                 vuint32_t CIE9:1;       /* Channel 9 Interruput Enable */\r
1207                 vuint32_t CIE8:1;       /* Channel 8 Interruput Enable */\r
1208                 vuint32_t CIE7:1;       /* Channel 7 Interruput Enable */\r
1209                 vuint32_t CIE6:1;       /* Channel 6 Interruput Enable */\r
1210                 vuint32_t CIE5:1;       /* Channel 5 Interruput Enable */\r
1211                 vuint32_t CIE4:1;       /* Channel 4 Interruput Enable */\r
1212                 vuint32_t CIE3:1;       /* Channel 3 Interruput Enable */\r
1213                 vuint32_t CIE2:1;       /* Channel 2 Interruput Enable */\r
1214                 vuint32_t CIE1:1;       /* Channel 1 Interruput Enable */\r
1215                 vuint32_t CIE0:1;       /* Channel 0 Interruput Enable */\r
1216             } B;\r
1217         } CIER_A;\r
1218         uint32_t etpu_reserved16;       /* For single ETPU implementations */\r
1219 \r
1220         uint32_t etpu_reserved17[2];\r
1221 \r
1222         union {                 /* ETPU_A Channel Data Transfer Request Enable */\r
1223             vuint32_t R;\r
1224             struct {\r
1225                 vuint32_t DTRE31:1;     /* Channel 31 Data Transfer Request Enable */\r
1226                 vuint32_t DTRE30:1;     /* Channel 30 Data Transfer Request Enable */\r
1227                 vuint32_t DTRE29:1;     /* Channel 29 Data Transfer Request Enable */\r
1228                 vuint32_t DTRE28:1;     /* Channel 28 Data Transfer Request Enable */\r
1229                 vuint32_t DTRE27:1;     /* Channel 27 Data Transfer Request Enable */\r
1230                 vuint32_t DTRE26:1;     /* Channel 26 Data Transfer Request Enable */\r
1231                 vuint32_t DTRE25:1;     /* Channel 25 Data Transfer Request Enable */\r
1232                 vuint32_t DTRE24:1;     /* Channel 24 Data Transfer Request Enable */\r
1233                 vuint32_t DTRE23:1;     /* Channel 23 Data Transfer Request Enable */\r
1234                 vuint32_t DTRE22:1;     /* Channel 22 Data Transfer Request Enable */\r
1235                 vuint32_t DTRE21:1;     /* Channel 21 Data Transfer Request Enable */\r
1236                 vuint32_t DTRE20:1;     /* Channel 20 Data Transfer Request Enable */\r
1237                 vuint32_t DTRE19:1;     /* Channel 19 Data Transfer Request Enable */\r
1238                 vuint32_t DTRE18:1;     /* Channel 18 Data Transfer Request Enable */\r
1239                 vuint32_t DTRE17:1;     /* Channel 17 Data Transfer Request Enable */\r
1240                 vuint32_t DTRE16:1;     /* Channel 16 Data Transfer Request Enable */\r
1241                 vuint32_t DTRE15:1;     /* Channel 15 Data Transfer Request Enable */\r
1242                 vuint32_t DTRE14:1;     /* Channel 14 Data Transfer Request Enable */\r
1243                 vuint32_t DTRE13:1;     /* Channel 13 Data Transfer Request Enable */\r
1244                 vuint32_t DTRE12:1;     /* Channel 12 Data Transfer Request Enable */\r
1245                 vuint32_t DTRE11:1;     /* Channel 11 Data Transfer Request Enable */\r
1246                 vuint32_t DTRE10:1;     /* Channel 10 Data Transfer Request Enable */\r
1247                 vuint32_t DTRE9:1;      /* Channel 9 Data Transfer Request Enable */\r
1248                 vuint32_t DTRE8:1;      /* Channel 8 Data Transfer Request Enable */\r
1249                 vuint32_t DTRE7:1;      /* Channel 7 Data Transfer Request Enable */\r
1250                 vuint32_t DTRE6:1;      /* Channel 6 Data Transfer Request Enable */\r
1251                 vuint32_t DTRE5:1;      /* Channel 5 Data Transfer Request Enable */\r
1252                 vuint32_t DTRE4:1;      /* Channel 4 Data Transfer Request Enable */\r
1253                 vuint32_t DTRE3:1;      /* Channel 3 Data Transfer Request Enable */\r
1254                 vuint32_t DTRE2:1;      /* Channel 2 Data Transfer Request Enable */\r
1255                 vuint32_t DTRE1:1;      /* Channel 1 Data Transfer Request Enable */\r
1256                 vuint32_t DTRE0:1;      /* Channel 0 Data Transfer Request Enable */\r
1257             } B;\r
1258         } CDTRER_A;\r
1259         uint32_t etpu_reserved19;       /* For single ETPU implementations */\r
1260 \r
1261         uint32_t etpu_reserved20[10];\r
1262         union {                 /* ETPU_A Channel Pending Service Status */\r
1263             vuint32_t R;\r
1264             struct {\r
1265                 vuint32_t SR31:1;       /* Channel 31 Pending Service Status */\r
1266                 vuint32_t SR30:1;       /* Channel 30 Pending Service Status */\r
1267                 vuint32_t SR29:1;       /* Channel 29 Pending Service Status */\r
1268                 vuint32_t SR28:1;       /* Channel 28 Pending Service Status */\r
1269                 vuint32_t SR27:1;       /* Channel 27 Pending Service Status */\r
1270                 vuint32_t SR26:1;       /* Channel 26 Pending Service Status */\r
1271                 vuint32_t SR25:1;       /* Channel 25 Pending Service Status */\r
1272                 vuint32_t SR24:1;       /* Channel 24 Pending Service Status */\r
1273                 vuint32_t SR23:1;       /* Channel 23 Pending Service Status */\r
1274                 vuint32_t SR22:1;       /* Channel 22 Pending Service Status */\r
1275                 vuint32_t SR21:1;       /* Channel 21 Pending Service Status */\r
1276                 vuint32_t SR20:1;       /* Channel 20 Pending Service Status */\r
1277                 vuint32_t SR19:1;       /* Channel 19 Pending Service Status */\r
1278                 vuint32_t SR18:1;       /* Channel 18 Pending Service Status */\r
1279                 vuint32_t SR17:1;       /* Channel 17 Pending Service Status */\r
1280                 vuint32_t SR16:1;       /* Channel 16 Pending Service Status */\r
1281                 vuint32_t SR15:1;       /* Channel 15 Pending Service Status */\r
1282                 vuint32_t SR14:1;       /* Channel 14 Pending Service Status */\r
1283                 vuint32_t SR13:1;       /* Channel 13 Pending Service Status */\r
1284                 vuint32_t SR12:1;       /* Channel 12 Pending Service Status */\r
1285                 vuint32_t SR11:1;       /* Channel 11 Pending Service Status */\r
1286                 vuint32_t SR10:1;       /* Channel 10 Pending Service Status */\r
1287                 vuint32_t SR9:1;        /* Channel 9 Pending Service Status */\r
1288                 vuint32_t SR8:1;        /* Channel 8 Pending Service Status */\r
1289                 vuint32_t SR7:1;        /* Channel 7 Pending Service Status */\r
1290                 vuint32_t SR6:1;        /* Channel 6 Pending Service Status */\r
1291                 vuint32_t SR5:1;        /* Channel 5 Pending Service Status */\r
1292                 vuint32_t SR4:1;        /* Channel 4 Pending Service Status */\r
1293                 vuint32_t SR3:1;        /* Channel 3 Pending Service Status */\r
1294                 vuint32_t SR2:1;        /* Channel 2 Pending Service Status */\r
1295                 vuint32_t SR1:1;        /* Channel 1 Pending Service Status */\r
1296                 vuint32_t SR0:1;        /* Channel 0 Pending Service Status */\r
1297             } B;\r
1298         } CPSSR_A;\r
1299         uint32_t etpu_reserved22;       /* For single ETPU implementations */\r
1300 \r
1301         uint32_t etpu_reserved20a[2];\r
1302 \r
1303         union {                 /* ETPU_A Channel Service Status */\r
1304             vuint32_t R;\r
1305             struct {\r
1306                 vuint32_t SS31:1;       /* Channel 31 Service Status */\r
1307                 vuint32_t SS30:1;       /* Channel 30 Service Status */\r
1308                 vuint32_t SS29:1;       /* Channel 29 Service Status */\r
1309                 vuint32_t SS28:1;       /* Channel 28 Service Status */\r
1310                 vuint32_t SS27:1;       /* Channel 27 Service Status */\r
1311                 vuint32_t SS26:1;       /* Channel 26 Service Status */\r
1312                 vuint32_t SS25:1;       /* Channel 25 Service Status */\r
1313                 vuint32_t SS24:1;       /* Channel 24 Service Status */\r
1314                 vuint32_t SS23:1;       /* Channel 23 Service Status */\r
1315                 vuint32_t SS22:1;       /* Channel 22 Service Status */\r
1316                 vuint32_t SS21:1;       /* Channel 21 Service Status */\r
1317                 vuint32_t SS20:1;       /* Channel 20 Service Status */\r
1318                 vuint32_t SS19:1;       /* Channel 19 Service Status */\r
1319                 vuint32_t SS18:1;       /* Channel 18 Service Status */\r
1320                 vuint32_t SS17:1;       /* Channel 17 Service Status */\r
1321                 vuint32_t SS16:1;       /* Channel 16 Service Status */\r
1322                 vuint32_t SS15:1;       /* Channel 15 Service Status */\r
1323                 vuint32_t SS14:1;       /* Channel 14 Service Status */\r
1324                 vuint32_t SS13:1;       /* Channel 13 Service Status */\r
1325                 vuint32_t SS12:1;       /* Channel 12 Service Status */\r
1326                 vuint32_t SS11:1;       /* Channel 11 Service Status */\r
1327                 vuint32_t SS10:1;       /* Channel 10 Service Status */\r
1328                 vuint32_t SS9:1;        /* Channel 9 Service Status */\r
1329                 vuint32_t SS8:1;        /* Channel 8 Service Status */\r
1330                 vuint32_t SS7:1;        /* Channel 7 Service Status */\r
1331                 vuint32_t SS6:1;        /* Channel 6 Service Status */\r
1332                 vuint32_t SS5:1;        /* Channel 5 Service Status */\r
1333                 vuint32_t SS4:1;        /* Channel 4 Service Status */\r
1334                 vuint32_t SS3:1;        /* Channel 3 Service Status */\r
1335                 vuint32_t SS2:1;        /* Channel 2 Service Status */\r
1336                 vuint32_t SS1:1;        /* Channel 1 Service Status */\r
1337                 vuint32_t SS0:1;        /* Channel 0 Service Status */\r
1338             } B;\r
1339         } CSSR_A;\r
1340         uint32_t etpu_reserved22a;      /* For single ETPU implementations */\r
1341 \r
1342         uint32_t etpu_reserved23[90];\r
1343 \r
1344 /*****************************Channels********************************/\r
1345 \r
1346         struct {\r
1347             union {\r
1348                 vuint32_t R;    /* Channel Configuration Register */\r
1349                 struct {\r
1350                     vuint32_t CIE:1;    /* Channel Interruput Enable */\r
1351                     vuint32_t DTRE:1;   /* Data Transfer Request Enable */\r
1352                     vuint32_t CPR:2;    /* Channel Priority */\r
1353                       vuint32_t:3;\r
1354                     vuint32_t ETCS:1;   /* Entry Table Condition Select */\r
1355                       vuint32_t:3;\r
1356                     vuint32_t CFS:5;    /* Channel Function Select */\r
1357                     vuint32_t ODIS:1;   /* Output disable */\r
1358                     vuint32_t OPOL:1;   /* output polarity */\r
1359                       vuint32_t:3;\r
1360                     vuint32_t CPBA:11;  /* Channel Parameter Base Address */\r
1361                 } B;\r
1362             } CR;\r
1363             union {\r
1364                 vuint32_t R;    /* Channel Status Control Register */\r
1365                 struct {\r
1366                     vuint32_t CIS:1;    /* Channel Interruput Status */\r
1367                     vuint32_t CIOS:1;   /* Channel Interruput Overflow Status */\r
1368                       vuint32_t:6;\r
1369                     vuint32_t DTRS:1;   /* Data Transfer Status */\r
1370                     vuint32_t DTROS:1;  /* Data Transfer Overflow Status */\r
1371                       vuint32_t:6;\r
1372                     vuint32_t IPS:1;    /* Input Pin State */\r
1373                     vuint32_t OPS:1;    /* Output Pin State */\r
1374                     vuint32_t OBE:1;    /* Output Buffer Enable */\r
1375                       vuint32_t:11;\r
1376                     vuint32_t FM1:1;    /* Function mode */\r
1377                     vuint32_t FM0:1;    /* Function mode */\r
1378                 } B;\r
1379             } SCR;\r
1380             union {\r
1381                 vuint32_t R;    /* Channel Host Service Request Register */\r
1382                 struct {\r
1383                     vuint32_t:29;       /* Host Service Request */\r
1384                     vuint32_t HSR:3;\r
1385                 } B;\r
1386             } HSRR;\r
1387             uint32_t etpu_reserved23;\r
1388         } CHAN[127];\r
1389 \r
1390     };\r
1391 /****************************************************************************/\r
1392 /*                          MODULE : XBAR CrossBar                          */\r
1393 /****************************************************************************/\r
1394     struct XBAR_tag {\r
1395         union {\r
1396             vuint32_t R;\r
1397             struct {\r
1398                 vuint32_t:4;\r
1399 \r
1400                 vuint32_t:4;\r
1401 \r
1402                 vuint32_t:4;\r
1403 \r
1404                 vuint32_t:1;\r
1405                 vuint32_t MSTR4:3;      /* Z3 core data and Nexus */\r
1406 \r
1407                   vuint32_t:4;\r
1408 \r
1409                   vuint32_t:1;\r
1410                 vuint32_t MSTR2:3;\r
1411                   vuint32_t:1;\r
1412                 vuint32_t MSTR1:3;\r
1413                   vuint32_t:1;\r
1414                 vuint32_t MSTR0:3;\r
1415             } B;\r
1416         } MPR0;                 /* Master Priority Register for Slave Port 0 */\r
1417 \r
1418         uint32_t xbar_reserved1[3];\r
1419 \r
1420         union {\r
1421             vuint32_t R;\r
1422             struct {\r
1423                 vuint32_t RO:1;\r
1424                   vuint32_t:21;\r
1425                 vuint32_t ARB:2;\r
1426                   vuint32_t:2;\r
1427                 vuint32_t PCTL:2;\r
1428                   vuint32_t:1;\r
1429                 vuint32_t PARK:3;\r
1430             } B;\r
1431         } SGPCR0;               /* General Purpose Control Register for Slave Port 0 */\r
1432 \r
1433         uint32_t xbar_reserved2[59];\r
1434 \r
1435         union {\r
1436             vuint32_t R;\r
1437             struct {\r
1438                 vuint32_t:4;\r
1439 \r
1440                 vuint32_t:4;\r
1441 \r
1442                 vuint32_t:4;\r
1443 \r
1444                 vuint32_t:1;\r
1445                 vuint32_t MSTR4:3;      /* Z3 core data and Nexus */\r
1446 \r
1447                   vuint32_t:4;\r
1448 \r
1449                   vuint32_t:1;\r
1450                 vuint32_t MSTR2:3;\r
1451                   vuint32_t:1;\r
1452                 vuint32_t MSTR1:3;\r
1453                   vuint32_t:1;\r
1454                 vuint32_t MSTR0:3;\r
1455             } B;\r
1456         } MPR1;                 /* Master Priority Register for Slave Port 1 */\r
1457 \r
1458         uint32_t xbar_reserved3[3];\r
1459 \r
1460         union {\r
1461             vuint32_t R;\r
1462             struct {\r
1463                 vuint32_t RO:1;\r
1464                   vuint32_t:21;\r
1465                 vuint32_t ARB:2;\r
1466                   vuint32_t:2;\r
1467                 vuint32_t PCTL:2;\r
1468                   vuint32_t:1;\r
1469                 vuint32_t PARK:3;\r
1470             } B;\r
1471         } SGPCR1;               /* General Purpose Control Register for Slave Port 1 */\r
1472 \r
1473         uint32_t xbar_reserved4[123];\r
1474 \r
1475         union {\r
1476             vuint32_t R;\r
1477             struct {\r
1478                 vuint32_t:4;\r
1479 \r
1480                 vuint32_t:4;\r
1481 \r
1482                 vuint32_t:4;\r
1483 \r
1484                 vuint32_t:1;\r
1485                 vuint32_t MSTR4:3;      /* Z3 core data and Nexus */\r
1486 \r
1487                   vuint32_t:4;\r
1488 \r
1489                   vuint32_t:1;\r
1490                 vuint32_t MSTR2:3;\r
1491                   vuint32_t:1;\r
1492                 vuint32_t MSTR1:3;\r
1493                   vuint32_t:1;\r
1494                 vuint32_t MSTR0:3;\r
1495             } B;\r
1496         } MPR3;                 /* Master Priority Register for Slave Port 3 */\r
1497 \r
1498         uint32_t xbar_reserved5[3];\r
1499 \r
1500         union {\r
1501             vuint32_t R;\r
1502             struct {\r
1503                 vuint32_t RO:1;\r
1504                   vuint32_t:21;\r
1505                 vuint32_t ARB:2;\r
1506                   vuint32_t:2;\r
1507                 vuint32_t PCTL:2;\r
1508                   vuint32_t:1;\r
1509                 vuint32_t PARK:3;\r
1510             } B;\r
1511         } SGPCR3;               /* General Purpose Control Register for Slave Port 3 */\r
1512         uint32_t xbar_reserved6[187];\r
1513 \r
1514         union {\r
1515             vuint32_t R;\r
1516             struct {\r
1517                 vuint32_t:4;\r
1518 \r
1519                 vuint32_t:4;\r
1520 \r
1521                 vuint32_t:4;\r
1522 \r
1523                 vuint32_t:1;\r
1524                 vuint32_t MSTR4:3;      /* Z3 core data and Nexus */\r
1525 \r
1526                   vuint32_t:4;\r
1527 \r
1528                   vuint32_t:1;\r
1529                 vuint32_t MSTR2:3;\r
1530                   vuint32_t:1;\r
1531                 vuint32_t MSTR1:3;\r
1532                   vuint32_t:1;\r
1533                 vuint32_t MSTR0:3;\r
1534             } B;\r
1535         } MPR6;                 /* Master Priority Register for Slave Port 6 */\r
1536 \r
1537         uint32_t xbar_reserved7[3];\r
1538 \r
1539         union {\r
1540             vuint32_t R;\r
1541             struct {\r
1542                 vuint32_t RO:1;\r
1543                   vuint32_t:21;\r
1544                 vuint32_t ARB:2;\r
1545                   vuint32_t:2;\r
1546                 vuint32_t PCTL:2;\r
1547                   vuint32_t:1;\r
1548                 vuint32_t PARK:3;\r
1549             } B;\r
1550         } SGPCR6;               /* General Purpose Control Register for Slave Port 6 */\r
1551 \r
1552         uint32_t xbar_reserved8[59];\r
1553 \r
1554         union {\r
1555             vuint32_t R;\r
1556             struct {\r
1557                 vuint32_t:4;\r
1558 \r
1559                 vuint32_t:4;\r
1560 \r
1561                 vuint32_t:4;\r
1562 \r
1563                 vuint32_t:1;\r
1564                 vuint32_t MSTR4:3;      /* Z3 core data and Nexus */\r
1565 \r
1566                   vuint32_t:4;\r
1567 \r
1568                   vuint32_t:1;\r
1569                 vuint32_t MSTR2:3;\r
1570                   vuint32_t:1;\r
1571                 vuint32_t MSTR1:3;\r
1572                   vuint32_t:1;\r
1573                 vuint32_t MSTR0:3;\r
1574             } B;\r
1575         } MPR7;                 /* Master Priority Register for Slave Port 7 */\r
1576 \r
1577         uint32_t xbar_reserved9[3];\r
1578 \r
1579         union {\r
1580             vuint32_t R;\r
1581             struct {\r
1582                 vuint32_t RO:1;\r
1583                   vuint32_t:21;\r
1584                 vuint32_t ARB:2;\r
1585                   vuint32_t:2;\r
1586                 vuint32_t PCTL:2;\r
1587                   vuint32_t:1;\r
1588                 vuint32_t PARK:3;\r
1589             } B;\r
1590         } SGPCR7;               /* General Purpose Control Register for Slave Port 7 */\r
1591 \r
1592     };\r
1593 /****************************************************************************/\r
1594 /*                     MODULE : ECSM                                        */\r
1595 /****************************************************************************/\r
1596     struct ECSM_tag {\r
1597 \r
1598         uint32_t ecsm_reserved1[5];\r
1599 \r
1600         uint16_t ecsm_reserved2;\r
1601 \r
1602         union {\r
1603             vuint16_t R;\r
1604         } SWTCR;                //Software Watchdog Timer Control\r
1605 \r
1606         uint8_t ecsm_reserved3[3];\r
1607 \r
1608         union {\r
1609             vuint8_t R;\r
1610         } SWTSR;                //SWT Service Register\r
1611 \r
1612         uint8_t ecsm_reserved4[3];\r
1613 \r
1614         union {\r
1615             vuint8_t R;\r
1616         } SWTIR;                //SWT Interrupt Register\r
1617 \r
1618         uint32_t ecsm_reserved5a[1];\r
1619         uint32_t ecsm_reserved5b[1];\r
1620 \r
1621         uint32_t ecsm_reserved5c[6];\r
1622 \r
1623         uint8_t ecsm_reserved6[3];\r
1624 \r
1625         union {\r
1626             vuint8_t R;\r
1627             struct {\r
1628                 vuint8_t:6;\r
1629                 vuint8_t ERNCR:1;\r
1630                 vuint8_t EFNCR:1;\r
1631             } B;\r
1632         } ECR;                  //ECC Configuration Register\r
1633 \r
1634         uint8_t mcm_reserved8[3];\r
1635 \r
1636         union {\r
1637             vuint8_t R;\r
1638             struct {\r
1639                 vuint8_t:6;\r
1640                 vuint8_t RNCE:1;\r
1641                 vuint8_t FNCE:1;\r
1642             } B;\r
1643         } ESR;                  //ECC Status Register\r
1644 \r
1645         uint16_t ecsm_reserved9;\r
1646 \r
1647         union {\r
1648             vuint16_t R;\r
1649             struct {\r
1650                 vuint16_t:6;\r
1651                 vuint16_t FRCNCI:1;\r
1652                 vuint16_t FR1NCI:1;\r
1653                   vuint16_t:1;\r
1654                 vuint16_t ERRBIT:7;\r
1655             } B;\r
1656         } EEGR;                 //ECC Error Generation Register\r
1657 \r
1658         uint32_t ecsm_reserved10;\r
1659 \r
1660         union {\r
1661             vuint32_t R;\r
1662             struct {\r
1663                 vuint32_t FEAR:32;\r
1664             } B;\r
1665         } FEAR;                 //Flash ECC Address Register\r
1666 \r
1667         uint16_t ecsm_reserved11;\r
1668 \r
1669         union {\r
1670             vuint8_t R;\r
1671             struct {\r
1672                 vuint8_t:4;\r
1673                 vuint8_t FEMR:4;\r
1674             } B;\r
1675         } FEMR;                 //Flash ECC Master Register\r
1676 \r
1677         union {\r
1678             vuint8_t R;\r
1679             struct {\r
1680                 vuint8_t WRITE:1;\r
1681                 vuint8_t SIZE:3;\r
1682                 vuint8_t PROT0:1;\r
1683                 vuint8_t PROT1:1;\r
1684                 vuint8_t PROT2:1;\r
1685                 vuint8_t PROT3:1;\r
1686             } B;\r
1687         } FEAT;                 //Flash ECC Attributes Register\r
1688 \r
1689         union {\r
1690             vuint32_t R;\r
1691             struct {\r
1692                 vuint32_t FEDH:32;\r
1693             } B;\r
1694         } FEDRH;                //Flash ECC Data High Register\r
1695 \r
1696         union {\r
1697             vuint32_t R;\r
1698             struct {\r
1699                 vuint32_t FEDL:32;\r
1700             } B;\r
1701         } FEDRL;                //Flash ECC Data Low Register\r
1702 \r
1703         union {\r
1704             vuint32_t R;\r
1705             struct {\r
1706                 vuint32_t REAR:32;\r
1707             } B;\r
1708         } REAR;                 //RAM ECC Address\r
1709 \r
1710         uint8_t ecsm_reserved12[2];\r
1711 \r
1712         union {\r
1713             vuint8_t R;\r
1714             struct {\r
1715                 vuint8_t:4;\r
1716                 vuint8_t REMR:4;\r
1717             } B;\r
1718         } REMR;                 //RAM ECC Master\r
1719 \r
1720         union {\r
1721             vuint8_t R;\r
1722             struct {\r
1723                 vuint8_t WRITE:1;\r
1724                 vuint8_t SIZE:3;\r
1725                 vuint8_t PROT0:1;\r
1726                 vuint8_t PROT1:1;\r
1727                 vuint8_t PROT2:1;\r
1728                 vuint8_t PROT3:1;\r
1729             } B;\r
1730         } REAT;                 // RAM ECC Attributes Register\r
1731 \r
1732         union {\r
1733             vuint32_t R;\r
1734             struct {\r
1735                 vuint32_t REDH:32;\r
1736             } B;\r
1737         } REDRH;                //RAM ECC Data High Register\r
1738 \r
1739         union {\r
1740             vuint32_t R;\r
1741             struct {\r
1742                 vuint32_t REDL:32;\r
1743             } B;\r
1744         } REDRL;                //RAMECC Data Low Register\r
1745 \r
1746     };\r
1747 /****************************************************************************/\r
1748 /*                          MODULE : eDMA                                   */\r
1749 /****************************************************************************/\r
1750     struct EDMA_tag {\r
1751         union {\r
1752             vuint32_t R;\r
1753             struct {\r
1754                 vuint32_t:16;\r
1755                 vuint32_t GRP3PRI:2;\r
1756                 vuint32_t GRP2PRI:2;\r
1757                 vuint32_t GRP1PRI:2;\r
1758                 vuint32_t GRP0PRI:2;\r
1759                   vuint32_t:4;\r
1760                 vuint32_t ERGA:1;\r
1761                 vuint32_t ERCA:1;\r
1762                 vuint32_t EDBG:1;\r
1763                 vuint32_t EBW:1;\r
1764             } B;\r
1765         } CR;                   /* Control Register */\r
1766         union {\r
1767             vuint32_t R;\r
1768             struct {\r
1769                 vuint32_t VLD:1;\r
1770                   vuint32_t:15;\r
1771                 vuint32_t GPE:1;\r
1772                 vuint32_t CPE:1;\r
1773                 vuint32_t ERRCHN:6;\r
1774                 vuint32_t SAE:1;\r
1775                 vuint32_t SOE:1;\r
1776                 vuint32_t DAE:1;\r
1777                 vuint32_t DOE:1;\r
1778                 vuint32_t NCE:1;\r
1779                 vuint32_t SGE:1;\r
1780                 vuint32_t SBE:1;\r
1781                 vuint32_t DBE:1;\r
1782             } B;\r
1783         } ESR;                  /* Error Status Register */\r
1784         uint32_t edma_reserved_erqrh;\r
1785 \r
1786         union {\r
1787             vuint32_t R;\r
1788             struct {\r
1789                 vuint32_t ERQ31:1;\r
1790                 vuint32_t ERQ30:1;\r
1791                 vuint32_t ERQ29:1;\r
1792                 vuint32_t ERQ28:1;\r
1793                 vuint32_t ERQ27:1;\r
1794                 vuint32_t ERQ26:1;\r
1795                 vuint32_t ERQ25:1;\r
1796                 vuint32_t ERQ24:1;\r
1797                 vuint32_t ERQ23:1;\r
1798                 vuint32_t ERQ22:1;\r
1799                 vuint32_t ERQ21:1;\r
1800                 vuint32_t ERQ20:1;\r
1801                 vuint32_t ERQ19:1;\r
1802                 vuint32_t ERQ18:1;\r
1803                 vuint32_t ERQ17:1;\r
1804                 vuint32_t ERQ16:1;\r
1805                 vuint32_t ERQ15:1;\r
1806                 vuint32_t ERQ14:1;\r
1807                 vuint32_t ERQ13:1;\r
1808                 vuint32_t ERQ12:1;\r
1809                 vuint32_t ERQ11:1;\r
1810                 vuint32_t ERQ10:1;\r
1811                 vuint32_t ERQ09:1;\r
1812                 vuint32_t ERQ08:1;\r
1813                 vuint32_t ERQ07:1;\r
1814                 vuint32_t ERQ06:1;\r
1815                 vuint32_t ERQ05:1;\r
1816                 vuint32_t ERQ04:1;\r
1817                 vuint32_t ERQ03:1;\r
1818                 vuint32_t ERQ02:1;\r
1819                 vuint32_t ERQ01:1;\r
1820                 vuint32_t ERQ00:1;\r
1821             } B;\r
1822         } ERQRL;                /* DMA Enable Request Register Low */\r
1823         uint32_t edma_reserved_eeirh;\r
1824 \r
1825         union {\r
1826             vuint32_t R;\r
1827             struct {\r
1828                 vuint32_t EEI31:1;\r
1829                 vuint32_t EEI30:1;\r
1830                 vuint32_t EEI29:1;\r
1831                 vuint32_t EEI28:1;\r
1832                 vuint32_t EEI27:1;\r
1833                 vuint32_t EEI26:1;\r
1834                 vuint32_t EEI25:1;\r
1835                 vuint32_t EEI24:1;\r
1836                 vuint32_t EEI23:1;\r
1837                 vuint32_t EEI22:1;\r
1838                 vuint32_t EEI21:1;\r
1839                 vuint32_t EEI20:1;\r
1840                 vuint32_t EEI19:1;\r
1841                 vuint32_t EEI18:1;\r
1842                 vuint32_t EEI17:1;\r
1843                 vuint32_t EEI16:1;\r
1844                 vuint32_t EEI15:1;\r
1845                 vuint32_t EEI14:1;\r
1846                 vuint32_t EEI13:1;\r
1847                 vuint32_t EEI12:1;\r
1848                 vuint32_t EEI11:1;\r
1849                 vuint32_t EEI10:1;\r
1850                 vuint32_t EEI09:1;\r
1851                 vuint32_t EEI08:1;\r
1852                 vuint32_t EEI07:1;\r
1853                 vuint32_t EEI06:1;\r
1854                 vuint32_t EEI05:1;\r
1855                 vuint32_t EEI04:1;\r
1856                 vuint32_t EEI03:1;\r
1857                 vuint32_t EEI02:1;\r
1858                 vuint32_t EEI01:1;\r
1859                 vuint32_t EEI00:1;\r
1860             } B;\r
1861         } EEIRL;                /* DMA Enable Error Interrupt Register Low */\r
1862         union {\r
1863             vuint8_t R;\r
1864             vuint8_t B;\r
1865         } SERQR;                /* DMA Set Enable Request Register */\r
1866         union {\r
1867             vuint8_t R;\r
1868             vuint8_t B;\r
1869         } CERQR;                /* DMA Clear Enable Request Register */\r
1870         union {\r
1871             vuint8_t R;\r
1872             vuint8_t B;\r
1873         } SEEIR;                /* DMA Set Enable Error Interrupt Register */\r
1874         union {\r
1875             vuint8_t R;\r
1876             vuint8_t B;\r
1877         } CEEIR;                /* DMA Clear Enable Error Interrupt Register */\r
1878         union {\r
1879             vuint8_t R;\r
1880             vuint8_t B;\r
1881         } CIRQR;                /* DMA Clear Interrupt Request Register */\r
1882         union {\r
1883             vuint8_t R;\r
1884             vuint8_t B;\r
1885         } CER;                  /* DMA Clear error Register */\r
1886         union {\r
1887             vuint8_t R;\r
1888             vuint8_t B;\r
1889         } SSBR;                 /* Set Start Bit Register */\r
1890         union {\r
1891             vuint8_t R;\r
1892             vuint8_t B;\r
1893         } CDSBR;                /* Clear Done Status Bit Register */\r
1894         uint32_t edma_reserved_irqrh;\r
1895 \r
1896         union {\r
1897             vuint32_t R;\r
1898             struct {\r
1899                 vuint32_t INT31:1;\r
1900                 vuint32_t INT30:1;\r
1901                 vuint32_t INT29:1;\r
1902                 vuint32_t INT28:1;\r
1903                 vuint32_t INT27:1;\r
1904                 vuint32_t INT26:1;\r
1905                 vuint32_t INT25:1;\r
1906                 vuint32_t INT24:1;\r
1907                 vuint32_t INT23:1;\r
1908                 vuint32_t INT22:1;\r
1909                 vuint32_t INT21:1;\r
1910                 vuint32_t INT20:1;\r
1911                 vuint32_t INT19:1;\r
1912                 vuint32_t INT18:1;\r
1913                 vuint32_t INT17:1;\r
1914                 vuint32_t INT16:1;\r
1915                 vuint32_t INT15:1;\r
1916                 vuint32_t INT14:1;\r
1917                 vuint32_t INT13:1;\r
1918                 vuint32_t INT12:1;\r
1919                 vuint32_t INT11:1;\r
1920                 vuint32_t INT10:1;\r
1921                 vuint32_t INT09:1;\r
1922                 vuint32_t INT08:1;\r
1923                 vuint32_t INT07:1;\r
1924                 vuint32_t INT06:1;\r
1925                 vuint32_t INT05:1;\r
1926                 vuint32_t INT04:1;\r
1927                 vuint32_t INT03:1;\r
1928                 vuint32_t INT02:1;\r
1929                 vuint32_t INT01:1;\r
1930                 vuint32_t INT00:1;\r
1931             } B;\r
1932         } IRQRL;                /* DMA Interrupt Request Low */\r
1933         uint32_t edma_reserved_erh;\r
1934 \r
1935         union {\r
1936             vuint32_t R;\r
1937             struct {\r
1938                 vuint32_t ERR31:1;\r
1939                 vuint32_t ERR30:1;\r
1940                 vuint32_t ERR29:1;\r
1941                 vuint32_t ERR28:1;\r
1942                 vuint32_t ERR27:1;\r
1943                 vuint32_t ERR26:1;\r
1944                 vuint32_t ERR25:1;\r
1945                 vuint32_t ERR24:1;\r
1946                 vuint32_t ERR23:1;\r
1947                 vuint32_t ERR22:1;\r
1948                 vuint32_t ERR21:1;\r
1949                 vuint32_t ERR20:1;\r
1950                 vuint32_t ERR19:1;\r
1951                 vuint32_t ERR18:1;\r
1952                 vuint32_t ERR17:1;\r
1953                 vuint32_t ERR16:1;\r
1954                 vuint32_t ERR15:1;\r
1955                 vuint32_t ERR14:1;\r
1956                 vuint32_t ERR13:1;\r
1957                 vuint32_t ERR12:1;\r
1958                 vuint32_t ERR11:1;\r
1959                 vuint32_t ERR10:1;\r
1960                 vuint32_t ERR09:1;\r
1961                 vuint32_t ERR08:1;\r
1962                 vuint32_t ERR07:1;\r
1963                 vuint32_t ERR06:1;\r
1964                 vuint32_t ERR05:1;\r
1965                 vuint32_t ERR04:1;\r
1966                 vuint32_t ERR03:1;\r
1967                 vuint32_t ERR02:1;\r
1968                 vuint32_t ERR01:1;\r
1969                 vuint32_t ERR00:1;\r
1970             } B;\r
1971         } ERL;                  /* DMA Error Low */\r
1972         uint32_t edma_reserved1[52];\r
1973 \r
1974         union {\r
1975             vuint8_t R;\r
1976             struct {\r
1977                 vuint8_t ECP:1;\r
1978 \r
1979                   vuint8_t:1;\r
1980                 vuint8_t GRPPRI:2;\r
1981                 vuint8_t CHPRI:4;\r
1982 \r
1983             } B;\r
1984         } CPR[64];              /* Channel n Priority */\r
1985 \r
1986         uint32_t edma_reserved2[944];\r
1987 \r
1988 /****************************************************************************/\r
1989 /*       DMA2 Transfer Control Descriptor                                   */\r
1990 /****************************************************************************/\r
1991 \r
1992         struct tcd_t {          /*for "standard" format TCDs (when EDMA.TCD[x].CITER.E_LINK==BITER.E_LINK=0 && EDMA.EMLM=0 ) */\r
1993             vuint32_t SADDR;    /* source address */\r
1994 \r
1995             vuint16_t SMOD:5;   /* source address modulo */\r
1996             vuint16_t SSIZE:3;  /* source transfer size */\r
1997             vuint16_t DMOD:5;   /* destination address modulo */\r
1998             vuint16_t DSIZE:3;  /* destination transfer size */\r
1999             vint16_t SOFF;      /* signed source address offset */\r
2000 \r
2001             vuint32_t NBYTES;   /* inner (\93minor\94) byte count */\r
2002 \r
2003             vint32_t SLAST;     /* last destination address adjustment, or\r
2004 \r
2005                                    scatter/gather address (if e_sg = 1) */\r
2006             vuint32_t DADDR;    /* destination address */\r
2007 \r
2008             vuint16_t CITERE_LINK:1;\r
2009             vuint16_t CITER:15;\r
2010 \r
2011             vint16_t DOFF;      /* signed destination address offset */\r
2012 \r
2013             vint32_t DLAST_SGA;\r
2014 \r
2015             vuint16_t BITERE_LINK:1;    /* beginning ("major") iteration count */\r
2016             vuint16_t BITER:15;\r
2017 \r
2018             vuint16_t BWC:2;    /* bandwidth control */\r
2019             vuint16_t MAJORLINKCH:6;    /* enable channel-to-channel link */\r
2020             vuint16_t DONE:1;   /* channel done */\r
2021             vuint16_t ACTIVE:1; /* channel active */\r
2022             vuint16_t MAJORE_LINK:1;    /* enable channel-to-channel link */\r
2023             vuint16_t E_SG:1;   /* enable scatter/gather descriptor */\r
2024             vuint16_t D_REQ:1;  /* disable ipd_req when done */\r
2025             vuint16_t INT_HALF:1;       /* interrupt on citer = (biter >> 1) */\r
2026             vuint16_t INT_MAJ:1;        /* interrupt on major loop completion */\r
2027             vuint16_t START:1;  /* explicit channel start */\r
2028         } TCD[64];              /* transfer_control_descriptor */\r
2029 \r
2030     };\r
2031 \r
2032     struct EDMA_TCD_alt1_tag {  /*for alternate format TCDs (when EDMA.TCD[x].CITER.E_LINK==BITER.E_LINK=1 ) */\r
2033 \r
2034         struct tcd_alt1_t {\r
2035             vuint32_t SADDR;    /* source address */\r
2036 \r
2037             vuint16_t SMOD:5;   /* source address modulo */\r
2038             vuint16_t SSIZE:3;  /* source transfer size */\r
2039             vuint16_t DMOD:5;   /* destination address modulo */\r
2040             vuint16_t DSIZE:3;  /* destination transfer size */\r
2041             vint16_t SOFF;      /* signed source address offset */\r
2042 \r
2043             vuint32_t NBYTES;   /* inner (\93minor\94) byte count */\r
2044 \r
2045             vint32_t SLAST;     /* last destination address adjustment, or\r
2046 \r
2047                                    scatter/gather address (if e_sg = 1) */\r
2048             vuint32_t DADDR;    /* destination address */\r
2049 \r
2050             vuint16_t CITERE_LINK:1;\r
2051             vuint16_t CITERLINKCH:6;\r
2052             vuint16_t CITER:9;\r
2053 \r
2054             vint16_t DOFF;      /* signed destination address offset */\r
2055 \r
2056             vint32_t DLAST_SGA;\r
2057 \r
2058             vuint16_t BITERE_LINK:1;    /* beginning (\93major\94) iteration count */\r
2059             vuint16_t BITERLINKCH:6;\r
2060             vuint16_t BITER:9;\r
2061 \r
2062             vuint16_t BWC:2;    /* bandwidth control */\r
2063             vuint16_t MAJORLINKCH:6;    /* enable channel-to-channel link */\r
2064             vuint16_t DONE:1;   /* channel done */\r
2065             vuint16_t ACTIVE:1; /* channel active */\r
2066             vuint16_t MAJORE_LINK:1;    /* enable channel-to-channel link */\r
2067             vuint16_t E_SG:1;   /* enable scatter/gather descriptor */\r
2068             vuint16_t D_REQ:1;  /* disable ipd_req when done */\r
2069             vuint16_t INT_HALF:1;       /* interrupt on citer = (biter >> 1) */\r
2070             vuint16_t INT_MAJ:1;        /* interrupt on major loop completion */\r
2071             vuint16_t START:1;  /* explicit channel start */\r
2072         } TCD[64];              /* transfer_control_descriptor */\r
2073     };\r
2074 /****************************************************************************/\r
2075 /*                          MODULE : INTC                                   */\r
2076 /****************************************************************************/\r
2077     struct INTC_tag {\r
2078         union {\r
2079             vuint32_t R;\r
2080             struct {\r
2081                 vuint32_t:26;\r
2082                 vuint32_t VTES:1;\r
2083                   vuint32_t:4;\r
2084                 vuint32_t HVEN:1;\r
2085             } B;\r
2086         } MCR;                  /* Module Configuration Register */\r
2087 \r
2088         int32_t INTC_reserved00;\r
2089 \r
2090         union {\r
2091             vuint32_t R;\r
2092             struct {\r
2093                 vuint32_t:28;\r
2094                 vuint32_t PRI:4;\r
2095             } B;\r
2096         } CPR;                  /* Current Priority Register */\r
2097 \r
2098         uint32_t intc_reserved1;\r
2099 \r
2100         union {\r
2101             vuint32_t R;\r
2102             struct {\r
2103                 vuint32_t VTBA:21;\r
2104                 vuint32_t INTVEC:9;\r
2105                   vuint32_t:2;\r
2106             } B;\r
2107         } IACKR;                /* Interrupt Acknowledge Register */\r
2108 \r
2109         uint32_t intc_reserved2;\r
2110 \r
2111         union {\r
2112             vuint32_t R;\r
2113             struct {\r
2114                 vuint32_t:32;\r
2115             } B;\r
2116         } EOIR;                 /* End of Interrupt Register */\r
2117 \r
2118         uint32_t intc_reserved3;\r
2119 \r
2120         union {\r
2121             vuint8_t R;\r
2122             struct {\r
2123                 vuint8_t:6;\r
2124                 vuint8_t SET:1;\r
2125                 vuint8_t CLR:1;\r
2126             } B;\r
2127         } SSCIR[8];             /* Software Set/Clear Interruput Register */\r
2128 \r
2129         uint32_t intc_reserved4[6];\r
2130 \r
2131         union {\r
2132             vuint8_t R;\r
2133             struct {\r
2134                 vuint8_t:4;\r
2135                 vuint8_t PRI:4;\r
2136             } B;\r
2137         } PSR[358];             /* Software Set/Clear Interrupt Register */\r
2138 \r
2139     };\r
2140 /****************************************************************************/\r
2141 /*                          MODULE : EQADC                                  */\r
2142 /****************************************************************************/\r
2143     struct EQADC_tag {\r
2144         union {\r
2145             vuint32_t R;\r
2146             struct {\r
2147                 vuint32_t:24;\r
2148                 vuint32_t ICEA0:1;\r
2149                 vuint32_t ICEA1:1;\r
2150                   vuint32_t:1;\r
2151                 vuint32_t ESSIE:2;\r
2152                   vuint32_t:1;\r
2153                 vuint32_t DBG:2;\r
2154             } B;\r
2155         } MCR;                  /* Module Configuration Register */\r
2156 \r
2157         int32_t EQADC_reserved00;\r
2158 \r
2159         union {\r
2160             vuint32_t R;\r
2161             struct {\r
2162                 vuint32_t:6;\r
2163                 vuint32_t NMF:26;\r
2164             } B;\r
2165         } NMSFR;                /* Null Message Send Format Register */\r
2166 \r
2167         union {\r
2168             vuint32_t R;\r
2169             struct {\r
2170                 vuint32_t:28;\r
2171                 vuint32_t DFL:4;\r
2172             } B;\r
2173         } ETDFR;                /* External Trigger Digital Filter Register */\r
2174 \r
2175         union {\r
2176             vuint32_t R;\r
2177             struct {\r
2178                 vuint32_t CFPUSH:32;\r
2179             } B;\r
2180         } CFPR[6];              /* CFIFO Push Registers */\r
2181 \r
2182         uint32_t eqadc_reserved1;\r
2183 \r
2184         uint32_t eqadc_reserved2;\r
2185 \r
2186         union {\r
2187             vuint32_t R;\r
2188             struct {\r
2189                 vuint32_t:16;\r
2190                 vuint32_t RFPOP:16;\r
2191             } B;\r
2192         } RFPR[6];              /* Result FIFO Pop Registers */\r
2193 \r
2194         uint32_t eqadc_reserved3;\r
2195 \r
2196         uint32_t eqadc_reserved4;\r
2197 \r
2198         union {\r
2199             vuint16_t R;\r
2200             struct {\r
2201                 vuint16_t:5;\r
2202                 vuint16_t SSE:1;\r
2203                 vuint16_t CFINV:1;\r
2204                   vuint16_t:1;\r
2205                 vuint16_t MODE:4;\r
2206                   vuint16_t:4;\r
2207             } B;\r
2208         } CFCR[6];              /* CFIFO Control Registers */\r
2209 \r
2210         uint32_t eqadc_reserved5;\r
2211 \r
2212         union {\r
2213             vuint16_t R;\r
2214             struct {\r
2215                 vuint16_t NCIE:1;\r
2216                 vuint16_t TORIE:1;\r
2217                 vuint16_t PIE:1;\r
2218                 vuint16_t EOQIE:1;\r
2219                 vuint16_t CFUIE:1;\r
2220                   vuint16_t:1;\r
2221                 vuint16_t CFFE:1;\r
2222                 vuint16_t CFFS:1;\r
2223                   vuint16_t:4;\r
2224                 vuint16_t RFOIE:1;\r
2225                   vuint16_t:1;\r
2226                 vuint16_t RFDE:1;\r
2227                 vuint16_t RFDS:1;\r
2228             } B;\r
2229         } IDCR[6];              /* Interrupt and DMA Control Registers */\r
2230 \r
2231         uint32_t eqadc_reserved6;\r
2232 \r
2233         union {\r
2234             vuint32_t R;\r
2235             struct {\r
2236                 vuint32_t NCF:1;\r
2237                 vuint32_t TORF:1;\r
2238                 vuint32_t PF:1;\r
2239                 vuint32_t EOQF:1;\r
2240                 vuint32_t CFUF:1;\r
2241                 vuint32_t SSS:1;\r
2242                 vuint32_t CFFF:1;\r
2243                   vuint32_t:5;\r
2244                 vuint32_t RFOF:1;\r
2245                   vuint32_t:1;\r
2246                 vuint32_t RFDF:1;\r
2247                   vuint32_t:1;\r
2248                 vuint32_t CFCTR:4;\r
2249                 vuint32_t TNXTPTR:4;\r
2250                 vuint32_t RFCTR:4;\r
2251                 vuint32_t POPNXTPTR:4;\r
2252             } B;\r
2253         } FISR[6];              /* FIFO and Interrupt Status Registers */\r
2254 \r
2255         uint32_t eqadc_reserved7;\r
2256 \r
2257         uint32_t eqadc_reserved8;\r
2258 \r
2259         union {\r
2260             vuint16_t R;\r
2261             struct {\r
2262                 vuint16_t:5;\r
2263                 vuint16_t TCCF:11;\r
2264             } B;\r
2265         } CFTCR[6];             /* CFIFO Transfer Counter Registers */\r
2266 \r
2267         uint32_t eqadc_reserved9;\r
2268 \r
2269         union {\r
2270             vuint32_t R;\r
2271             struct {\r
2272                 vuint32_t CFS0:2;\r
2273                 vuint32_t CFS1:2;\r
2274                 vuint32_t CFS2:2;\r
2275                 vuint32_t CFS3:2;\r
2276                 vuint32_t CFS4:2;\r
2277                 vuint32_t CFS5:2;\r
2278                   vuint32_t:5;\r
2279                 vuint32_t LCFTCB0:4;\r
2280                 vuint32_t TC_LCFTCB0:11;\r
2281             } B;\r
2282         } CFSSR0;               /* CFIFO Status Register 0 */\r
2283 \r
2284         union {\r
2285             vuint32_t R;\r
2286             struct {\r
2287                 vuint32_t CFS0:2;\r
2288                 vuint32_t CFS1:2;\r
2289                 vuint32_t CFS2:2;\r
2290                 vuint32_t CFS3:2;\r
2291                 vuint32_t CFS4:2;\r
2292                 vuint32_t CFS5:2;\r
2293                   vuint32_t:5;\r
2294                 vuint32_t LCFTCB1:4;\r
2295                 vuint32_t TC_LCFTCB1:11;\r
2296             } B;\r
2297         } CFSSR1;               /* CFIFO Status Register 1 */\r
2298 \r
2299         union {\r
2300             vuint32_t R;\r
2301             struct {\r
2302                 vuint32_t CFS0:2;\r
2303                 vuint32_t CFS1:2;\r
2304                 vuint32_t CFS2:2;\r
2305                 vuint32_t CFS3:2;\r
2306                 vuint32_t CFS4:2;\r
2307                 vuint32_t CFS5:2;\r
2308                   vuint32_t:4;\r
2309                 vuint32_t ECBNI:1;\r
2310                 vuint32_t LCFTSSI:4;\r
2311                 vuint32_t TC_LCFTSSI:11;\r
2312             } B;\r
2313         } CFSSR2;               /* CFIFO Status Register 2 */\r
2314 \r
2315         union {\r
2316             vuint32_t R;\r
2317             struct {\r
2318                 vuint32_t CFS0:2;\r
2319                 vuint32_t CFS1:2;\r
2320                 vuint32_t CFS2:2;\r
2321                 vuint32_t CFS3:2;\r
2322                 vuint32_t CFS4:2;\r
2323                 vuint32_t CFS5:2;\r
2324                   vuint32_t:20;\r
2325             } B;\r
2326         } CFSR;\r
2327 \r
2328         uint32_t eqadc_reserved11;\r
2329 \r
2330         union {\r
2331             vuint32_t R;\r
2332             struct {\r
2333                 vuint32_t:21;\r
2334                 vuint32_t MDT:3;\r
2335                   vuint32_t:4;\r
2336                 vuint32_t BR:4;\r
2337             } B;\r
2338         } SSICR;                /* SSI Control Register */\r
2339 \r
2340         union {\r
2341             vuint32_t R;\r
2342             struct {\r
2343                 vuint32_t RDV:1;\r
2344                   vuint32_t:5;\r
2345                 vuint32_t RDATA:26;\r
2346             } B;\r
2347         } SSIRDR;               /* SSI Recieve Data Register */\r
2348 \r
2349         uint32_t eqadc_reserved12[17];\r
2350 \r
2351         struct {\r
2352             union {\r
2353                 vuint32_t R;\r
2354                 struct {\r
2355                     vuint32_t:32;\r
2356                 } B;\r
2357             } R[4];\r
2358 \r
2359             uint32_t eqadc_reserved13[12];\r
2360 \r
2361         } CF[6];\r
2362 \r
2363         uint32_t eqadc_reserved14[32];\r
2364 \r
2365         struct {\r
2366             union {\r
2367                 vuint32_t R;\r
2368                 struct {\r
2369                     vuint32_t:32;\r
2370                 } B;\r
2371             } R[4];\r
2372 \r
2373             uint32_t eqadc_reserved15[12];\r
2374 \r
2375         } RF[6];\r
2376 \r
2377     };\r
2378 /****************************************************************************/\r
2379 /*                          MODULE : DSPI                                   */\r
2380 /****************************************************************************/\r
2381     struct DSPI_tag {\r
2382         union {\r
2383             vuint32_t R;\r
2384             struct {\r
2385                 vuint32_t MSTR:1;\r
2386                 vuint32_t CONT_SCKE:1;\r
2387                 vuint32_t DCONF:2;\r
2388                 vuint32_t FRZ:1;\r
2389                 vuint32_t MTFE:1;\r
2390                 vuint32_t PCSSE:1;\r
2391                 vuint32_t ROOE:1;\r
2392                   vuint32_t:2;\r
2393                 vuint32_t PCSIS5:1;\r
2394                 vuint32_t PCSIS4:1;\r
2395                 vuint32_t PCSIS3:1;\r
2396                 vuint32_t PCSIS2:1;\r
2397                 vuint32_t PCSIS1:1;\r
2398                 vuint32_t PCSIS0:1;\r
2399                 vuint32_t DOZE:1;\r
2400                 vuint32_t MDIS:1;\r
2401                 vuint32_t DIS_TXF:1;\r
2402                 vuint32_t DIS_RXF:1;\r
2403                 vuint32_t CLR_TXF:1;\r
2404                 vuint32_t CLR_RXF:1;\r
2405                 vuint32_t SMPL_PT:2;\r
2406                   vuint32_t:7;\r
2407                 vuint32_t HALT:1;\r
2408             } B;\r
2409         } MCR;                  /* Module Configuration Register */\r
2410 \r
2411         uint32_t dspi_reserved1;\r
2412 \r
2413         union {\r
2414             vuint32_t R;\r
2415             struct {\r
2416                 vuint32_t TCNT:16;\r
2417                   vuint32_t:16;\r
2418             } B;\r
2419         } TCR;\r
2420 \r
2421         union {\r
2422             vuint32_t R;\r
2423             struct {\r
2424                 vuint32_t DBR:1;\r
2425                 vuint32_t FMSZ:4;\r
2426                 vuint32_t CPOL:1;\r
2427                 vuint32_t CPHA:1;\r
2428                 vuint32_t LSBFE:1;\r
2429                 vuint32_t PCSSCK:2;\r
2430                 vuint32_t PASC:2;\r
2431                 vuint32_t PDT:2;\r
2432                 vuint32_t PBR:2;\r
2433                 vuint32_t CSSCK:4;\r
2434                 vuint32_t ASC:4;\r
2435                 vuint32_t DT:4;\r
2436                 vuint32_t BR:4;\r
2437             } B;\r
2438         } CTAR[8];              /* Clock and Transfer Attributes Registers */\r
2439 \r
2440         union {\r
2441             vuint32_t R;\r
2442             struct {\r
2443                 vuint32_t TCF:1;\r
2444                 vuint32_t TXRXS:1;\r
2445                   vuint32_t:1;\r
2446                 vuint32_t EOQF:1;\r
2447                 vuint32_t TFUF:1;\r
2448                   vuint32_t:1;\r
2449                 vuint32_t TFFF:1;\r
2450                   vuint32_t:5;\r
2451                 vuint32_t RFOF:1;\r
2452                   vuint32_t:1;\r
2453                 vuint32_t RFDF:1;\r
2454                   vuint32_t:1;\r
2455                 vuint32_t TXCTR:4;\r
2456                 vuint32_t TXNXTPTR:4;\r
2457                 vuint32_t RXCTR:4;\r
2458                 vuint32_t POPNXTPTR:4;\r
2459             } B;\r
2460         } SR;                   /* Status Register */\r
2461 \r
2462         union {\r
2463             vuint32_t R;\r
2464             struct {\r
2465                 vuint32_t TCFRE:1;\r
2466                   vuint32_t:2;\r
2467                 vuint32_t EOQFRE:1;\r
2468                 vuint32_t TFUFRE:1;\r
2469                   vuint32_t:1;\r
2470                 vuint32_t TFFFRE:1;\r
2471                 vuint32_t TFFFDIRS:1;\r
2472                   vuint32_t:4;\r
2473                 vuint32_t RFOFRE:1;\r
2474                   vuint32_t:1;\r
2475                 vuint32_t RFDFRE:1;\r
2476                 vuint32_t RFDFDIRS:1;\r
2477                   vuint32_t:16;\r
2478             } B;\r
2479         } RSER;                 /* DMA/Interrupt Request Select and Enable Register */\r
2480 \r
2481         union {\r
2482             vuint32_t R;\r
2483             struct {\r
2484                 vuint32_t CONT:1;\r
2485                 vuint32_t CTAS:3;\r
2486                 vuint32_t EOQ:1;\r
2487                 vuint32_t CTCNT:1;\r
2488                   vuint32_t:4;\r
2489                 vuint32_t PCS5:1;\r
2490                 vuint32_t PCS4:1;\r
2491                 vuint32_t PCS3:1;\r
2492                 vuint32_t PCS2:1;\r
2493                 vuint32_t PCS1:1;\r
2494                 vuint32_t PCS0:1;\r
2495                 vuint32_t TXDATA:16;\r
2496             } B;\r
2497         } PUSHR;                /* PUSH TX FIFO Register */\r
2498 \r
2499         union {\r
2500             vuint32_t R;\r
2501             struct {\r
2502                 vuint32_t:16;\r
2503                 vuint32_t RXDATA:16;\r
2504             } B;\r
2505         } POPR;                 /* POP RX FIFO Register */\r
2506 \r
2507         union {\r
2508             vuint32_t R;\r
2509             struct {\r
2510                 vuint32_t TXCMD:16;\r
2511                 vuint32_t TXDATA:16;\r
2512             } B;\r
2513         } TXFR[4];              /* Transmit FIFO Registers */\r
2514 \r
2515         vuint32_t DSPI_reserved_txf[12];\r
2516 \r
2517         union {\r
2518             vuint32_t R;\r
2519             struct {\r
2520                 vuint32_t:16;\r
2521                 vuint32_t RXDATA:16;\r
2522             } B;\r
2523         } RXFR[4];              /* Transmit FIFO Registers */\r
2524 \r
2525         vuint32_t DSPI_reserved_rxf[12];\r
2526 \r
2527         union {\r
2528             vuint32_t R;\r
2529             struct {\r
2530                 vuint32_t MTOE:1;\r
2531                   vuint32_t:1;\r
2532                 vuint32_t MTOCNT:6;\r
2533                   vuint32_t:3;\r
2534                 vuint32_t TSBC:1;\r
2535                 vuint32_t TXSS:1;\r
2536                 vuint32_t TPOL:1;\r
2537                 vuint32_t TRRE:1;\r
2538                 vuint32_t CID:1;\r
2539                 vuint32_t DCONT:1;\r
2540                 vuint32_t DSICTAS:3;\r
2541                   vuint32_t:6;\r
2542                 vuint32_t DPCS5:1;\r
2543                 vuint32_t DPCS4:1;\r
2544                 vuint32_t DPCS3:1;\r
2545                 vuint32_t DPCS2:1;\r
2546                 vuint32_t DPCS1:1;\r
2547                 vuint32_t DPCS0:1;\r
2548             } B;\r
2549         } DSICR;                /* DSI Configuration Register */\r
2550 \r
2551         union {\r
2552             vuint32_t R;\r
2553             struct {\r
2554                 vuint32_t:16;\r
2555                 vuint32_t SER_DATA:16;\r
2556             } B;\r
2557         } SDR;                  /* DSI Serialization Data Register */\r
2558 \r
2559         union {\r
2560             vuint32_t R;\r
2561             struct {\r
2562                 vuint32_t:16;\r
2563                 vuint32_t ASER_DATA:16;\r
2564             } B;\r
2565         } ASDR;                 /* DSI Alternate Serialization Data Register */\r
2566 \r
2567         union {\r
2568             vuint32_t R;\r
2569             struct {\r
2570                 vuint32_t:16;\r
2571                 vuint32_t COMP_DATA:16;\r
2572             } B;\r
2573         } COMPR;                /* DSI Transmit Comparison Register */\r
2574 \r
2575         union {\r
2576             vuint32_t R;\r
2577             struct {\r
2578                 vuint32_t:16;\r
2579                 vuint32_t DESER_DATA:16;\r
2580             } B;\r
2581         } DDR;                  /* DSI deserialization Data Register */\r
2582 \r
2583         union {\r
2584             vuint32_t R;\r
2585             struct {\r
2586                 vuint32_t:2;\r
2587                 vuint32_t TSBCNT:6;\r
2588                   vuint32_t:4;\r
2589                 vuint32_t TXSS:1;\r
2590                   vuint32_t:4;\r
2591                 vuint32_t DSICTAS:3;\r
2592                   vuint32_t:4;\r
2593                 vuint32_t DPCS1_7:1;\r
2594                 vuint32_t DPCS1_6:1;\r
2595                 vuint32_t DPCS1_5:1;\r
2596                 vuint32_t DPCS1_4:1;\r
2597                 vuint32_t DPCS1_3:1;\r
2598                 vuint32_t DPCS1_2:1;\r
2599                 vuint32_t DPCS1_1:1;\r
2600                 vuint32_t DPCS1_0:1;\r
2601             } B;\r
2602         } DSICR1;               /* DSI Configuration Register 1 */\r
2603 \r
2604     };\r
2605 /****************************************************************************/\r
2606 /*                          MODULE : eSCI                                   */\r
2607 /****************************************************************************/\r
2608     struct ESCI_tag {\r
2609         union {\r
2610             vuint32_t R;\r
2611             struct {\r
2612                 vuint32_t:3;\r
2613                 vuint32_t SBR:13;\r
2614                 vuint32_t LOOPS:1;\r
2615                 vuint32_t SCISDOZ:1;\r
2616                 vuint32_t RSRC:1;\r
2617                 vuint32_t M:1;\r
2618                 vuint32_t WAKE:1;\r
2619                 vuint32_t ILT:1;\r
2620                 vuint32_t PE:1;\r
2621                 vuint32_t PT:1;\r
2622                 vuint32_t TIE:1;\r
2623                 vuint32_t TCIE:1;\r
2624                 vuint32_t RIE:1;\r
2625                 vuint32_t ILIE:1;\r
2626                 vuint32_t TE:1;\r
2627                 vuint32_t RE:1;\r
2628                 vuint32_t RWU:1;\r
2629                 vuint32_t SBK:1;\r
2630             } B;\r
2631         } CR1;                  /* Control Register 1 */\r
2632 \r
2633         union {\r
2634             vuint16_t R;\r
2635             struct {\r
2636                 vuint16_t MDIS:1;\r
2637                 vuint16_t FBR:1;\r
2638                 vuint16_t BSTP:1;\r
2639                 vuint16_t IEBERR:1;\r
2640                 vuint16_t RXDMA:1;\r
2641                 vuint16_t TXDMA:1;\r
2642                 vuint16_t BRK13:1;\r
2643                   vuint16_t:1;\r
2644                 vuint16_t BESM13:1;\r
2645                 vuint16_t SBSTP:1;\r
2646                 vuint16_t M2:1;\r
2647                 vuint16_t INPOL:1;\r
2648                 vuint16_t ORIE:1;\r
2649                 vuint16_t NFIE:1;\r
2650                 vuint16_t FEIE:1;\r
2651                 vuint16_t PFIE:1;\r
2652             } B;\r
2653         } CR2;                  /* Control Register 2 */\r
2654 \r
2655         union {\r
2656             vuint16_t R;\r
2657             struct {\r
2658                 vuint16_t R8:1;\r
2659                 vuint16_t T8:1;\r
2660                   vuint16_t:6;\r
2661                 vuint8_t D;\r
2662             } B;\r
2663         } DR;                   /* Data Register */\r
2664 \r
2665         union {\r
2666             vuint32_t R;\r
2667             struct {\r
2668                 vuint32_t TDRE:1;\r
2669                 vuint32_t TC:1;\r
2670                 vuint32_t RDRF:1;\r
2671                 vuint32_t IDLE:1;\r
2672                 vuint32_t OR:1;\r
2673                 vuint32_t NF:1;\r
2674                 vuint32_t FE:1;\r
2675                 vuint32_t PF:1;\r
2676                   vuint32_t:3;\r
2677                 vuint32_t BERR:1;\r
2678                   vuint32_t:3;\r
2679                 vuint32_t RAF:1;\r
2680                 vuint32_t RXRDY:1;\r
2681                 vuint32_t TXRDY:1;\r
2682                 vuint32_t LWAKE:1;\r
2683                 vuint32_t STO:1;\r
2684                 vuint32_t PBERR:1;\r
2685                 vuint32_t CERR:1;\r
2686                 vuint32_t CKERR:1;\r
2687                 vuint32_t FRC:1;\r
2688                   vuint32_t:7;\r
2689                 vuint32_t OVFL:1;\r
2690             } B;\r
2691         } SR;                   /* Status Register */\r
2692 \r
2693         union {\r
2694             vuint32_t R;\r
2695             struct {\r
2696                 vuint32_t LRES:1;\r
2697                 vuint32_t WU:1;\r
2698                 vuint32_t WUD0:1;\r
2699                 vuint32_t WUD1:1;\r
2700                 vuint32_t LDBG:1;\r
2701                 vuint32_t DSF:1;\r
2702                 vuint32_t PRTY:1;\r
2703                 vuint32_t LIN:1;\r
2704                 vuint32_t RXIE:1;\r
2705                 vuint32_t TXIE:1;\r
2706                 vuint32_t WUIE:1;\r
2707                 vuint32_t STIE:1;\r
2708                 vuint32_t PBIE:1;\r
2709                 vuint32_t CIE:1;\r
2710                 vuint32_t CKIE:1;\r
2711                 vuint32_t FCIE:1;\r
2712                   vuint32_t:7;\r
2713                 vuint32_t OFIE:1;\r
2714                   vuint32_t:8;\r
2715             } B;\r
2716         } LCR;                  /* LIN Control Register */\r
2717 \r
2718         union {\r
2719             vuint32_t R;\r
2720         } LTR;                  /* LIN Transmit Register */\r
2721 \r
2722         union {\r
2723             vuint32_t R;\r
2724         } LRR;                  /* LIN Recieve Register */\r
2725 \r
2726         union {\r
2727             vuint32_t R;\r
2728         } LPR;                  /* LIN CRC Polynom Register  */\r
2729 \r
2730     };\r
2731 /****************************************************************************/\r
2732 /*                          MODULE : eSCI                                   */\r
2733 /****************************************************************************/\r
2734     struct ESCI_12_13_bit_tag {\r
2735         union {\r
2736             vuint16_t R;\r
2737             struct {\r
2738                 vuint16_t R12:1;\r
2739                 vuint16_t T8:1;\r
2740                 vuint16_t ERR:1;\r
2741                   vuint16_t:1;\r
2742                 vuint16_t D:12;\r
2743             } B;\r
2744         } DR;                   /* Data Register */\r
2745     };\r
2746 /****************************************************************************/\r
2747 /*                          MODULE : FlexCAN                                */\r
2748 /****************************************************************************/\r
2749     struct FLEXCAN2_tag {\r
2750         union {\r
2751             vuint32_t R;\r
2752             struct {\r
2753                 vuint32_t MDIS:1;\r
2754                 vuint32_t FRZ:1;\r
2755                   vuint32_t:1;\r
2756                 vuint32_t HALT:1;\r
2757                 vuint32_t NOTRDY:1;\r
2758                   vuint32_t:1;\r
2759                 vuint32_t SOFTRST:1;\r
2760                 vuint32_t FRZACK:1;\r
2761                   vuint32_t:1;\r
2762                   vuint32_t:1;\r
2763 \r
2764                 vuint32_t WRNEN:1;\r
2765 \r
2766                 vuint32_t MDISACK:1;\r
2767                   vuint32_t:1;\r
2768                   vuint32_t:1;\r
2769 \r
2770                 vuint32_t SRXDIS:1;\r
2771                 vuint32_t MBFEN:1;\r
2772                   vuint32_t:10;\r
2773 \r
2774                 vuint32_t MAXMB:6;\r
2775             } B;\r
2776         } MCR;                  /* Module Configuration Register */\r
2777 \r
2778         union {\r
2779             vuint32_t R;\r
2780             struct {\r
2781                 vuint32_t PRESDIV:8;\r
2782                 vuint32_t RJW:2;\r
2783                 vuint32_t PSEG1:3;\r
2784                 vuint32_t PSEG2:3;\r
2785                 vuint32_t BOFFMSK:1;\r
2786                 vuint32_t ERRMSK:1;\r
2787                 vuint32_t CLKSRC:1;\r
2788                 vuint32_t LPB:1;\r
2789 \r
2790                 vuint32_t TWRNMSK:1;\r
2791                 vuint32_t RWRNMSK:1;\r
2792                   vuint32_t:2;\r
2793 \r
2794                 vuint32_t SMP:1;\r
2795                 vuint32_t BOFFREC:1;\r
2796                 vuint32_t TSYN:1;\r
2797                 vuint32_t LBUF:1;\r
2798                 vuint32_t LOM:1;\r
2799                 vuint32_t PROPSEG:3;\r
2800             } B;\r
2801         } CR;                   /* Control Register */\r
2802 \r
2803         union {\r
2804             vuint32_t R;\r
2805         } TIMER;                /* Free Running Timer */\r
2806         int32_t FLEXCAN_reserved00;\r
2807 \r
2808         union {\r
2809             vuint32_t R;\r
2810             struct {\r
2811                 vuint32_t:3;\r
2812                 vuint32_t MI:29;\r
2813             } B;\r
2814         } RXGMASK;              /* RX Global Mask */\r
2815 \r
2816         union {\r
2817             vuint32_t R;\r
2818             struct {\r
2819                 vuint32_t:3;\r
2820                 vuint32_t MI:29;\r
2821             } B;\r
2822         } RX14MASK;             /* RX 14 Mask */\r
2823 \r
2824         union {\r
2825             vuint32_t R;\r
2826             struct {\r
2827                 vuint32_t:3;\r
2828                 vuint32_t MI:29;\r
2829             } B;\r
2830         } RX15MASK;             /* RX 15 Mask */\r
2831 \r
2832         union {\r
2833             vuint32_t R;\r
2834             struct {\r
2835                 vuint32_t:16;\r
2836                 vuint32_t RXECNT:8;\r
2837                 vuint32_t TXECNT:8;\r
2838             } B;\r
2839         } ECR;                  /* Error Counter Register */\r
2840 \r
2841         union {\r
2842             vuint32_t R;\r
2843             struct {\r
2844                 vuint32_t:14;\r
2845 \r
2846                 vuint32_t TWRNINT:1;\r
2847                 vuint32_t RWRNINT:1;\r
2848 \r
2849                 vuint32_t BIT1ERR:1;\r
2850                 vuint32_t BIT0ERR:1;\r
2851                 vuint32_t ACKERR:1;\r
2852                 vuint32_t CRCERR:1;\r
2853                 vuint32_t FRMERR:1;\r
2854                 vuint32_t STFERR:1;\r
2855                 vuint32_t TXWRN:1;\r
2856                 vuint32_t RXWRN:1;\r
2857                 vuint32_t IDLE:1;\r
2858                 vuint32_t TXRX:1;\r
2859                 vuint32_t FLTCONF:2;\r
2860                   vuint32_t:1;\r
2861                 vuint32_t BOFFINT:1;\r
2862                 vuint32_t ERRINT:1;\r
2863                   vuint32_t:1;\r
2864             } B;\r
2865         } ESR;                  /* Error and Status Register */\r
2866 \r
2867         union {\r
2868             vuint32_t R;\r
2869             struct {\r
2870                 vuint32_t BUF63M:1;\r
2871                 vuint32_t BUF62M:1;\r
2872                 vuint32_t BUF61M:1;\r
2873                 vuint32_t BUF60M:1;\r
2874                 vuint32_t BUF59M:1;\r
2875                 vuint32_t BUF58M:1;\r
2876                 vuint32_t BUF57M:1;\r
2877                 vuint32_t BUF56M:1;\r
2878                 vuint32_t BUF55M:1;\r
2879                 vuint32_t BUF54M:1;\r
2880                 vuint32_t BUF53M:1;\r
2881                 vuint32_t BUF52M:1;\r
2882                 vuint32_t BUF51M:1;\r
2883                 vuint32_t BUF50M:1;\r
2884                 vuint32_t BUF49M:1;\r
2885                 vuint32_t BUF48M:1;\r
2886                 vuint32_t BUF47M:1;\r
2887                 vuint32_t BUF46M:1;\r
2888                 vuint32_t BUF45M:1;\r
2889                 vuint32_t BUF44M:1;\r
2890                 vuint32_t BUF43M:1;\r
2891                 vuint32_t BUF42M:1;\r
2892                 vuint32_t BUF41M:1;\r
2893                 vuint32_t BUF40M:1;\r
2894                 vuint32_t BUF39M:1;\r
2895                 vuint32_t BUF38M:1;\r
2896                 vuint32_t BUF37M:1;\r
2897                 vuint32_t BUF36M:1;\r
2898                 vuint32_t BUF35M:1;\r
2899                 vuint32_t BUF34M:1;\r
2900                 vuint32_t BUF33M:1;\r
2901                 vuint32_t BUF32M:1;\r
2902             } B;\r
2903         } IMRH;                 /* Interruput Masks Register */\r
2904 \r
2905         union {\r
2906             vuint32_t R;\r
2907             struct {\r
2908                 vuint32_t BUF31M:1;\r
2909                 vuint32_t BUF30M:1;\r
2910                 vuint32_t BUF29M:1;\r
2911                 vuint32_t BUF28M:1;\r
2912                 vuint32_t BUF27M:1;\r
2913                 vuint32_t BUF26M:1;\r
2914                 vuint32_t BUF25M:1;\r
2915                 vuint32_t BUF24M:1;\r
2916                 vuint32_t BUF23M:1;\r
2917                 vuint32_t BUF22M:1;\r
2918                 vuint32_t BUF21M:1;\r
2919                 vuint32_t BUF20M:1;\r
2920                 vuint32_t BUF19M:1;\r
2921                 vuint32_t BUF18M:1;\r
2922                 vuint32_t BUF17M:1;\r
2923                 vuint32_t BUF16M:1;\r
2924                 vuint32_t BUF15M:1;\r
2925                 vuint32_t BUF14M:1;\r
2926                 vuint32_t BUF13M:1;\r
2927                 vuint32_t BUF12M:1;\r
2928                 vuint32_t BUF11M:1;\r
2929                 vuint32_t BUF10M:1;\r
2930                 vuint32_t BUF09M:1;\r
2931                 vuint32_t BUF08M:1;\r
2932                 vuint32_t BUF07M:1;\r
2933                 vuint32_t BUF06M:1;\r
2934                 vuint32_t BUF05M:1;\r
2935                 vuint32_t BUF04M:1;\r
2936                 vuint32_t BUF03M:1;\r
2937                 vuint32_t BUF02M:1;\r
2938                 vuint32_t BUF01M:1;\r
2939                 vuint32_t BUF00M:1;\r
2940             } B;\r
2941         } IMRL;                 /* Interruput Masks Register */\r
2942 \r
2943         union {\r
2944             vuint32_t R;\r
2945             struct {\r
2946                 vuint32_t BUF63I:1;\r
2947                 vuint32_t BUF62I:1;\r
2948                 vuint32_t BUF61I:1;\r
2949                 vuint32_t BUF60I:1;\r
2950                 vuint32_t BUF59I:1;\r
2951                 vuint32_t BUF58I:1;\r
2952                 vuint32_t BUF57I:1;\r
2953                 vuint32_t BUF56I:1;\r
2954                 vuint32_t BUF55I:1;\r
2955                 vuint32_t BUF54I:1;\r
2956                 vuint32_t BUF53I:1;\r
2957                 vuint32_t BUF52I:1;\r
2958                 vuint32_t BUF51I:1;\r
2959                 vuint32_t BUF50I:1;\r
2960                 vuint32_t BUF49I:1;\r
2961                 vuint32_t BUF48I:1;\r
2962                 vuint32_t BUF47I:1;\r
2963                 vuint32_t BUF46I:1;\r
2964                 vuint32_t BUF45I:1;\r
2965                 vuint32_t BUF44I:1;\r
2966                 vuint32_t BUF43I:1;\r
2967                 vuint32_t BUF42I:1;\r
2968                 vuint32_t BUF41I:1;\r
2969                 vuint32_t BUF40I:1;\r
2970                 vuint32_t BUF39I:1;\r
2971                 vuint32_t BUF38I:1;\r
2972                 vuint32_t BUF37I:1;\r
2973                 vuint32_t BUF36I:1;\r
2974                 vuint32_t BUF35I:1;\r
2975                 vuint32_t BUF34I:1;\r
2976                 vuint32_t BUF33I:1;\r
2977                 vuint32_t BUF32I:1;\r
2978             } B;\r
2979         } IFRH;                 /* Interruput Flag Register */\r
2980 \r
2981         union {\r
2982             vuint32_t R;\r
2983             struct {\r
2984                 vuint32_t BUF31I:1;\r
2985                 vuint32_t BUF30I:1;\r
2986                 vuint32_t BUF29I:1;\r
2987                 vuint32_t BUF28I:1;\r
2988                 vuint32_t BUF27I:1;\r
2989                 vuint32_t BUF26I:1;\r
2990                 vuint32_t BUF25I:1;\r
2991                 vuint32_t BUF24I:1;\r
2992                 vuint32_t BUF23I:1;\r
2993                 vuint32_t BUF22I:1;\r
2994                 vuint32_t BUF21I:1;\r
2995                 vuint32_t BUF20I:1;\r
2996                 vuint32_t BUF19I:1;\r
2997                 vuint32_t BUF18I:1;\r
2998                 vuint32_t BUF17I:1;\r
2999                 vuint32_t BUF16I:1;\r
3000                 vuint32_t BUF15I:1;\r
3001                 vuint32_t BUF14I:1;\r
3002                 vuint32_t BUF13I:1;\r
3003                 vuint32_t BUF12I:1;\r
3004                 vuint32_t BUF11I:1;\r
3005                 vuint32_t BUF10I:1;\r
3006                 vuint32_t BUF09I:1;\r
3007                 vuint32_t BUF08I:1;\r
3008                 vuint32_t BUF07I:1;\r
3009                 vuint32_t BUF06I:1;\r
3010                 vuint32_t BUF05I:1;\r
3011                 vuint32_t BUF04I:1;\r
3012                 vuint32_t BUF03I:1;\r
3013                 vuint32_t BUF02I:1;\r
3014                 vuint32_t BUF01I:1;\r
3015                 vuint32_t BUF00I:1;\r
3016             } B;\r
3017         } IFRL;                 /* Interruput Flag Register */\r
3018 \r
3019         uint32_t flexcan2_reserved2[19];\r
3020 \r
3021         struct canbuf_t {\r
3022             union {\r
3023                 vuint32_t R;\r
3024                 struct {\r
3025                     vuint32_t:4;\r
3026                     vuint32_t CODE:4;\r
3027                       vuint32_t:1;\r
3028                     vuint32_t SRR:1;\r
3029                     vuint32_t IDE:1;\r
3030                     vuint32_t RTR:1;\r
3031                     vuint32_t LENGTH:4;\r
3032                     vuint32_t TIMESTAMP:16;\r
3033                 } B;\r
3034             } CS;\r
3035 \r
3036             union {\r
3037                 vuint32_t R;\r
3038                 struct {\r
3039                     vuint32_t:3;\r
3040                     vuint32_t STD_ID:11;\r
3041                     vuint32_t EXT_ID:18;\r
3042                 } B;\r
3043             } ID;\r
3044 \r
3045             union {\r
3046                 vuint8_t B[8];  /* Data buffer in Bytes (8 bits) */\r
3047                 vuint16_t H[4]; /* Data buffer in Half-words (16 bits) */\r
3048                 vuint32_t W[2]; /* Data buffer in words (32 bits) */\r
3049                 vuint32_t R[2]; /* Data buffer in words (32 bits) */\r
3050             } DATA;\r
3051 \r
3052         } BUF[32];\r
3053     };\r
3054 /****************************************************************************/\r
3055 /*                     MODULE : Decimation Filter (DECFIL)                  */\r
3056 /****************************************************************************/\r
3057     struct DECFIL_tag {\r
3058         union {\r
3059             vuint32_t R;\r
3060             struct {\r
3061                 vuint32_t MDIS:1;\r
3062                 vuint32_t FREN:1;\r
3063                   vuint32_t:1;\r
3064                 vuint32_t FRZ:1;\r
3065                 vuint32_t SRES:1;\r
3066                   vuint32_t:2;\r
3067                 vuint32_t IDEN:1;\r
3068                 vuint32_t ODEN:1;\r
3069                 vuint32_t ERREN:1;\r
3070                   vuint32_t:1;\r
3071                 vuint32_t FTYPE:2;\r
3072                   vuint32_t:1;\r
3073                 vuint32_t SCAL:2;\r
3074                   vuint32_t:1;\r
3075                 vuint32_t SAT:1;\r
3076                 vuint32_t ISEL:1;\r
3077                   vuint32_t:1;\r
3078                 vuint32_t DEC_RATE:4;\r
3079                   vuint32_t:8;\r
3080             } B;\r
3081         } MCR;                  /* Configuration Register */\r
3082 \r
3083         union {\r
3084             vuint32_t R;\r
3085             struct {\r
3086                 vuint32_t BSY:1;\r
3087                   vuint32_t:1;\r
3088                 vuint32_t DEC_COUNTER:4;\r
3089                 vuint32_t IDFC:1;\r
3090                 vuint32_t ODFC:1;\r
3091                   vuint32_t:5;\r
3092                 vuint32_t OVFC:1;\r
3093                 vuint32_t OVRC:1;\r
3094                 vuint32_t IVRC:1;\r
3095                   vuint32_t:6;\r
3096                 vuint32_t IDF:1;\r
3097                 vuint32_t ODF:1;\r
3098                   vuint32_t:5;\r
3099                 vuint32_t OVF:1;\r
3100                 vuint32_t OVR:1;\r
3101                 vuint32_t IVR:1;\r
3102             } B;\r
3103         } MSR;                  /* Status Register */\r
3104 \r
3105         uint32_t decfil_reserved1[2];\r
3106 \r
3107         union {\r
3108             vuint32_t R;\r
3109             struct {\r
3110                 vuint32_t:14;\r
3111                 vuint32_t PREFILL:1;\r
3112                 vuint32_t FLUSH:1;\r
3113                 vuint32_t INPBUF:16;\r
3114             } B;\r
3115         } IB;\r
3116 \r
3117         union {\r
3118             vuint32_t R;\r
3119             struct {\r
3120                 vuint32_t:12;\r
3121                 vuint32_t OUTTEG:4;\r
3122                 vuint32_t OUTBUF:16;\r
3123             } B;\r
3124         } OB;\r
3125 \r
3126         uint32_t decfil_reserved2[2];\r
3127 \r
3128         union {\r
3129             vuint16_t R;\r
3130             struct {\r
3131                 vuint32_t:8;\r
3132                 vuint32_t COEF:24;\r
3133             } B;\r
3134         } COEF[9];              /* Filter Coefficient Registers */\r
3135 \r
3136         uint32_t decfil_reserved3[13];\r
3137 \r
3138         union {\r
3139             vuint16_t R;\r
3140             struct {\r
3141                 vuint32_t:8;\r
3142                 vuint32_t COEF:24;\r
3143             } B;\r
3144         } TAP[8];               /* Filter TAP Registers */\r
3145 \r
3146     };\r
3147 /****************************************************************************/\r
3148 /*                     MODULE : Periodic Interval Timer (PIT)               */\r
3149 /****************************************************************************/\r
3150     struct PIT_tag {\r
3151         union {\r
3152             vuint32_t R;\r
3153             struct {\r
3154                 vuint32_t:29;\r
3155                 vuint32_t MDIS_RTI:1;\r
3156                 vuint32_t MDIS:1;\r
3157                 vuint32_t FRZ:1;\r
3158             } B;\r
3159         } MCR;                  /* PIT Module Control Register */\r
3160 \r
3161         uint32_t pit_reserved1[59];\r
3162 \r
3163         struct {\r
3164             union {\r
3165                 vuint32_t R;\r
3166             } LDVAL;            /* Timer Load Value Register */\r
3167 \r
3168             union {\r
3169                 vuint32_t R;\r
3170             } CVAL;             /* Current Timer Value Register */\r
3171 \r
3172             union {\r
3173                 vuint32_t R;\r
3174                 struct {\r
3175                     vuint32_t:30;\r
3176                     vuint32_t TIE:1;\r
3177                     vuint32_t TEN:1;\r
3178                 } B;\r
3179             } TCTRL;            /* Timer Control Register */\r
3180 \r
3181             union {\r
3182                 vuint32_t R;\r
3183                 struct {\r
3184                     vuint32_t:31;\r
3185                     vuint32_t TIF:1;\r
3186                 } B;\r
3187             } TFLG;             /* Timer Flag Register */\r
3188         } RTI;                  /* RTI Channel */\r
3189 \r
3190         struct {\r
3191             union {\r
3192                 vuint32_t R;\r
3193             } LDVAL;            /* Timer Load Value Register */\r
3194 \r
3195             union {\r
3196                 vuint32_t R;\r
3197             } CVAL;             /* Current Timer Value Register */\r
3198 \r
3199             union {\r
3200                 vuint32_t R;\r
3201                 struct {\r
3202                     vuint32_t:30;\r
3203                     vuint32_t TIE:1;\r
3204                     vuint32_t TEN:1;\r
3205                 } B;\r
3206             } TCTRL;            /* Timer Control Register */\r
3207 \r
3208             union {\r
3209                 vuint32_t R;\r
3210                 struct {\r
3211                     vuint32_t:31;\r
3212                     vuint32_t TIF:1;\r
3213                 } B;\r
3214             } TFLG;             /* Timer Flag Register */\r
3215         } TIMER[4];             /* Timer Channels */\r
3216 \r
3217     };\r
3218 /****************************************************************************/\r
3219 /*                     MODULE : System Timer Module (STM)                   */\r
3220 /****************************************************************************/\r
3221     struct STM_tag {\r
3222         union {\r
3223             vuint32_t R;\r
3224             struct {\r
3225                 vuint32_t:16;\r
3226                 vuint32_t CPS:8;\r
3227                   vuint32_t:6;\r
3228                 vuint32_t FRZ:1;\r
3229                 vuint32_t TEN:1;\r
3230             } B;\r
3231         } CR;                   /* STM Control Register */\r
3232 \r
3233         union {\r
3234             vuint32_t R;\r
3235         } CNT;                  /* STM Counter Value */\r
3236 \r
3237         uint32_t stm_reserved1[2];\r
3238 \r
3239         union {\r
3240             vuint32_t R;\r
3241             struct {\r
3242                 vuint32_t:31;\r
3243                 vuint32_t CEN:1;\r
3244             } B;\r
3245         } CCR0;                 /* STM Channel 0 Control Register */\r
3246 \r
3247         union {\r
3248             vuint32_t R;\r
3249             struct {\r
3250                 vuint32_t:31;\r
3251                 vuint32_t CIF:1;\r
3252             } B;\r
3253         } CIR0;                 /* STM Channel 0 Interrupt Register */\r
3254 \r
3255         union {\r
3256             vuint32_t R;\r
3257         } CMP0;                 /* STM Channel 0 Compare Register */\r
3258 \r
3259         uint32_t stm_reserved2;\r
3260 \r
3261         union {\r
3262             vuint32_t R;\r
3263             struct {\r
3264                 vuint32_t:31;\r
3265                 vuint32_t CEN:1;\r
3266             } B;\r
3267         } CCR1;                 /* STM Channel 0 Control Register */\r
3268 \r
3269         union {\r
3270             vuint32_t R;\r
3271             struct {\r
3272                 vuint32_t:31;\r
3273                 vuint32_t CIF:1;\r
3274             } B;\r
3275         } CIR1;                 /* STM Channel 0 Interrupt Register */\r
3276 \r
3277         union {\r
3278             vuint32_t R;\r
3279         } CMP1;                 /* STM Channel 0 Compare Register */\r
3280 \r
3281         uint32_t stm_reserved3;\r
3282 \r
3283         union {\r
3284             vuint32_t R;\r
3285             struct {\r
3286                 vuint32_t:31;\r
3287                 vuint32_t CEN:1;\r
3288             } B;\r
3289         } CCR2;                 /* STM Channel 0 Control Register */\r
3290 \r
3291         union {\r
3292             vuint32_t R;\r
3293             struct {\r
3294                 vuint32_t:31;\r
3295                 vuint32_t CIF:1;\r
3296             } B;\r
3297         } CIR2;                 /* STM Channel 0 Interrupt Register */\r
3298 \r
3299         union {\r
3300             vuint32_t R;\r
3301         } CMP2;                 /* STM Channel 0 Compare Register */\r
3302 \r
3303         uint32_t stm_reserved4;\r
3304 \r
3305         union {\r
3306             vuint32_t R;\r
3307             struct {\r
3308                 vuint32_t:31;\r
3309                 vuint32_t CEN:1;\r
3310             } B;\r
3311         } CCR3;                 /* STM Channel 0 Control Register */\r
3312 \r
3313         union {\r
3314             vuint32_t R;\r
3315             struct {\r
3316                 vuint32_t:31;\r
3317                 vuint32_t CIF:1;\r
3318             } B;\r
3319         } CIR3;                 /* STM Channel 0 Interrupt Register */\r
3320 \r
3321         union {\r
3322             vuint32_t R;\r
3323         } CMP3;                 /* STM Channel 0 Compare Register */\r
3324 \r
3325         uint32_t stm_reserved5;\r
3326     };\r
3327 /****************************************************************************/\r
3328 /*                     MODULE : Software Watchdog Timer (SWT)               */\r
3329 /****************************************************************************/\r
3330     struct SWT_tag {\r
3331         union {\r
3332             vuint32_t R;\r
3333             struct {\r
3334                 vuint32_t MAP0:1;\r
3335                 vuint32_t MAP1:1;\r
3336                 vuint32_t MAP2:1;\r
3337                 vuint32_t MAP3:1;\r
3338                 vuint32_t MAP4:1;\r
3339                 vuint32_t MAP5:1;\r
3340                 vuint32_t MAP6:1;\r
3341                 vuint32_t MAP7:1;\r
3342                   vuint32_t:15;\r
3343                 vuint32_t RIA:1;\r
3344                 vuint32_t WNO:1;\r
3345                 vuint32_t ITR:1;\r
3346                 vuint32_t HLK:1;\r
3347                 vuint32_t SLK:1;\r
3348                 vuint32_t CSL:1;\r
3349                 vuint32_t STP:1;\r
3350                 vuint32_t FRZ:1;\r
3351                 vuint32_t WEN:1;\r
3352             } B;\r
3353         } CR;                   /* SWT Control Register */\r
3354 \r
3355         union {\r
3356             vuint32_t R;\r
3357             struct {\r
3358                 vuint32_t:31;\r
3359                 vuint32_t TIF:1;\r
3360             } B;\r
3361         } IR;                   /* SWT Interrupt Register */\r
3362 \r
3363         union {\r
3364             vuint32_t R;\r
3365         } TO;                   /* SWT Time-out Register */\r
3366 \r
3367         union {\r
3368             vuint32_t R;\r
3369         } WN;                   /* SWT Window Register */\r
3370 \r
3371         union {\r
3372             vuint32_t R;\r
3373             struct {\r
3374                 vuint32_t:16;\r
3375                 vuint32_t WSC:16;\r
3376             } B;\r
3377         } SR;                   /* SWT Service Register */\r
3378 \r
3379         union {\r
3380             vuint32_t R;\r
3381         } CO;                   /* Counter Output Register */\r
3382 \r
3383     };\r
3384 /****************************************************************************/\r
3385 /*                     MODULE : Power Management Controller (PMC)           */\r
3386 /****************************************************************************/\r
3387     struct PMC_tag {\r
3388         union {\r
3389             vuint32_t R;\r
3390             struct {\r
3391                 vuint32_t LVIRR:1;\r
3392                 vuint32_t LVIHR:1;\r
3393                 vuint32_t LVI5R:1;\r
3394                 vuint32_t LVI3R:1;\r
3395                 vuint32_t LVI1R:1;\r
3396                 vuint32_t BRW:1;\r
3397                 vuint32_t BGS1:1;\r
3398                 vuint32_t BGS2:1;\r
3399                 vuint32_t LVIRE:1;\r
3400                 vuint32_t LVIHE:1;\r
3401                 vuint32_t LVI5E:1;\r
3402                 vuint32_t LVI3E:1;\r
3403                 vuint32_t LVI1E:1;\r
3404                   vuint32_t:2;\r
3405                 vuint32_t TLK:1;\r
3406                 vuint32_t LVIRC:1;\r
3407                 vuint32_t LVIHC:1;\r
3408                 vuint32_t LVI5C:1;\r
3409                 vuint32_t LVI3C:1;\r
3410                 vuint32_t LVI1C:1;\r
3411                   vuint32_t:3;\r
3412                 vuint32_t LVIRF:1;\r
3413                 vuint32_t LVIHF:1;\r
3414                 vuint32_t LVI5F:1;\r
3415                 vuint32_t LVI3F:1;\r
3416                 vuint32_t LVI1F:1;\r
3417                   vuint32_t:3;\r
3418             } B;\r
3419         } CFGR;                 /* Configuration and status register */\r
3420 \r
3421         union {\r
3422             vuint32_t R;\r
3423             struct {\r
3424                 vuint32_t:12;\r
3425                 vuint32_t LVI50TRIM:4;\r
3426                 vuint32_t V33TRIM:4;\r
3427                 vuint32_t LVI33TRIM:4;\r
3428                 vuint32_t V12TRIM:4;\r
3429                 vuint32_t LVI12TRIM:4;\r
3430             } B;\r
3431         } TRIMR;                /* Trimming register */\r
3432     };\r
3433 \r
3434 /* Define memories */\r
3435 \r
3436 #if 0\r
3437 #define SRAM_START  0x40000000\r
3438 #define SRAM_SIZE       0xC000\r
3439 #define SRAM_END    0x4000BFFF\r
3440 \r
3441 #define FLASH_START         0x0\r
3442 #define FLASH_SIZE     0x100000\r
3443 #define FLASH_END       0xFFFFF\r
3444 #endif\r
3445 \r
3446 /* Define instances of modules */\r
3447 #define FMPLL     (*( volatile struct FMPLL_tag *)     0xC3F80000)\r
3448 #define EBI       (*( volatile struct EBI_tag *)       0xC3F84000)\r
3449 #define FLASH     (*( volatile struct FLASH_tag *)     0xC3F88000)\r
3450 #define SIU       (*( volatile struct SIU_tag *)       0xC3F90000)\r
3451 \r
3452 #define EMIOS     (*( volatile struct EMIOS_tag *)     0xC3FA0000)\r
3453 #define PMC       (*( volatile struct PMC_tag *)       0xC3FBC000)\r
3454 #define ETPU      (*( volatile struct ETPU_tag *)      0xC3FC0000)\r
3455 #define ETPU_DATA_RAM  (*( uint32_t *)        0xC3FC8000)\r
3456 #define ETPU_DATA_RAM_EXT  (*( uint32_t *)    0xC3FCC000)\r
3457 #define ETPU_DATA_RAM_END  0xC3FC89FC\r
3458 #define CODE_RAM       (*( uint32_t *)        0xC3FD0000)\r
3459 #define ETPU_CODE_RAM  (*( uint32_t *)        0xC3FD0000)\r
3460 #define PIT       (*( volatile struct PIT_tag *)       0xC3FF0000)\r
3461 \r
3462 #define PBRIDGE (*( struct PBRIDGE_tag *)              0xFFF00000)\r
3463 #define XBAR      (*( volatile struct XBAR_tag *)      0xFFF04000)\r
3464 #define SWT       (*( volatile struct SWT_tag *)       0xFFF38000)\r
3465 #define STM       (*( volatile struct STM_tag *)       0xFFF3C000)\r
3466 #define ECSM      (*( volatile struct ECSM_tag *)      0xFFF40000)\r
3467 #define EDMA      (*( volatile struct EDMA_tag *)      0xFFF44000)\r
3468 #define INTC      (*( volatile struct INTC_tag *)      0xFFF48000)\r
3469 \r
3470 #define EQADC     (*( volatile struct EQADC_tag *)     0xFFF80000)\r
3471 #define DECFIL    (*( volatile struct DECFIL_tag *)    0xFFF88000)\r
3472 \r
3473 #define DSPI_B    (*( volatile struct DSPI_tag *)      0xFFF94000)\r
3474 #define DSPI_C    (*( volatile struct DSPI_tag *)      0xFFF98000)\r
3475 \r
3476 #define ESCI_A    (*( volatile struct ESCI_tag *)      0xFFFB0000)\r
3477 #define ESCI_A_12_13    (*( volatile struct ESCI_12_13_bit_tag *)      0xFFFB0006)\r
3478 #define ESCI_B    (*( volatile struct ESCI_tag *)      0xFFFB4000)\r
3479 #define ESCI_B_12_13    (*( volatile struct ESCI_12_13_bit_tag *)      0xFFFB4006)\r
3480 \r
3481 #define CAN_A     (*( volatile struct FLEXCAN2_tag *)  0xFFFC0000)\r
3482 #define CAN_C     (*( volatile struct FLEXCAN2_tag *)  0xFFFC8000)\r
3483 \r
3484 #ifdef __MWERKS__\r
3485 #pragma pop\r
3486 #endif\r
3487 \r
3488 #ifdef  __cplusplus\r
3489 }\r
3490 #endif\r
3491 #endif                          /* ifdef _MPC563M_H */\r
3492 /*********************************************************************\r
3493  *\r
3494  * Copyright:\r
3495  *      Freescale Semiconductor, INC. All Rights Reserved.\r
3496  *  You are hereby granted a copyright license to use, modify, and\r
3497  *  distribute the SOFTWARE so long as this entire notice is\r
3498  *  retained without alteration in any modified and/or redistributed\r
3499  *  versions, and that such modified versions are clearly identified\r
3500  *  as such. No licenses are granted by implication, estoppel or\r
3501  *  otherwise under any patents or trademarks of Freescale\r
3502  *  Semiconductor, Inc. This software is provided on an "AS IS"\r
3503  *  basis and without warranty.\r
3504  *\r
3505  *  To the maximum extent permitted by applicable law, Freescale\r
3506  *  Semiconductor DISCLAIMS ALL WARRANTIES WHETHER EXPRESS OR IMPLIED,\r
3507  *  INCLUDING IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A\r
3508  *  PARTICULAR PURPOSE AND ANY WARRANTY AGAINST INFRINGEMENT WITH\r
3509  *  REGARD TO THE SOFTWARE (INCLUDING ANY MODIFIED VERSIONS THEREOF)\r
3510  *  AND ANY ACCOMPANYING WRITTEN MATERIALS.\r
3511  *\r
3512  *  To the maximum extent permitted by applicable law, IN NO EVENT\r
3513  *  SHALL Freescale Semiconductor BE LIABLE FOR ANY DAMAGES WHATSOEVER\r
3514  *  (INCLUDING WITHOUT LIMITATION, DAMAGES FOR LOSS OF BUSINESS PROFITS,\r
3515  *  BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION, OR OTHER\r
3516  *  PECUNIARY LOSS) ARISING OF THE USE OR INABILITY TO USE THE SOFTWARE.\r
3517  *\r
3518  *  Freescale Semiconductor assumes no responsibility for the\r
3519  *  maintenance and support of this software\r
3520  *\r
3521  ********************************************************************/\r