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