]> rtime.felk.cvut.cz Git - arc.git/blob - arch/ppc/mpc55xx/drivers/mpc5668.h
Added Compiler abstraction for mpc5668
[arc.git] / arch / ppc / mpc55xx / drivers / mpc5668.h
1 /**************************************************************************\r
2  * FILE NAME: mpc5668.h                      COPYRIGHT (c) Freescale 2009 * \r
3  * REVISION:  1.1                                     All Rights Reserved *\r
4  *                                                                        *\r
5  * DESCRIPTION:                                                           *\r
6  * This file contain all of the register and bit field definitions for    *\r
7  * MPC5668.                                                               *\r
8  **************************************************************************/\r
9 /*>>>>NOTE! this file is auto-generated please do not edit it!<<<<*/\r
10 \r
11 /**************************************************************************\r
12  * Example register & bit field write:                                    *\r
13  *                                                                        *\r
14  *  <MODULE>.<REGISTER>.B.<BIT> = 1;                                      *\r
15  *  <MODULE>.<REGISTER>.R       = 0x10000000;                             *\r
16  *                                                                        *\r
17  **************************************************************************/\r
18 \r
19 #ifndef _MPC5668_H_\r
20 #define _MPC5668_H_\r
21 \r
22 #include "Compiler.h"\r
23 #include "typedefs.h"\r
24 \r
25 #ifdef  __cplusplus\r
26 extern "C" {\r
27 #endif\r
28 \r
29 #ifdef __MWERKS__\r
30 #pragma push\r
31 #pragma ANSI_strict off\r
32 #endif\r
33 \r
34 #include "ip_adc_mpc56xx.h"\r
35 \r
36 #if 0\r
37 /*************************************************************************/\r
38 /*                          MODULE : ADC                                 */\r
39 /*************************************************************************/\r
40     struct ADC_tag {\r
41 \r
42         union {\r
43             vuint32_t R;\r
44             struct {\r
45                 vuint32_t OWREN:1;\r
46                 vuint32_t WLSIDE:1;\r
47                 vuint32_t MODE:1;\r
48                 vuint32_t EDGLEV:1;\r
49                 vuint32_t TRGEN:1;\r
50                 vuint32_t EDGE:1;\r
51                 vuint32_t XSTRTEN:1;\r
52                 vuint32_t NSTART:1;\r
53                   vuint32_t:1;\r
54                 vuint32_t JTRGEN:1;\r
55                 vuint32_t JEDGE:1;\r
56                 vuint32_t JSTART:1;\r
57                   vuint32_t:2;\r
58                 vuint32_t CTUEN:1;\r
59                   vuint32_t:8;\r
60                 vuint32_t ADCLKSEL:1;\r
61                 vuint32_t ABORTCHAIN:1;\r
62                 vuint32_t ABORT:1;\r
63                 vuint32_t ACKO:1;\r
64                 vuint32_t OFFREFRESH:1;\r
65                 vuint32_t OFFCANC:1;\r
66                   vuint32_t:2;\r
67                 vuint32_t PWDN:1;\r
68             } B;\r
69         } MCR;                  /* MAIN CONFIGURATION REGISTER */\r
70 \r
71         union {\r
72             vuint32_t R;\r
73             struct {\r
74                 vuint32_t:7;\r
75                 vuint32_t NSTART:1;\r
76                 vuint32_t JABORT:1;\r
77                   vuint32_t:2;\r
78                 vuint32_t JSTART:1;\r
79                   vuint32_t:3;\r
80                 vuint32_t CTUSTART:1;\r
81                 vuint32_t CHADDR:7;\r
82                   vuint32_t:3;\r
83                 vuint32_t ACKO:1;\r
84                 vuint32_t OFFREFRESH:1;\r
85                 vuint32_t OFFCANC:1;\r
86                 vuint32_t ADCSTATUS:3;\r
87             } B;\r
88         } MSR;                  /* MAIN STATUS REGISTER */\r
89 \r
90         uint32_t adc_reserved1[2];\r
91 \r
92         union {\r
93             vuint32_t R;\r
94             struct {\r
95                 vuint32_t:25;\r
96                 vuint32_t OFFCANCOVR:1;\r
97                 vuint32_t EOFFSET:1;\r
98                 vuint32_t EOCTU:1;\r
99                 vuint32_t JEOC:1;\r
100                 vuint32_t JECH:1;\r
101                 vuint32_t EOC:1;\r
102                 vuint32_t ECH:1;\r
103             } B;\r
104         } ISR;                  /* INTERRUPT STATUS REGISTER */\r
105 \r
106         union {\r
107             vuint32_t R;\r
108             struct {\r
109                 vuint32_t EOCCH31:1;\r
110                 vuint32_t EOCCH30:1;\r
111                 vuint32_t EOCCH29:1;\r
112                 vuint32_t EOCCH28:1;\r
113                 vuint32_t EOCCH27:1;\r
114                 vuint32_t EOCCH26:1;\r
115                 vuint32_t EOCCH25:1;\r
116                 vuint32_t EOCCH24:1;\r
117                 vuint32_t EOCCH23:1;\r
118                 vuint32_t EOCCH22:1;\r
119                 vuint32_t EOCCH21:1;\r
120                 vuint32_t EOCCH20:1;\r
121                 vuint32_t EOCCH19:1;\r
122                 vuint32_t EOCCH18:1;\r
123                 vuint32_t EOCCH17:1;\r
124                 vuint32_t EOCCH16:1;\r
125                 vuint32_t EOCCH15:1;\r
126                 vuint32_t EOCCH14:1;\r
127                 vuint32_t EOCCH13:1;\r
128                 vuint32_t EOCCH12:1;\r
129                 vuint32_t EOCCH11:1;\r
130                 vuint32_t EOCCH10:1;\r
131                 vuint32_t EOCCH9:1;\r
132                 vuint32_t EOCCH8:1;\r
133                 vuint32_t EOCCH7:1;\r
134                 vuint32_t EOCCH6:1;\r
135                 vuint32_t EOCCH5:1;\r
136                 vuint32_t EOCCH4:1;\r
137                 vuint32_t EOCCH3:1;\r
138                 vuint32_t EOCCH2:1;\r
139                 vuint32_t EOCCH1:1;\r
140                 vuint32_t EOCCH0:1;\r
141             } B;\r
142         } CEOCFR0;              /* CHANNEL PENDING REGISTER 0 */\r
143 \r
144         union {\r
145             vuint32_t R;\r
146             struct {\r
147                 vuint32_t EOCCH63:1;\r
148                 vuint32_t EOCCH62:1;\r
149                 vuint32_t EOCCH61:1;\r
150                 vuint32_t EOCCH60:1;\r
151                 vuint32_t EOCCH59:1;\r
152                 vuint32_t EOCCH58:1;\r
153                 vuint32_t EOCCH57:1;\r
154                 vuint32_t EOCCH56:1;\r
155                 vuint32_t EOCCH55:1;\r
156                 vuint32_t EOCCH54:1;\r
157                 vuint32_t EOCCH53:1;\r
158                 vuint32_t EOCCH52:1;\r
159                 vuint32_t EOCCH51:1;\r
160                 vuint32_t EOCCH50:1;\r
161                 vuint32_t EOCCH49:1;\r
162                 vuint32_t EOCCH48:1;\r
163                 vuint32_t EOCCH47:1;\r
164                 vuint32_t EOCCH46:1;\r
165                 vuint32_t EOCCH45:1;\r
166                 vuint32_t EOCCH44:1;\r
167                 vuint32_t EOCCH43:1;\r
168                 vuint32_t EOCCH42:1;\r
169                 vuint32_t EOCCH41:1;\r
170                 vuint32_t EOCCH40:1;\r
171                 vuint32_t EOCCH39:1;\r
172                 vuint32_t EOCCH38:1;\r
173                 vuint32_t EOCCH37:1;\r
174                 vuint32_t EOCCH36:1;\r
175                 vuint32_t EOCCH35:1;\r
176                 vuint32_t EOCCH34:1;\r
177                 vuint32_t EOCCH33:1;\r
178                 vuint32_t EOCCH32:1;\r
179             } B;\r
180         } CEOCFR1;              /* CHANNEL PENDING REGISTER 1 */\r
181 \r
182         union {\r
183             vuint32_t R;\r
184             struct {\r
185                 vuint32_t EOCCH95:1;\r
186                 vuint32_t EOCCH94:1;\r
187                 vuint32_t EOCCH93:1;\r
188                 vuint32_t EOCCH92:1;\r
189                 vuint32_t EOCCH91:1;\r
190                 vuint32_t EOCCH90:1;\r
191                 vuint32_t EOCCH89:1;\r
192                 vuint32_t EOCCH88:1;\r
193                 vuint32_t EOCCH87:1;\r
194                 vuint32_t EOCCH86:1;\r
195                 vuint32_t EOCCH85:1;\r
196                 vuint32_t EOCCH84:1;\r
197                 vuint32_t EOCCH83:1;\r
198                 vuint32_t EOCCH82:1;\r
199                 vuint32_t EOCCH81:1;\r
200                 vuint32_t EOCCH80:1;\r
201                 vuint32_t EOCCH79:1;\r
202                 vuint32_t EOCCH78:1;\r
203                 vuint32_t EOCCH77:1;\r
204                 vuint32_t EOCCH76:1;\r
205                 vuint32_t EOCCH75:1;\r
206                 vuint32_t EOCCH74:1;\r
207                 vuint32_t EOCCH73:1;\r
208                 vuint32_t EOCCH72:1;\r
209                 vuint32_t EOCCH71:1;\r
210                 vuint32_t EOCCH70:1;\r
211                 vuint32_t EOCCH69:1;\r
212                 vuint32_t EOCCH68:1;\r
213                 vuint32_t EOCCH67:1;\r
214                 vuint32_t EOCCH66:1;\r
215                 vuint32_t EOCCH65:1;\r
216                 vuint32_t EOCCH64:1;\r
217             } B;\r
218         } CEOCFR2;              /* CHANNEL PENDING REGISTER 2 */\r
219 \r
220         union {\r
221             vuint32_t R;\r
222             struct {\r
223                 vuint32_t:25;\r
224                 vuint32_t MSKOFFCANCOVR:1;\r
225                 vuint32_t MSKEOFFSET:1;\r
226                 vuint32_t MSKEOCTU:1;\r
227                 vuint32_t MSKJEOC:1;\r
228                 vuint32_t MSKJECH:1;\r
229                 vuint32_t MSKEOC:1;\r
230                 vuint32_t MSKECH:1;\r
231             } B;\r
232         } IMR;                  /* INTERRUPT MASK REGISTER */\r
233 \r
234         union {\r
235             vuint32_t R;\r
236             struct {\r
237                 vuint32_t CIM31:1;\r
238                 vuint32_t CIM30:1;\r
239                 vuint32_t CIM29:1;\r
240                 vuint32_t CIM28:1;\r
241                 vuint32_t CIM27:1;\r
242                 vuint32_t CIM26:1;\r
243                 vuint32_t CIM25:1;\r
244                 vuint32_t CIM24:1;\r
245                 vuint32_t CIM23:1;\r
246                 vuint32_t CIM22:1;\r
247                 vuint32_t CIM21:1;\r
248                 vuint32_t CIM20:1;\r
249                 vuint32_t CIM19:1;\r
250                 vuint32_t CIM18:1;\r
251                 vuint32_t CIM17:1;\r
252                 vuint32_t CIM16:1;\r
253                 vuint32_t CIM15:1;\r
254                 vuint32_t CIM14:1;\r
255                 vuint32_t CIM13:1;\r
256                 vuint32_t CIM12:1;\r
257                 vuint32_t CIM11:1;\r
258                 vuint32_t CIM10:1;\r
259                 vuint32_t CIM9:1;\r
260                 vuint32_t CIM8:1;\r
261                 vuint32_t CIM7:1;\r
262                 vuint32_t CIM6:1;\r
263                 vuint32_t CIM5:1;\r
264                 vuint32_t CIM4:1;\r
265                 vuint32_t CIM3:1;\r
266                 vuint32_t CIM2:1;\r
267                 vuint32_t CIM1:1;\r
268                 vuint32_t CIM0:1;\r
269             } B;\r
270         } CIMR0;                /* CHANNEL INTERRUPT MASK REGISTER 0 */\r
271 \r
272         union {\r
273             vuint32_t R;\r
274             struct {\r
275                 vuint32_t CIM63:1;\r
276                 vuint32_t CIM62:1;\r
277                 vuint32_t CIM61:1;\r
278                 vuint32_t CIM60:1;\r
279                 vuint32_t CIM59:1;\r
280                 vuint32_t CIM58:1;\r
281                 vuint32_t CIM57:1;\r
282                 vuint32_t CIM56:1;\r
283                 vuint32_t CIM55:1;\r
284                 vuint32_t CIM54:1;\r
285                 vuint32_t CIM53:1;\r
286                 vuint32_t CIM52:1;\r
287                 vuint32_t CIM51:1;\r
288                 vuint32_t CIM50:1;\r
289                 vuint32_t CIM49:1;\r
290                 vuint32_t CIM48:1;\r
291                 vuint32_t CIM47:1;\r
292                 vuint32_t CIM46:1;\r
293                 vuint32_t CIM45:1;\r
294                 vuint32_t CIM44:1;\r
295                 vuint32_t CIM43:1;\r
296                 vuint32_t CIM42:1;\r
297                 vuint32_t CIM41:1;\r
298                 vuint32_t CIM40:1;\r
299                 vuint32_t CIM39:1;\r
300                 vuint32_t CIM38:1;\r
301                 vuint32_t CIM37:1;\r
302                 vuint32_t CIM36:1;\r
303                 vuint32_t CIM35:1;\r
304                 vuint32_t CIM34:1;\r
305                 vuint32_t CIM33:1;\r
306                 vuint32_t CIM32:1;\r
307             } B;\r
308         } CIMR1;                /* CHANNEL INTERRUPT MASK REGISTER 1 */\r
309 \r
310         union {\r
311             vuint32_t R;\r
312             struct {\r
313                 vuint32_t CIM63:1;\r
314                 vuint32_t CIM62:1;\r
315                 vuint32_t CIM61:1;\r
316                 vuint32_t CIM60:1;\r
317                 vuint32_t CIM59:1;\r
318                 vuint32_t CIM58:1;\r
319                 vuint32_t CIM57:1;\r
320                 vuint32_t CIM56:1;\r
321                 vuint32_t CIM55:1;\r
322                 vuint32_t CIM54:1;\r
323                 vuint32_t CIM53:1;\r
324                 vuint32_t CIM52:1;\r
325                 vuint32_t CIM51:1;\r
326                 vuint32_t CIM50:1;\r
327                 vuint32_t CIM49:1;\r
328                 vuint32_t CIM48:1;\r
329                 vuint32_t CIM47:1;\r
330                 vuint32_t CIM46:1;\r
331                 vuint32_t CIM45:1;\r
332                 vuint32_t CIM44:1;\r
333                 vuint32_t CIM43:1;\r
334                 vuint32_t CIM42:1;\r
335                 vuint32_t CIM41:1;\r
336                 vuint32_t CIM40:1;\r
337                 vuint32_t CIM39:1;\r
338                 vuint32_t CIM38:1;\r
339                 vuint32_t CIM37:1;\r
340                 vuint32_t CIM36:1;\r
341                 vuint32_t CIM35:1;\r
342                 vuint32_t CIM34:1;\r
343                 vuint32_t CIM33:1;\r
344                 vuint32_t CIM32:1;\r
345             } B;\r
346         } CIMR2;                /* CHANNEL INTERRUPT MASK REGISTER 2 */\r
347 \r
348         union {\r
349             vuint32_t R;\r
350             struct {\r
351                 vuint32_t:24;\r
352                 vuint32_t WDG3H:1;\r
353                 vuint32_t WDG2H:1;\r
354                 vuint32_t WDG1H:1;\r
355                 vuint32_t WDG0H:1;\r
356                 vuint32_t WDG3L:1;\r
357                 vuint32_t WDG2L:1;\r
358                 vuint32_t WDG1L:1;\r
359                 vuint32_t WDG0L:1;\r
360             } B;\r
361         } WTISR;                /* WATCHDOG INTERRUPT THRESHOLD REGISTER */\r
362 \r
363         union {\r
364             vuint32_t R;\r
365             struct {\r
366                 vuint32_t:24;\r
367                 vuint32_t MSKWDG3H:1;\r
368                 vuint32_t MSKWDG2H:1;\r
369                 vuint32_t MSKWDG1H:1;\r
370                 vuint32_t MSKWDG0H:1;\r
371                 vuint32_t MSKWDG3L:1;\r
372                 vuint32_t MSKWDG2L:1;\r
373                 vuint32_t MSKWDG1L:1;\r
374                 vuint32_t MSKWDG0L:1;\r
375             } B;\r
376         } WTIMR;                /* WATCHDOG INTERRUPT THRESHOLD MASK REGISTER */\r
377 \r
378         uint32_t adc_reserved2[2];\r
379 \r
380         union {\r
381             vuint32_t R;\r
382             struct {\r
383                 vuint32_t:30;\r
384                 vuint32_t DCLR:1;\r
385                 vuint32_t DMAEN:1;\r
386             } B;\r
387         } DMAE;                 /* DMA ENABLE REGISTER */\r
388 \r
389         union {\r
390             vuint32_t R;\r
391             struct {\r
392                 vuint32_t DMA31:1;\r
393                 vuint32_t DMA30:1;\r
394                 vuint32_t DMA29:1;\r
395                 vuint32_t DMA28:1;\r
396                 vuint32_t DMA27:1;\r
397                 vuint32_t DMA26:1;\r
398                 vuint32_t DMA25:1;\r
399                 vuint32_t DMA24:1;\r
400                 vuint32_t DMA23:1;\r
401                 vuint32_t DMA22:1;\r
402                 vuint32_t DMA21:1;\r
403                 vuint32_t DMA20:1;\r
404                 vuint32_t DMA19:1;\r
405                 vuint32_t DMA18:1;\r
406                 vuint32_t DMA17:1;\r
407                 vuint32_t DMA16:1;\r
408                 vuint32_t DMA15:1;\r
409                 vuint32_t DMA14:1;\r
410                 vuint32_t DMA13:1;\r
411                 vuint32_t DMA12:1;\r
412                 vuint32_t DMA11:1;\r
413                 vuint32_t DMA10:1;\r
414                 vuint32_t DMA9:1;\r
415                 vuint32_t DMA8:1;\r
416                 vuint32_t DMA7:1;\r
417                 vuint32_t DMA6:1;\r
418                 vuint32_t DMA5:1;\r
419                 vuint32_t DMA4:1;\r
420                 vuint32_t DMA3:1;\r
421                 vuint32_t DMA2:1;\r
422                 vuint32_t DMA1:1;\r
423                 vuint32_t DMA0:1;\r
424             } B;\r
425         } DMAR0;                /* DMA CHANNEL SELECT REGISTER 0 */\r
426 \r
427         union {\r
428             vuint32_t R;\r
429             struct {\r
430                 vuint32_t DMA63:1;\r
431                 vuint32_t DMA62:1;\r
432                 vuint32_t DMA61:1;\r
433                 vuint32_t DMA60:1;\r
434                 vuint32_t DMA59:1;\r
435                 vuint32_t DMA58:1;\r
436                 vuint32_t DMA57:1;\r
437                 vuint32_t DMA56:1;\r
438                 vuint32_t DMA55:1;\r
439                 vuint32_t DMA54:1;\r
440                 vuint32_t DMA53:1;\r
441                 vuint32_t DMA52:1;\r
442                 vuint32_t DMA51:1;\r
443                 vuint32_t DMA50:1;\r
444                 vuint32_t DMA49:1;\r
445                 vuint32_t DMA48:1;\r
446                 vuint32_t DMA47:1;\r
447                 vuint32_t DMA46:1;\r
448                 vuint32_t DMA45:1;\r
449                 vuint32_t DMA44:1;\r
450                 vuint32_t DMA43:1;\r
451                 vuint32_t DMA42:1;\r
452                 vuint32_t DMA41:1;\r
453                 vuint32_t DMA40:1;\r
454                 vuint32_t DMA39:1;\r
455                 vuint32_t DMA38:1;\r
456                 vuint32_t DMA37:1;\r
457                 vuint32_t DMA36:1;\r
458                 vuint32_t DMA35:1;\r
459                 vuint32_t DMA34:1;\r
460                 vuint32_t DMA33:1;\r
461                 vuint32_t DMA32:1;\r
462             } B;\r
463         } DMAR1;                /* DMA CHANNEL SELECT REGISTER 1 */\r
464 \r
465         union {\r
466             vuint32_t R;\r
467             struct {\r
468                 vuint32_t DMA95:1;\r
469                 vuint32_t DMA94:1;\r
470                 vuint32_t DMA93:1;\r
471                 vuint32_t DMA92:1;\r
472                 vuint32_t DMA91:1;\r
473                 vuint32_t DMA90:1;\r
474                 vuint32_t DMA89:1;\r
475                 vuint32_t DMA88:1;\r
476                 vuint32_t DMA87:1;\r
477                 vuint32_t DMA86:1;\r
478                 vuint32_t DMA85:1;\r
479                 vuint32_t DMA84:1;\r
480                 vuint32_t DMA83:1;\r
481                 vuint32_t DMA82:1;\r
482                 vuint32_t DMA81:1;\r
483                 vuint32_t DMA80:1;\r
484                 vuint32_t DMA79:1;\r
485                 vuint32_t DMA78:1;\r
486                 vuint32_t DMA77:1;\r
487                 vuint32_t DMA76:1;\r
488                 vuint32_t DMA75:1;\r
489                 vuint32_t DMA74:1;\r
490                 vuint32_t DMA73:1;\r
491                 vuint32_t DMA72:1;\r
492                 vuint32_t DMA71:1;\r
493                 vuint32_t DMA70:1;\r
494                 vuint32_t DMA69:1;\r
495                 vuint32_t DMA68:1;\r
496                 vuint32_t DMA67:1;\r
497                 vuint32_t DMA66:1;\r
498                 vuint32_t DMA65:1;\r
499                 vuint32_t DMA64:1;\r
500             } B;\r
501         } DMAR2;                /* DMA CHANNEL SELECT REGISTER 2 */\r
502 \r
503         union {\r
504             vuint32_t R;\r
505             struct {\r
506                 vuint32_t:16;\r
507                 vuint32_t THREN:1;\r
508                 vuint32_t THRINV:1;\r
509                 vuint32_t THROP:1;\r
510                   vuint32_t:6;\r
511                 vuint32_t THRCH:7;\r
512             } B;\r
513         } TRC[4];               /* THRESHOLD CONTROL REGISTER */\r
514 \r
515         union {\r
516             vuint32_t R;\r
517             struct {\r
518                 vuint32_t:6;\r
519                 vuint32_t THRH:10;\r
520                   vuint32_t:6;\r
521                 vuint32_t THRL:10;\r
522             } B;\r
523         } THRHLR[4];            /* THRESHOLD REGISTER */\r
524 \r
525         union {\r
526             vuint32_t R;\r
527             struct {\r
528                 vuint32_t:6;\r
529                 vuint32_t THRH:10;\r
530                   vuint32_t:6;\r
531                 vuint32_t THRL:10;\r
532             } B;\r
533         } THRALT[4];            /* ALTERNATE THRESHOLD REGISTER */\r
534 \r
535         union {\r
536             vuint32_t R;\r
537             struct {\r
538                 vuint32_t:25;\r
539                 vuint32_t PREVAL2:2;\r
540                 vuint32_t PREVAL1:2;\r
541                 vuint32_t PREVAL0:2;\r
542                 vuint32_t PRECONV:1;\r
543             } B;\r
544         } PSCR;                 /* PRESAMPLING CONTROL REGISTER */\r
545 \r
546         union {\r
547             vuint32_t R;\r
548             struct {\r
549                 vuint32_t PSR31:1;\r
550                 vuint32_t PSR30:1;\r
551                 vuint32_t PSR29:1;\r
552                 vuint32_t PSR28:1;\r
553                 vuint32_t PSR27:1;\r
554                 vuint32_t PSR26:1;\r
555                 vuint32_t PSR25:1;\r
556                 vuint32_t PSR24:1;\r
557                 vuint32_t PSR23:1;\r
558                 vuint32_t PSR22:1;\r
559                 vuint32_t PSR21:1;\r
560                 vuint32_t PSR20:1;\r
561                 vuint32_t PSR19:1;\r
562                 vuint32_t PSR18:1;\r
563                 vuint32_t PSR17:1;\r
564                 vuint32_t PSR16:1;\r
565                 vuint32_t PSR15:1;\r
566                 vuint32_t PSR14:1;\r
567                 vuint32_t PSR13:1;\r
568                 vuint32_t PSR12:1;\r
569                 vuint32_t PSR11:1;\r
570                 vuint32_t PSR10:1;\r
571                 vuint32_t PSR9:1;\r
572                 vuint32_t PSR8:1;\r
573                 vuint32_t PSR7:1;\r
574                 vuint32_t PSR6:1;\r
575                 vuint32_t PSR5:1;\r
576                 vuint32_t PSR4:1;\r
577                 vuint32_t PSR3:1;\r
578                 vuint32_t PSR2:1;\r
579                 vuint32_t PSR1:1;\r
580                 vuint32_t PSR0:1;\r
581             } B;\r
582         } PSR0;                 /* PRESAMPLING REGISTER 0 */\r
583 \r
584         union {\r
585             vuint32_t R;\r
586             struct {\r
587                 vuint32_t PSR63:1;\r
588                 vuint32_t PSR62:1;\r
589                 vuint32_t PSR61:1;\r
590                 vuint32_t PSR60:1;\r
591                 vuint32_t PSR59:1;\r
592                 vuint32_t PSR58:1;\r
593                 vuint32_t PSR57:1;\r
594                 vuint32_t PSR56:1;\r
595                 vuint32_t PSR55:1;\r
596                 vuint32_t PSR54:1;\r
597                 vuint32_t PSR53:1;\r
598                 vuint32_t PSR52:1;\r
599                 vuint32_t PSR51:1;\r
600                 vuint32_t PSR50:1;\r
601                 vuint32_t PSR49:1;\r
602                 vuint32_t PSR48:1;\r
603                 vuint32_t PSR47:1;\r
604                 vuint32_t PSR46:1;\r
605                 vuint32_t PSR45:1;\r
606                 vuint32_t PSR44:1;\r
607                 vuint32_t PSR43:1;\r
608                 vuint32_t PSR42:1;\r
609                 vuint32_t PSR41:1;\r
610                 vuint32_t PSR40:1;\r
611                 vuint32_t PSR39:1;\r
612                 vuint32_t PSR38:1;\r
613                 vuint32_t PSR37:1;\r
614                 vuint32_t PSR36:1;\r
615                 vuint32_t PSR35:1;\r
616                 vuint32_t PSR34:1;\r
617                 vuint32_t PSR33:1;\r
618                 vuint32_t PSR32:1;\r
619             } B;\r
620         } PSR1;                 /* PRESAMPLING REGISTER 1 */\r
621 \r
622         union {\r
623             vuint32_t R;\r
624             struct {\r
625                 vuint32_t PSR95:1;\r
626                 vuint32_t PSR94:1;\r
627                 vuint32_t PSR93:1;\r
628                 vuint32_t PSR92:1;\r
629                 vuint32_t PSR91:1;\r
630                 vuint32_t PSR90:1;\r
631                 vuint32_t PSR89:1;\r
632                 vuint32_t PSR88:1;\r
633                 vuint32_t PSR87:1;\r
634                 vuint32_t PSR86:1;\r
635                 vuint32_t PSR85:1;\r
636                 vuint32_t PSR84:1;\r
637                 vuint32_t PSR83:1;\r
638                 vuint32_t PSR82:1;\r
639                 vuint32_t PSR81:1;\r
640                 vuint32_t PSR80:1;\r
641                 vuint32_t PSR79:1;\r
642                 vuint32_t PSR78:1;\r
643                 vuint32_t PSR77:1;\r
644                 vuint32_t PSR76:1;\r
645                 vuint32_t PSR75:1;\r
646                 vuint32_t PSR74:1;\r
647                 vuint32_t PSR73:1;\r
648                 vuint32_t PSR72:1;\r
649                 vuint32_t PSR71:1;\r
650                 vuint32_t PSR70:1;\r
651                 vuint32_t PSR69:1;\r
652                 vuint32_t PSR68:1;\r
653                 vuint32_t PSR67:1;\r
654                 vuint32_t PSR66:1;\r
655                 vuint32_t PSR65:1;\r
656                 vuint32_t PSR64:1;\r
657             } B;\r
658         } PSR2;                 /* PRESAMPLING REGISTER 2 */\r
659 \r
660         uint32_t adc_reserved3;\r
661 \r
662         union {\r
663             vuint32_t R;\r
664             struct {\r
665                 vuint32_t:16;\r
666                 vuint32_t INPLATCH:1;\r
667                   vuint32_t:1;\r
668                 vuint32_t OFFSHIFT:2;\r
669                   vuint32_t:1;\r
670                 vuint32_t INPCMP:2;\r
671                   vuint32_t:1;\r
672                 vuint32_t INPSAMP:8;\r
673             } B;\r
674         } CTR0;                 /* CONVERSION TIMING REGISTER 0 */\r
675 \r
676         union {\r
677             vuint32_t R;\r
678             struct {\r
679                 vuint32_t:16;\r
680                 vuint32_t INPLATCH:1;\r
681                   vuint32_t:4;\r
682                 vuint32_t INPCMP:2;\r
683                   vuint32_t:1;\r
684                 vuint32_t INPSAMP:8;\r
685             } B;\r
686         } CTR1;                 /* CONVERSION TIMING REGISTER 1 */\r
687 \r
688         union {\r
689             vuint32_t R;\r
690             struct {\r
691                 vuint32_t:16;\r
692                 vuint32_t INPLATCH:1;\r
693                   vuint32_t:4;\r
694                 vuint32_t INPCMP:2;\r
695                   vuint32_t:1;\r
696                 vuint32_t INPSAMP:8;\r
697             } B;\r
698         } CTR2;                 /* CONVERSION TIMING REGISTER 2 */\r
699 \r
700         uint32_t adc_reserved4;\r
701 \r
702         union {\r
703             vuint32_t R;\r
704             struct {\r
705                 vuint32_t CH31:1;\r
706                 vuint32_t CH30:1;\r
707                 vuint32_t CH29:1;\r
708                 vuint32_t CH28:1;\r
709                 vuint32_t CH27:1;\r
710                 vuint32_t CH26:1;\r
711                 vuint32_t CH25:1;\r
712                 vuint32_t CH24:1;\r
713                 vuint32_t CH23:1;\r
714                 vuint32_t CH22:1;\r
715                 vuint32_t CH21:1;\r
716                 vuint32_t CH20:1;\r
717                 vuint32_t CH19:1;\r
718                 vuint32_t CH18:1;\r
719                 vuint32_t CH17:1;\r
720                 vuint32_t CH16:1;\r
721                 vuint32_t CH15:1;\r
722                 vuint32_t CH14:1;\r
723                 vuint32_t CH13:1;\r
724                 vuint32_t CH12:1;\r
725                 vuint32_t CH11:1;\r
726                 vuint32_t CH10:1;\r
727                 vuint32_t CH9:1;\r
728                 vuint32_t CH8:1;\r
729                 vuint32_t CH7:1;\r
730                 vuint32_t CH6:1;\r
731                 vuint32_t CH5:1;\r
732                 vuint32_t CH4:1;\r
733                 vuint32_t CH3:1;\r
734                 vuint32_t CH2:1;\r
735                 vuint32_t CH1:1;\r
736                 vuint32_t CH0:1;\r
737             } B;\r
738         } NCMR0;                /* NORMAL CONVERSION MASK REGISTER 0 */\r
739 \r
740         union {\r
741             vuint32_t R;\r
742             struct {\r
743                 vuint32_t CH63:1;\r
744                 vuint32_t CH62:1;\r
745                 vuint32_t CH61:1;\r
746                 vuint32_t CH60:1;\r
747                 vuint32_t CH59:1;\r
748                 vuint32_t CH58:1;\r
749                 vuint32_t CH57:1;\r
750                 vuint32_t CH56:1;\r
751                 vuint32_t CH55:1;\r
752                 vuint32_t CH54:1;\r
753                 vuint32_t CH53:1;\r
754                 vuint32_t CH52:1;\r
755                 vuint32_t CH51:1;\r
756                 vuint32_t CH50:1;\r
757                 vuint32_t CH49:1;\r
758                 vuint32_t CH48:1;\r
759                 vuint32_t CH47:1;\r
760                 vuint32_t CH46:1;\r
761                 vuint32_t CH45:1;\r
762                 vuint32_t CH44:1;\r
763                 vuint32_t CH43:1;\r
764                 vuint32_t CH42:1;\r
765                 vuint32_t CH41:1;\r
766                 vuint32_t CH40:1;\r
767                 vuint32_t CH39:1;\r
768                 vuint32_t CH38:1;\r
769                 vuint32_t CH37:1;\r
770                 vuint32_t CH36:1;\r
771                 vuint32_t CH35:1;\r
772                 vuint32_t CH34:1;\r
773                 vuint32_t CH33:1;\r
774                 vuint32_t CH32:1;\r
775             } B;\r
776         } NCMR1;                /* NORMAL CONVERSION MASK REGISTER 1 */\r
777 \r
778         union {\r
779             vuint32_t R;\r
780             struct {\r
781                 vuint32_t PSR95:1;\r
782                 vuint32_t PSR94:1;\r
783                 vuint32_t PSR93:1;\r
784                 vuint32_t PSR92:1;\r
785                 vuint32_t PSR91:1;\r
786                 vuint32_t PSR90:1;\r
787                 vuint32_t PSR89:1;\r
788                 vuint32_t PSR88:1;\r
789                 vuint32_t PSR87:1;\r
790                 vuint32_t PSR86:1;\r
791                 vuint32_t PSR85:1;\r
792                 vuint32_t PSR84:1;\r
793                 vuint32_t PSR83:1;\r
794                 vuint32_t PSR82:1;\r
795                 vuint32_t PSR81:1;\r
796                 vuint32_t PSR80:1;\r
797                 vuint32_t PSR79:1;\r
798                 vuint32_t PSR78:1;\r
799                 vuint32_t PSR77:1;\r
800                 vuint32_t PSR76:1;\r
801                 vuint32_t PSR75:1;\r
802                 vuint32_t PSR74:1;\r
803                 vuint32_t PSR73:1;\r
804                 vuint32_t PSR72:1;\r
805                 vuint32_t PSR71:1;\r
806                 vuint32_t PSR70:1;\r
807                 vuint32_t PSR69:1;\r
808                 vuint32_t PSR68:1;\r
809                 vuint32_t PSR67:1;\r
810                 vuint32_t PSR66:1;\r
811                 vuint32_t PSR65:1;\r
812                 vuint32_t PSR64:1;\r
813             } B;\r
814         } NCMR2;                /* NORMAL CONVERSION MASK REGISTER 2 */\r
815 \r
816         uint32_t adc_reserved5;\r
817 \r
818         union {\r
819             vuint32_t R;\r
820             struct {\r
821                 vuint32_t CH31:1;\r
822                 vuint32_t CH30:1;\r
823                 vuint32_t CH29:1;\r
824                 vuint32_t CH28:1;\r
825                 vuint32_t CH27:1;\r
826                 vuint32_t CH26:1;\r
827                 vuint32_t CH25:1;\r
828                 vuint32_t CH24:1;\r
829                 vuint32_t CH23:1;\r
830                 vuint32_t CH22:1;\r
831                 vuint32_t CH21:1;\r
832                 vuint32_t CH20:1;\r
833                 vuint32_t CH19:1;\r
834                 vuint32_t CH18:1;\r
835                 vuint32_t CH17:1;\r
836                 vuint32_t CH16:1;\r
837                 vuint32_t CH15:1;\r
838                 vuint32_t CH14:1;\r
839                 vuint32_t CH13:1;\r
840                 vuint32_t CH12:1;\r
841                 vuint32_t CH11:1;\r
842                 vuint32_t CH10:1;\r
843                 vuint32_t CH9:1;\r
844                 vuint32_t CH8:1;\r
845                 vuint32_t CH7:1;\r
846                 vuint32_t CH6:1;\r
847                 vuint32_t CH5:1;\r
848                 vuint32_t CH4:1;\r
849                 vuint32_t CH3:1;\r
850                 vuint32_t CH2:1;\r
851                 vuint32_t CH1:1;\r
852                 vuint32_t CH0:1;\r
853             } B;\r
854         } JCMR0;                /* INJECTED CONVERSION MASK REGISTER 0 */\r
855 \r
856         union {\r
857             vuint32_t R;\r
858             struct {\r
859                 vuint32_t CH63:1;\r
860                 vuint32_t CH62:1;\r
861                 vuint32_t CH61:1;\r
862                 vuint32_t CH60:1;\r
863                 vuint32_t CH59:1;\r
864                 vuint32_t CH58:1;\r
865                 vuint32_t CH57:1;\r
866                 vuint32_t CH56:1;\r
867                 vuint32_t CH55:1;\r
868                 vuint32_t CH54:1;\r
869                 vuint32_t CH53:1;\r
870                 vuint32_t CH52:1;\r
871                 vuint32_t CH51:1;\r
872                 vuint32_t CH50:1;\r
873                 vuint32_t CH49:1;\r
874                 vuint32_t CH48:1;\r
875                 vuint32_t CH47:1;\r
876                 vuint32_t CH46:1;\r
877                 vuint32_t CH45:1;\r
878                 vuint32_t CH44:1;\r
879                 vuint32_t CH43:1;\r
880                 vuint32_t CH42:1;\r
881                 vuint32_t CH41:1;\r
882                 vuint32_t CH40:1;\r
883                 vuint32_t CH39:1;\r
884                 vuint32_t CH38:1;\r
885                 vuint32_t CH37:1;\r
886                 vuint32_t CH36:1;\r
887                 vuint32_t CH35:1;\r
888                 vuint32_t CH34:1;\r
889                 vuint32_t CH33:1;\r
890                 vuint32_t CH32:1;\r
891             } B;\r
892         } JCMR1;                /* INJECTED CONVERSION MASK REGISTER 1 */\r
893 \r
894         union {\r
895             vuint32_t R;\r
896             struct {\r
897                 vuint32_t PSR95:1;\r
898                 vuint32_t PSR94:1;\r
899                 vuint32_t PSR93:1;\r
900                 vuint32_t PSR92:1;\r
901                 vuint32_t PSR91:1;\r
902                 vuint32_t PSR90:1;\r
903                 vuint32_t PSR89:1;\r
904                 vuint32_t PSR88:1;\r
905                 vuint32_t PSR87:1;\r
906                 vuint32_t PSR86:1;\r
907                 vuint32_t PSR85:1;\r
908                 vuint32_t PSR84:1;\r
909                 vuint32_t PSR83:1;\r
910                 vuint32_t PSR82:1;\r
911                 vuint32_t PSR81:1;\r
912                 vuint32_t PSR80:1;\r
913                 vuint32_t PSR79:1;\r
914                 vuint32_t PSR78:1;\r
915                 vuint32_t PSR77:1;\r
916                 vuint32_t PSR76:1;\r
917                 vuint32_t PSR75:1;\r
918                 vuint32_t PSR74:1;\r
919                 vuint32_t PSR73:1;\r
920                 vuint32_t PSR72:1;\r
921                 vuint32_t PSR71:1;\r
922                 vuint32_t PSR70:1;\r
923                 vuint32_t PSR69:1;\r
924                 vuint32_t PSR68:1;\r
925                 vuint32_t PSR67:1;\r
926                 vuint32_t PSR66:1;\r
927                 vuint32_t PSR65:1;\r
928                 vuint32_t PSR64:1;\r
929             } B;\r
930         } JCMR2;                /* INJECTED CONVERSION MASK REGISTER 2 */\r
931 \r
932         union {\r
933             vuint32_t R;\r
934             struct {\r
935                 vuint32_t:15;\r
936                 vuint32_t OFFSETLOAD:1;\r
937                   vuint32_t:8;\r
938                 vuint32_t OFFSET_WORD:8;\r
939             } B;\r
940         } OFFWR;                /* OFFSET WORD REGISTER */\r
941 \r
942         union {\r
943             vuint32_t R;\r
944             struct {\r
945                 vuint32_t:24;\r
946                 vuint32_t DSD:8;\r
947             } B;\r
948         } DSDR;                 /* DECODE SIGNALS DELAY REGISTER */\r
949 \r
950         union {\r
951             vuint32_t R;\r
952             struct {\r
953                 vuint32_t:24;\r
954                 vuint32_t PDED:8;\r
955             } B;\r
956         } PDEDR;                /* DECODE SIGNALS DELAY REGISTER */\r
957 \r
958         uint32_t adc_reserved6[9];\r
959 \r
960         union {\r
961             vuint32_t R;\r
962             struct {\r
963                 vuint32_t:16;\r
964                 vuint32_t TEST_CTL:16;\r
965             } B;\r
966         } TCTLR;                /* TEST CONTROL REGISTER */\r
967 \r
968         uint32_t adc_reserved7[3];\r
969 \r
970         union {\r
971             vuint32_t R;\r
972             struct {\r
973                 vuint32_t:12;\r
974                 vuint32_t VALID:1;\r
975                 vuint32_t OVERW:1;\r
976                 vuint32_t RESULT:2;\r
977                   vuint32_t:6;\r
978                 vuint32_t CDATA:10;\r
979             } B;\r
980         } PRECDATAREG[32];      /* PRESISION DATA REGISTER */\r
981 \r
982         union {\r
983             vuint32_t R;\r
984             struct {\r
985                 vuint32_t:12;\r
986                 vuint32_t VALID:1;\r
987                 vuint32_t OVERW:1;\r
988                 vuint32_t RESULT:2;\r
989                   vuint32_t:6;\r
990                 vuint32_t CDATA:10;\r
991             } B;\r
992         } INTDATAREG[32];       /* PRESISION DATA REGISTER */\r
993 \r
994         union {\r
995             vuint32_t R;\r
996             struct {\r
997                 vuint32_t:12;\r
998                 vuint32_t VALID:1;\r
999                 vuint32_t OVERW:1;\r
1000                 vuint32_t RESULT:2;\r
1001                   vuint32_t:6;\r
1002                 vuint32_t CDATA:10;\r
1003             } B;\r
1004         } EXTDATAREG[32];       /* PRESISION DATA REGISTER */\r
1005 \r
1006     };                          /* end of ADC_tag */\r
1007 \r
1008 #endif\r
1009 /**************************************************************************/\r
1010 /*                  MODULE : AXBS Crossbar Switch (XBAR)                  */\r
1011 /**************************************************************************/\r
1012     struct XBAR_tag {\r
1013 \r
1014         union {\r
1015             vuint32_t R;\r
1016             struct {\r
1017                 vuint32_t:1;\r
1018                 vuint32_t MSTR7:3;\r
1019                   vuint32_t:1;\r
1020                 vuint32_t MSTR6:3;\r
1021                   vuint32_t:9;\r
1022                 vuint32_t MSTR5:3;\r
1023                   vuint32_t:1;\r
1024                 vuint32_t MSTR3:3;\r
1025                   vuint32_t:1;\r
1026                 vuint32_t MSTR2:3;\r
1027                   vuint32_t:1;\r
1028                 vuint32_t MSTR1:3;\r
1029                   vuint32_t:1;\r
1030                 vuint32_t MSTR0:1;\r
1031             } B;\r
1032         } MPR0;                 /* Master Priority Register 0 */\r
1033 \r
1034         uint32_t xbar_reserved1[3];\r
1035 \r
1036         union {\r
1037             vuint32_t R;\r
1038             struct {\r
1039                 vuint32_t R0:1;\r
1040                   vuint32_t:21;\r
1041                 vuint32_t ARB:2;\r
1042                   vuint32_t:2;\r
1043                 vuint32_t PCTL:2;\r
1044                   vuint32_t:1;\r
1045                 vuint32_t PARK:3;\r
1046             } B;\r
1047         } SGPCR0;               /* Master Priority Register 0 */\r
1048 \r
1049         uint32_t xbar_reserved2[58];\r
1050 \r
1051         union {\r
1052             vuint32_t R;\r
1053             struct {\r
1054                 vuint32_t:1;\r
1055                 vuint32_t MSTR7:3;\r
1056                   vuint32_t:1;\r
1057                 vuint32_t MSTR6:3;\r
1058                   vuint32_t:9;\r
1059                 vuint32_t MSTR5:3;\r
1060                   vuint32_t:1;\r
1061                 vuint32_t MSTR3:3;\r
1062                   vuint32_t:1;\r
1063                 vuint32_t MSTR2:3;\r
1064                   vuint32_t:1;\r
1065                 vuint32_t MSTR1:3;\r
1066                   vuint32_t:1;\r
1067                 vuint32_t MSTR0:1;\r
1068             } B;\r
1069         } MPR1;                 /* Master Priority Register 1 */\r
1070 \r
1071         uint32_t xbar_reserved3[3];\r
1072 \r
1073         union {\r
1074             vuint32_t R;\r
1075             struct {\r
1076                 vuint32_t R0:1;\r
1077                   vuint32_t:21;\r
1078                 vuint32_t ARB:2;\r
1079                   vuint32_t:2;\r
1080                 vuint32_t PCTL:2;\r
1081                   vuint32_t:1;\r
1082                 vuint32_t PARK:3;\r
1083             } B;\r
1084         } SGPCR1;               /* Master Priority Register 1 */\r
1085 \r
1086         uint32_t xbar_reserved4[58];\r
1087 \r
1088         union {\r
1089             vuint32_t R;\r
1090             struct {\r
1091                 vuint32_t:1;\r
1092                 vuint32_t MSTR7:3;\r
1093                   vuint32_t:1;\r
1094                 vuint32_t MSTR6:3;\r
1095                   vuint32_t:9;\r
1096                 vuint32_t MSTR5:3;\r
1097                   vuint32_t:1;\r
1098                 vuint32_t MSTR3:3;\r
1099                   vuint32_t:1;\r
1100                 vuint32_t MSTR2:3;\r
1101                   vuint32_t:1;\r
1102                 vuint32_t MSTR1:3;\r
1103                   vuint32_t:1;\r
1104                 vuint32_t MSTR0:1;\r
1105             } B;\r
1106         } MPR2;                 /* Master Priority Register 2 */\r
1107 \r
1108         uint32_t xbar_reserved5[3];\r
1109 \r
1110         union {\r
1111             vuint32_t R;\r
1112             struct {\r
1113                 vuint32_t R0:1;\r
1114                   vuint32_t:21;\r
1115                 vuint32_t ARB:2;\r
1116                   vuint32_t:2;\r
1117                 vuint32_t PCTL:2;\r
1118                   vuint32_t:1;\r
1119                 vuint32_t PARK:3;\r
1120             } B;\r
1121         } SGPCR2;               /* Master Priority Register 2 */\r
1122 \r
1123         uint32_t xbar_reserved6[58];\r
1124 \r
1125         union {\r
1126             vuint32_t R;\r
1127             struct {\r
1128                 vuint32_t:1;\r
1129                 vuint32_t MSTR7:3;\r
1130                   vuint32_t:1;\r
1131                 vuint32_t MSTR6:3;\r
1132                   vuint32_t:9;\r
1133                 vuint32_t MSTR5:3;\r
1134                   vuint32_t:1;\r
1135                 vuint32_t MSTR3:3;\r
1136                   vuint32_t:1;\r
1137                 vuint32_t MSTR2:3;\r
1138                   vuint32_t:1;\r
1139                 vuint32_t MSTR1:3;\r
1140                   vuint32_t:1;\r
1141                 vuint32_t MSTR0:1;\r
1142             } B;\r
1143         } MPR3;                 /* Master Priority Register 3 */\r
1144 \r
1145         uint32_t xbar_reserved7[3];\r
1146 \r
1147         union {\r
1148             vuint32_t R;\r
1149             struct {\r
1150                 vuint32_t R0:1;\r
1151                   vuint32_t:21;\r
1152                 vuint32_t ARB:2;\r
1153                   vuint32_t:2;\r
1154                 vuint32_t PCTL:2;\r
1155                   vuint32_t:1;\r
1156                 vuint32_t PARK:3;\r
1157             } B;\r
1158         } SGPCR3;               /* Master Priority Register 3 */\r
1159 \r
1160         uint32_t xbar_reserved8[186];\r
1161 \r
1162         union {\r
1163             vuint32_t R;\r
1164             struct {\r
1165                 vuint32_t:1;\r
1166                 vuint32_t MSTR7:3;\r
1167                   vuint32_t:1;\r
1168                 vuint32_t MSTR6:3;\r
1169                   vuint32_t:9;\r
1170                 vuint32_t MSTR5:3;\r
1171                   vuint32_t:1;\r
1172                 vuint32_t MSTR3:3;\r
1173                   vuint32_t:1;\r
1174                 vuint32_t MSTR2:3;\r
1175                   vuint32_t:1;\r
1176                 vuint32_t MSTR1:3;\r
1177                   vuint32_t:1;\r
1178                 vuint32_t MSTR0:1;\r
1179             } B;\r
1180         } MPR6;                 /* Master Priority Register 6 */\r
1181 \r
1182         uint32_t xbar_reserved9[3];\r
1183 \r
1184         union {\r
1185             vuint32_t R;\r
1186             struct {\r
1187                 vuint32_t R0:1;\r
1188                   vuint32_t:21;\r
1189                 vuint32_t ARB:2;\r
1190                   vuint32_t:2;\r
1191                 vuint32_t PCTL:2;\r
1192                   vuint32_t:1;\r
1193                 vuint32_t PARK:3;\r
1194             } B;\r
1195         } SGPCR6;               /* Master Priority Register 6 */\r
1196 \r
1197         uint32_t xbar_reserved10[58];\r
1198 \r
1199         union {\r
1200             vuint32_t R;\r
1201             struct {\r
1202                 vuint32_t:1;\r
1203                 vuint32_t MSTR7:3;\r
1204                   vuint32_t:1;\r
1205                 vuint32_t MSTR6:3;\r
1206                   vuint32_t:9;\r
1207                 vuint32_t MSTR5:3;\r
1208                   vuint32_t:1;\r
1209                 vuint32_t MSTR3:3;\r
1210                   vuint32_t:1;\r
1211                 vuint32_t MSTR2:3;\r
1212                   vuint32_t:1;\r
1213                 vuint32_t MSTR1:3;\r
1214                   vuint32_t:1;\r
1215                 vuint32_t MSTR0:1;\r
1216             } B;\r
1217         } MPR7;                 /* Master Priority Register 7 */\r
1218 \r
1219         uint32_t xbar_reserved11[3];\r
1220 \r
1221         union {\r
1222             vuint32_t R;\r
1223             struct {\r
1224                 vuint32_t R0:1;\r
1225                   vuint32_t:21;\r
1226                 vuint32_t ARB:2;\r
1227                   vuint32_t:2;\r
1228                 vuint32_t PCTL:2;\r
1229                   vuint32_t:1;\r
1230                 vuint32_t PARK:3;\r
1231             } B;\r
1232         } SGPCR7;               /* Master Priority Register 7 */\r
1233 \r
1234         uint32_t xbar_reserved12[506];\r
1235 \r
1236         union {\r
1237             vuint32_t R;\r
1238             struct {\r
1239                 vuint32_t R0:1;\r
1240                   vuint32_t:21;\r
1241                 vuint32_t ARB:2;\r
1242                   vuint32_t:2;\r
1243                 vuint32_t PCTL:2;\r
1244                   vuint32_t:1;\r
1245                 vuint32_t PARK:3;\r
1246             } B;\r
1247         } MGPCR7;               /* Master General Purpose Register 7 */\r
1248 \r
1249     };\r
1250 /*************************************************************************/\r
1251 /*                            MODULE : CRP                               */\r
1252 /*************************************************************************/\r
1253     struct CRP_tag {\r
1254 \r
1255         union {\r
1256             vuint32_t R;\r
1257             struct {\r
1258                 vuint32_t IRCTRIMEN:1;\r
1259                   vuint32_t:4;\r
1260                 vuint32_t PREDIV:3;\r
1261                   vuint32_t:4;\r
1262                 vuint32_t EN128KIRC:1;\r
1263                 vuint32_t EN32KOSC:1;\r
1264                 vuint32_t ENLPOSC:1;\r
1265                 vuint32_t EN40MOSC:1;\r
1266                   vuint32_t:3;\r
1267                 vuint32_t TRIM128IRC:5;\r
1268                   vuint32_t:2;\r
1269                 vuint32_t TRIM16IRC:6;\r
1270             } B;\r
1271         } CLKSRC;               /* CLOCK SOURCE REGISTER */\r
1272 \r
1273         uint32_t crp_reserved1[3];\r
1274 \r
1275         union {\r
1276             vuint32_t R;\r
1277             struct {\r
1278                 vuint32_t CNTEN:1;\r
1279                 vuint32_t RTCIE:1;\r
1280                 vuint32_t FRZEN:1;\r
1281                 vuint32_t ROVREN:1;\r
1282                 vuint32_t RTCVAL:12;\r
1283                 vuint32_t APIEN:1;\r
1284                 vuint32_t APIIE:1;\r
1285                 vuint32_t CLKSEL:2;\r
1286                 vuint32_t DIV512EN:1;\r
1287                 vuint32_t DIV32EN:1;\r
1288                 vuint32_t APIVAL:10;\r
1289             } B;\r
1290         } RTCC;                 /* RTC CONTROL REGISTER */\r
1291 \r
1292         union {\r
1293             vuint32_t R;\r
1294             struct {\r
1295                 vuint32_t:2;\r
1296                 vuint32_t RTCF:1;\r
1297                   vuint32_t:15;\r
1298                 vuint32_t APIF:1;\r
1299                   vuint32_t:2;\r
1300                 vuint32_t ROVRF:1;\r
1301                   vuint32_t:10;\r
1302             } B;\r
1303         } RTSC;                 /* RTC STATUS REGISTER */\r
1304 \r
1305         union {\r
1306             vuint32_t R;\r
1307             struct {\r
1308                 vuint32_t RTCCNT:32;\r
1309             } B;\r
1310         } RTCCNT;               /* RTC Counter Register */\r
1311 \r
1312         uint32_t crp_reserved2[9];\r
1313 \r
1314         union {\r
1315             vuint32_t R;\r
1316             struct {\r
1317                 vuint32_t PWK31:2;\r
1318                 vuint32_t PWK30:2;\r
1319                 vuint32_t PWK29:2;\r
1320                 vuint32_t PWK28:2;\r
1321                 vuint32_t PWK27:2;\r
1322                 vuint32_t PWK26:2;\r
1323                 vuint32_t PWK25:2;\r
1324                 vuint32_t PWK24:2;\r
1325                 vuint32_t PWK23:2;\r
1326                 vuint32_t PWK22:2;\r
1327                 vuint32_t PWK21:2;\r
1328                 vuint32_t PWK20:2;\r
1329                 vuint32_t PWK19:2;\r
1330                 vuint32_t PWK18:2;\r
1331                 vuint32_t PWK17:2;\r
1332                 vuint32_t PWK16:2;\r
1333             } B;\r
1334         } PWKENH;               /* PIN WAKEUP ENABLE HIGH REGISTER */\r
1335 \r
1336         union {\r
1337             vuint32_t R;\r
1338             struct {\r
1339                 vuint32_t PWK15:2;\r
1340                 vuint32_t PWK14:2;\r
1341                 vuint32_t PWK13:2;\r
1342                 vuint32_t PWK12:2;\r
1343                 vuint32_t PWK11:2;\r
1344                 vuint32_t PWK10:2;\r
1345                 vuint32_t PWK9:2;\r
1346                 vuint32_t PWK8:2;\r
1347                 vuint32_t PWK7:2;\r
1348                 vuint32_t PWK6:2;\r
1349                 vuint32_t PWK5:2;\r
1350                 vuint32_t PWK4:2;\r
1351                 vuint32_t PWK3:2;\r
1352                 vuint32_t PWK2:2;\r
1353                 vuint32_t PWK1:2;\r
1354                 vuint32_t PWK0:2;\r
1355             } B;\r
1356         } PWKENL;               /* PIN WAKEUP ENABLE LOW REGISTER */\r
1357 \r
1358         union {\r
1359             vuint32_t R;\r
1360             struct {\r
1361                 vuint32_t PWKSRCIE31:1;\r
1362                 vuint32_t PWKSRCIE30:1;\r
1363                 vuint32_t PWKSRCIE29:1;\r
1364                 vuint32_t PWKSRCIE28:1;\r
1365                 vuint32_t PWKSRCIE27:1;\r
1366                 vuint32_t PWKSRCIE26:1;\r
1367                 vuint32_t PWKSRCIE25:1;\r
1368                 vuint32_t PWKSRCIE24:1;\r
1369                 vuint32_t PWKSRCIE23:1;\r
1370                 vuint32_t PWKSRCIE22:1;\r
1371                 vuint32_t PWKSRCIE21:1;\r
1372                 vuint32_t PWKSRCIE20:1;\r
1373                 vuint32_t PWKSRCIE19:1;\r
1374                 vuint32_t PWKSRCIE18:1;\r
1375                 vuint32_t PWKSRCIE17:1;\r
1376                 vuint32_t PWKSRCIE16:1;\r
1377                 vuint32_t PWKSRCIE15:1;\r
1378                 vuint32_t PWKSRCIE14:1;\r
1379                 vuint32_t PWKSRCIE13:1;\r
1380                 vuint32_t PWKSRCIE12:1;\r
1381                 vuint32_t PWKSRCIE11:1;\r
1382                 vuint32_t PWKSRCIE10:1;\r
1383                 vuint32_t PWKSRCIE9:1;\r
1384                 vuint32_t PWKSRCIE8:1;\r
1385                 vuint32_t PWKSRCIE7:1;\r
1386                 vuint32_t PWKSRCIE6:1;\r
1387                 vuint32_t PWKSRCIE5:1;\r
1388                 vuint32_t PWKSRCIE4:1;\r
1389                 vuint32_t PWKSRCIE3:1;\r
1390                 vuint32_t PWKSRCIE2:1;\r
1391                 vuint32_t PWKSRCIE1:1;\r
1392                 vuint32_t PWKSRCIE0:1;\r
1393             } B;\r
1394         } PWKSRCIE;             /* PIN WAKEUP SOURCE INTERRUPT ENABLE REGISTER */\r
1395 \r
1396         union {\r
1397             vuint32_t R;\r
1398             struct {\r
1399                 vuint32_t PWKSRCIE31:1;\r
1400                 vuint32_t PWKSRCIE30:1;\r
1401                 vuint32_t PWKSRCIE29:1;\r
1402                 vuint32_t PWKSRCIE28:1;\r
1403                 vuint32_t PWKSRCIE27:1;\r
1404                 vuint32_t PWKSRCIE26:1;\r
1405                 vuint32_t PWKSRCIE25:1;\r
1406                 vuint32_t PWKSRCIE24:1;\r
1407                 vuint32_t PWKSRCIE23:1;\r
1408                 vuint32_t PWKSRCIE22:1;\r
1409                 vuint32_t PWKSRCIE21:1;\r
1410                 vuint32_t PWKSRCIE20:1;\r
1411                 vuint32_t PWKSRCIE19:1;\r
1412                 vuint32_t PWKSRCIE18:1;\r
1413                 vuint32_t PWKSRCIE17:1;\r
1414                 vuint32_t PWKSRCIE16:1;\r
1415                 vuint32_t PWKSRCIE15:1;\r
1416                 vuint32_t PWKSRCIE14:1;\r
1417                 vuint32_t PWKSRCIE13:1;\r
1418                 vuint32_t PWKSRCIE12:1;\r
1419                 vuint32_t PWKSRCIE11:1;\r
1420                 vuint32_t PWKSRCIE10:1;\r
1421                 vuint32_t PWKSRCIE9:1;\r
1422                 vuint32_t PWKSRCIE8:1;\r
1423                 vuint32_t PWKSRCIE7:1;\r
1424                 vuint32_t PWKSRCIE6:1;\r
1425                 vuint32_t PWKSRCIE5:1;\r
1426                 vuint32_t PWKSRCIE4:1;\r
1427                 vuint32_t PWKSRCIE3:1;\r
1428                 vuint32_t PWKSRCIE2:1;\r
1429                 vuint32_t PWKSRCIE1:1;\r
1430                 vuint32_t PWKSRCIE0:1;\r
1431             } B;\r
1432         } PWKSRCF;              /* PIN WAKEUP SOURCE FLAG REGISTER */\r
1433 \r
1434         union {\r
1435             vuint32_t R;\r
1436             struct {\r
1437                 vuint32_t Z6VECB:20;\r
1438                   vuint32_t:10;\r
1439                 vuint32_t Z6RST:1;\r
1440                 vuint32_t VLE:1;\r
1441             } B;\r
1442         } Z6VEC;                /* Z6 RESET VECTOR REGISTER */\r
1443 \r
1444         union {\r
1445             vuint32_t R;\r
1446             struct {\r
1447                 vuint32_t Z0VECB:30;\r
1448                 vuint32_t Z0RST:1;\r
1449                   vuint32_t:1;\r
1450             } B;\r
1451         } Z0VEC;                /* Z0 RESET VECTOR REGISTER */\r
1452 \r
1453         union {\r
1454             vuint32_t R;\r
1455             struct {\r
1456                 vuint32_t RECPTR:30;\r
1457                 vuint32_t FASTREC:1;\r
1458                   vuint32_t:1;\r
1459             } B;\r
1460         } RECPTR;               /* RESET RECOVERY POINTER REGISTER */\r
1461 \r
1462         uint32_t crp_reserved3;\r
1463 \r
1464         union {\r
1465             vuint32_t R;\r
1466             struct {\r
1467                 vuint32_t SLEEPF:1;\r
1468                   vuint32_t:12;\r
1469                 vuint32_t RTCOVRWKF:1;\r
1470                 vuint32_t RTCWKF:1;\r
1471                 vuint32_t APIWKF:1;\r
1472                 vuint32_t SLEEP:1;\r
1473                   vuint32_t:4;\r
1474                 vuint32_t RAMSEL:3;\r
1475                   vuint32_t:4;\r
1476                 vuint32_t WKCLKSEL:1;\r
1477                 vuint32_t RTCOVRWKEN:1;\r
1478                 vuint32_t RTCWKEN:1;\r
1479                 vuint32_t APIWKEN:1;\r
1480             } B;\r
1481         } PSCR;                 /* POWER STATUS AND CONTROL REGISTER */\r
1482 \r
1483         uint32_t crp_reserved4[3];\r
1484 \r
1485         union {\r
1486             vuint32_t R;\r
1487             struct {\r
1488                 vuint32_t LVI5LOCK:1;\r
1489                 vuint32_t LVI5RE:1;\r
1490                   vuint32_t:7;\r
1491                 vuint32_t LVI5HIE:1;\r
1492                 vuint32_t LVI5NIE:1;\r
1493                 vuint32_t LVI5IE:1;\r
1494                   vuint32_t:2;\r
1495                 vuint32_t FRIE:1;\r
1496                 vuint32_t FDIS:1;\r
1497                   vuint32_t:9;\r
1498                 vuint32_t LVI5HIF:1;\r
1499                 vuint32_t LVI5NF:1;\r
1500                 vuint32_t LVI5F:1;\r
1501                   vuint32_t:2;\r
1502                 vuint32_t FRF:1;\r
1503                 vuint32_t FRDY:1;\r
1504             } B;\r
1505         } SOCSC;                /* LVI Status and Control Register */\r
1506 \r
1507     };                          /* end of CRP_tag */\r
1508 /*************************************************************************/\r
1509 /*                          MODULE : CTU                                 */\r
1510 /*************************************************************************/\r
1511     struct CTU_tag {\r
1512 \r
1513         union {\r
1514             vuint32_t R;\r
1515             struct {\r
1516                 vuint32_t:24;\r
1517                 vuint32_t TRGIEN:1;\r
1518                 vuint32_t TRGI:1;\r
1519                   vuint32_t:2;\r
1520                 vuint32_t PRESC_CONF:4;\r
1521             } B;\r
1522         } CSR;                  /* Control Status Register */\r
1523 \r
1524         union {\r
1525             vuint32_t R;\r
1526             struct {\r
1527                 vuint32_t:23;\r
1528                 vuint32_t SV:9;\r
1529             } B;\r
1530         } SVR[7];               /* Start Value Register */\r
1531 \r
1532         union {\r
1533             vuint32_t R;\r
1534             struct {\r
1535                 vuint32_t:23;\r
1536                 vuint32_t CV:9;\r
1537             } B;\r
1538         } CVR[4];               /* Current Value Register */\r
1539 \r
1540         union {\r
1541             vuint32_t R;\r
1542             struct {\r
1543                 vuint32_t:16;\r
1544                 vuint32_t TM:1;\r
1545                   vuint32_t:1;\r
1546                 vuint32_t COUNT_GROUP:2;\r
1547                   vuint32_t:1;\r
1548                 vuint32_t DELAY_INDEX:3;\r
1549                 vuint32_t CLR_FG:1;\r
1550                   vuint32_t:1;\r
1551                 vuint32_t CHANNEL_VALUE:6;\r
1552             } B;\r
1553         } EVTCFGR[33];          /* Event Configuration Register */\r
1554 \r
1555     };                          /* end of CTU_tag */\r
1556 /*************************************************************************/\r
1557 /*                          MODULE : DMAMUX                              */\r
1558 /*************************************************************************/\r
1559     struct DMAMUX_tag {\r
1560         union {\r
1561             vuint8_t R;\r
1562             struct {\r
1563                 vuint8_t ENBL:1;\r
1564                 vuint8_t TRIG:1;\r
1565                 vuint8_t SOURCE:6;\r
1566             } B;\r
1567         } CHCONFIG[32];         /* DMA Channel Configuration Register */\r
1568 \r
1569     };                          /* end of DMAMUX_tag */\r
1570 /*************************************************************************/\r
1571 /*                          MODULE : DSPI                                */\r
1572 /*************************************************************************/\r
1573     struct DSPI_tag {\r
1574         union {\r
1575             vuint32_t R;\r
1576             struct {\r
1577                 vuint32_t MSTR:1;\r
1578                 vuint32_t CONT_SCKE:1;\r
1579                 vuint32_t DCONF:2;\r
1580                 vuint32_t FRZ:1;\r
1581                 vuint32_t MTFE:1;\r
1582                 vuint32_t PCSSE:1;\r
1583                 vuint32_t ROOE:1;\r
1584                   vuint32_t:2;\r
1585                 vuint32_t PCSIS5:1;\r
1586                 vuint32_t PCSIS4:1;\r
1587                 vuint32_t PCSIS3:1;\r
1588                 vuint32_t PCSIS2:1;\r
1589                 vuint32_t PCSIS1:1;\r
1590                 vuint32_t PCSIS0:1;\r
1591                   vuint32_t:1;\r
1592                 vuint32_t MDIS:1;\r
1593                 vuint32_t DIS_TXF:1;\r
1594                 vuint32_t DIS_RXF:1;\r
1595                 vuint32_t CLR_TXF:1;\r
1596                 vuint32_t CLR_RXF:1;\r
1597                 vuint32_t SMPL_PT:2;\r
1598                   vuint32_t:7;\r
1599                 vuint32_t HALT:1;\r
1600             } B;\r
1601         } MCR;                  /* Module Configuration Register */\r
1602 \r
1603         uint32_t dspi_reserved1;\r
1604 \r
1605         union {\r
1606             vuint32_t R;\r
1607             struct {\r
1608                 vuint32_t SPI_TCNT:16;\r
1609                   vuint32_t:16;\r
1610             } B;\r
1611         } TCR;\r
1612 \r
1613         union {\r
1614             vuint32_t R;\r
1615             struct {\r
1616                 vuint32_t DBR:1;\r
1617                 vuint32_t FMSZ:4;\r
1618                 vuint32_t CPOL:1;\r
1619                 vuint32_t CPHA:1;\r
1620                 vuint32_t LSBFE:1;\r
1621                 vuint32_t PCSSCK:2;\r
1622                 vuint32_t PASC:2;\r
1623                 vuint32_t PDT:2;\r
1624                 vuint32_t PBR:2;\r
1625                 vuint32_t CSSCK:4;\r
1626                 vuint32_t ASC:4;\r
1627                 vuint32_t DT:4;\r
1628                 vuint32_t BR:4;\r
1629             } B;\r
1630         } CTAR[8];              /* Clock and Transfer Attributes Registers */\r
1631 \r
1632         union {\r
1633             vuint32_t R;\r
1634             struct {\r
1635                 vuint32_t TCF:1;\r
1636                 vuint32_t TXRXS:1;\r
1637                   vuint32_t:1;\r
1638                 vuint32_t EOQF:1;\r
1639                 vuint32_t TFUF:1;\r
1640                   vuint32_t:1;\r
1641                 vuint32_t TFFF:1;\r
1642                   vuint32_t:5;\r
1643                 vuint32_t RFOF:1;\r
1644                   vuint32_t:1;\r
1645                 vuint32_t RFDF:1;\r
1646                   vuint32_t:1;\r
1647                 vuint32_t TXCTR:4;\r
1648                 vuint32_t TXNXTPTR:4;\r
1649                 vuint32_t RXCTR:4;\r
1650                 vuint32_t POPNXTPTR:4;\r
1651             } B;\r
1652         } SR;                   /* Status Register */\r
1653 \r
1654         union {\r
1655             vuint32_t R;\r
1656             struct {\r
1657                 vuint32_t TCF_RE:1;\r
1658                   vuint32_t:2;\r
1659                 vuint32_t EOQF_RE:1;\r
1660                 vuint32_t TFUF_RE:1;\r
1661                   vuint32_t:1;\r
1662                 vuint32_t TFFF_RE:1;\r
1663                 vuint32_t TFFF_DIRS:1;\r
1664                   vuint32_t:4;\r
1665                 vuint32_t RFOF_RE:1;\r
1666                   vuint32_t:1;\r
1667                 vuint32_t RFDF_RE:1;\r
1668                 vuint32_t RFDF_DIRS:1;\r
1669                   vuint32_t:16;\r
1670             } B;\r
1671         } RSER;                 /* DMA/Interrupt Request Select and Enable Register */\r
1672 \r
1673         union {\r
1674             vuint32_t R;\r
1675             struct {\r
1676                 vuint32_t CONT:1;\r
1677                 vuint32_t CTAS:3;\r
1678                 vuint32_t EOQ:1;\r
1679                 vuint32_t CTCNT:1;\r
1680                   vuint32_t:4;\r
1681                 vuint32_t PCS5:1;\r
1682                 vuint32_t PCS4:1;\r
1683                 vuint32_t PCS3:1;\r
1684                 vuint32_t PCS2:1;\r
1685                 vuint32_t PCS1:1;\r
1686                 vuint32_t PCS0:1;\r
1687                 vuint32_t TXDATA:16;\r
1688             } B;\r
1689         } PUSHR;                /* PUSH TX FIFO Register */\r
1690 \r
1691         union {\r
1692             vuint32_t R;\r
1693             struct {\r
1694                 vuint32_t:16;\r
1695                 vuint32_t RXDATA:16;\r
1696             } B;\r
1697         } POPR;                 /* POP RX FIFO Register */\r
1698 \r
1699         union {\r
1700             vuint32_t R;\r
1701             struct {\r
1702                 vuint32_t TXCMD:16;\r
1703                 vuint32_t TXDATA:16;\r
1704             } B;\r
1705         } TXFR[4];              /* Transmit FIFO Registers */\r
1706 \r
1707         vuint32_t DSPI_reserved_txf[12];\r
1708 \r
1709         union {\r
1710             vuint32_t R;\r
1711             struct {\r
1712                 vuint32_t:16;\r
1713                 vuint32_t RXDATA:16;\r
1714             } B;\r
1715         } RXFR[4];              /* Transmit FIFO Registers */\r
1716 \r
1717         vuint32_t DSPI_reserved_rxf[12];\r
1718 \r
1719         union {\r
1720             vuint32_t R;\r
1721             struct {\r
1722                 vuint32_t:11;\r
1723                 vuint32_t TSBC:1;\r
1724                 vuint32_t TXSS:1;\r
1725                   vuint32_t:2;\r
1726                 vuint32_t CID:1;\r
1727                 vuint32_t DCONT:1;\r
1728                 vuint32_t DSICTAS:3;\r
1729                   vuint32_t:6;\r
1730                 vuint32_t DPCS5:1;\r
1731                 vuint32_t DPCS4:1;\r
1732                 vuint32_t DPCS3:1;\r
1733                 vuint32_t DPCS2:1;\r
1734                 vuint32_t DPCS1:1;\r
1735                 vuint32_t DPCS0:1;\r
1736             } B;\r
1737         } DSICR;                /* DSI Configuration Register */\r
1738 \r
1739         union {\r
1740             vuint32_t R;\r
1741             struct {\r
1742                 vuint32_t SER_DATA:32;\r
1743             } B;\r
1744         } SDR;                  /* DSI Serialization Data Register */\r
1745 \r
1746         union {\r
1747             vuint32_t R;\r
1748             struct {\r
1749                 vuint32_t ASER_DATA:32;\r
1750             } B;\r
1751         } ASDR;                 /* DSI Alternate Serialization Data Register */\r
1752 \r
1753         union {\r
1754             vuint32_t R;\r
1755             struct {\r
1756                 vuint32_t COMP_DATA:32;\r
1757             } B;\r
1758         } COMPR;                /* DSI Transmit Comparison Register */\r
1759 \r
1760         union {\r
1761             vuint32_t R;\r
1762             struct {\r
1763                 vuint32_t DESER_DATA:32;\r
1764             } B;\r
1765         } DDR;                  /* DSI deserialization Data Register */\r
1766 \r
1767         union {\r
1768             vuint32_t R;\r
1769             struct {\r
1770                 vuint32_t:3;\r
1771                 vuint32_t TSBCNT:5;\r
1772                   vuint32_t:16;\r
1773                 vuint32_t DPCS1_7:1;\r
1774                 vuint32_t DPCS1_6:1;\r
1775                 vuint32_t DPCS1_5:1;\r
1776                 vuint32_t DPCS1_4:1;\r
1777                 vuint32_t DPCS1_3:1;\r
1778                 vuint32_t DPCS1_2:1;\r
1779                 vuint32_t DPCS1_1:1;\r
1780                 vuint32_t DPCS1_0:1;\r
1781             } B;\r
1782         } DSICR1;               /* DSI Configuration Register 1 */\r
1783 \r
1784     };                          /* end of DSPI_tag */\r
1785 /*************************************************************************/\r
1786 /*                           MODULE : ECSM                               */\r
1787 /*************************************************************************/\r
1788     struct ECSM_tag {\r
1789 \r
1790         uint32_t ecsm_reserved1[9];\r
1791 \r
1792         union {\r
1793             vuint32_t R;\r
1794             struct {\r
1795                 vuint32_t FXSBE0:1;\r
1796                 vuint32_t FXSBE1:1;\r
1797                 vuint32_t FXSBE2:1;\r
1798                 vuint32_t FXSBE3:1;\r
1799                   vuint32_t:2;\r
1800                 vuint32_t FXSBE6:1;\r
1801                 vuint32_t FXSBE7:1;\r
1802                 vuint32_t RBEN:1;\r
1803                 vuint32_t WBEN:1;\r
1804                 vuint32_t ACCERR:1;\r
1805                   vuint32_t:21;\r
1806             } B;\r
1807         } FBOMCR;               /* FEC Burst Optimisation Master Control Register */\r
1808 \r
1809         uint8_t ecsm_reserved2[27];\r
1810 \r
1811         union {\r
1812             vuint8_t R;\r
1813             struct {\r
1814                 vuint8_t:2;\r
1815                 vuint8_t EPR1BR:1;\r
1816                 vuint8_t EPF1BR:1;\r
1817                   vuint8_t:2;\r
1818                 vuint8_t EPRNCR:1;\r
1819                 vuint8_t EPFNCR:1;\r
1820             } B;\r
1821         } ECR;                  /* ECC Configuration Register */\r
1822 \r
1823         uint8_t ecsm_reserved3[3];\r
1824 \r
1825         union {\r
1826             vuint8_t R;\r
1827             struct {\r
1828                 vuint8_t:2;\r
1829                 vuint8_t PR1BC:1;\r
1830                 vuint8_t PF1BC:1;\r
1831                   vuint8_t:2;\r
1832                 vuint8_t PRNCE:1;\r
1833                 vuint8_t PFNCE:1;\r
1834             } B;\r
1835         } ESR;                  /* ECC Status Register */\r
1836 \r
1837         uint16_t ecsm_reserved4;\r
1838 \r
1839         union {\r
1840             vuint16_t R;\r
1841             struct {\r
1842                 vuint16_t:2;\r
1843                 vuint16_t FRC1BI:1;\r
1844                 vuint16_t FR11BI:1;\r
1845                   vuint16_t:2;\r
1846                 vuint16_t FRCNCI:1;\r
1847                 vuint16_t FR1NCI:1;\r
1848                 vuint16_t PREI_SEL:1;\r
1849                 vuint16_t ERRBIT:7;\r
1850             } B;\r
1851         } EEGR;                 /* ECC Error Generation Register */\r
1852 \r
1853         uint32_t ecsm_reserved5;\r
1854 \r
1855         union {\r
1856             vuint32_t R;\r
1857             struct {\r
1858                 vuint32_t PFEAR:32;\r
1859             } B;\r
1860         } PFEAR;                /* Platform Flash ECC Address Register */\r
1861 \r
1862         uint16_t ecsm_reserved6;\r
1863 \r
1864         union {\r
1865             vuint8_t R;\r
1866             struct {\r
1867                 vuint8_t:4;\r
1868                 vuint8_t PFEMR:4;\r
1869             } B;\r
1870         } PFEMR;                /* Platform Flash ECC Address Register */\r
1871 \r
1872         union {\r
1873             vuint8_t R;\r
1874             struct {\r
1875                 vuint8_t WRITE:1;\r
1876                 vuint8_t SIZE:3;\r
1877                 vuint8_t PROTECTION:4;\r
1878             } B;\r
1879         } PFEAT;                /* Flash ECC Attributes Register */\r
1880 \r
1881         union {\r
1882             vuint32_t R;\r
1883             struct {\r
1884                 vuint32_t PFEDRH:32;\r
1885             } B;\r
1886         } PFEDRH;               /* Flash ECC Data High Register */\r
1887 \r
1888         union {\r
1889             vuint32_t R;\r
1890             struct {\r
1891                 vuint32_t PFEDRL:32;\r
1892             } B;\r
1893         } PFEDRL;               /* Flash ECC Data Low Register */\r
1894 \r
1895         union {\r
1896             vuint32_t R;\r
1897             struct {\r
1898                 vuint32_t PREAR:32;\r
1899             } B;\r
1900         } PREAR;                /* Platform RAM ECC Address Register */\r
1901 \r
1902         uint16_t ecsm_reserved8;\r
1903 \r
1904         union {\r
1905             vuint8_t R;\r
1906             struct {\r
1907                 vuint8_t:4;\r
1908                 vuint8_t PREMR:4;\r
1909             } B;\r
1910         } PREMR;                /* RAM ECC Attributes Register */\r
1911 \r
1912         union {\r
1913             vuint8_t R;\r
1914             struct {\r
1915                 vuint8_t WRITE:1;\r
1916                 vuint8_t SIZE:3;\r
1917                 vuint8_t PROTECTION:4;\r
1918             } B;\r
1919         } PREAT;                /* Platform RAM ECC Attributes Register */\r
1920 \r
1921         union {\r
1922             vuint32_t R;\r
1923             struct {\r
1924                 vuint32_t PREDR:32;\r
1925             } B;\r
1926         } PREDRH;               /* Platform RAM ECC Data Low Register High */\r
1927 \r
1928         union {\r
1929             vuint32_t R;\r
1930             struct {\r
1931                 vuint32_t PREDR:32;\r
1932             } B;\r
1933         } PREDRL;               /* Platform RAM ECC Data Low Register Low */\r
1934 \r
1935     };                          /* end of ECSM_tag */\r
1936 \r
1937 #include "ip_edma.h"\r
1938 \r
1939 #if 0\r
1940 /*************************************************************************/\r
1941 /*                            MODULE : eDMA                              */\r
1942 /*************************************************************************/\r
1943     struct EDMA_tag {\r
1944         union {\r
1945             vuint32_t R;\r
1946             struct {\r
1947                 vuint32_t:14;\r
1948                 vuint32_t CXFR:1;\r
1949                 vuint32_t ECX:1;\r
1950                   vuint32_t:5;\r
1951                 vuint32_t GRP1PRI:1;\r
1952                   vuint32_t:1;\r
1953                 vuint32_t GRP0PRI:1;\r
1954                 vuint32_t EMLM:1;\r
1955                 vuint32_t CLM:1;\r
1956                 vuint32_t HALT:1;\r
1957                 vuint32_t HOE:1;\r
1958                 vuint32_t ERGA:1;\r
1959                 vuint32_t ERCA:1;\r
1960                 vuint32_t EDBG:1;\r
1961                   vuint32_t:1;\r
1962             } B;\r
1963         } CR;                   /* Control Register */\r
1964 \r
1965         union {\r
1966             vuint32_t R;\r
1967             struct {\r
1968                 vuint32_t VLD:1;\r
1969                   vuint32_t:14;\r
1970                 vuint32_t ECX:1;\r
1971                 vuint32_t GPE:1;\r
1972                 vuint32_t CPE:1;\r
1973                 vuint32_t ERRCHN:6;\r
1974                 vuint32_t SAE:1;\r
1975                 vuint32_t SOE:1;\r
1976                 vuint32_t DAE:1;\r
1977                 vuint32_t DOE:1;\r
1978                 vuint32_t NCE:1;\r
1979                 vuint32_t SGE:1;\r
1980                 vuint32_t SBE:1;\r
1981                 vuint32_t DBE:1;\r
1982             } B;\r
1983         } ESR;                  /* Error Status Register */\r
1984 \r
1985         int32_t EDMA_reserved1;\r
1986 \r
1987         union {\r
1988             vuint32_t R;\r
1989             struct {\r
1990 \r
1991                 vuint32_t ERQ31:1;\r
1992                 vuint32_t ERQ30:1;\r
1993                 vuint32_t ERQ29:1;\r
1994                 vuint32_t ERQ28:1;\r
1995                 vuint32_t ERQ27:1;\r
1996                 vuint32_t ERQ26:1;\r
1997                 vuint32_t ERQ25:1;\r
1998                 vuint32_t ERQ24:1;\r
1999                 vuint32_t ERQ23:1;\r
2000                 vuint32_t ERQ22:1;\r
2001                 vuint32_t ERQ21:1;\r
2002                 vuint32_t ERQ20:1;\r
2003                 vuint32_t ERQ19:1;\r
2004                 vuint32_t ERQ18:1;\r
2005                 vuint32_t ERQ17:1;\r
2006                 vuint32_t ERQ16:1;\r
2007                 vuint32_t ERQ15:1;\r
2008                 vuint32_t ERQ14:1;\r
2009                 vuint32_t ERQ13:1;\r
2010                 vuint32_t ERQ12:1;\r
2011                 vuint32_t ERQ11:1;\r
2012                 vuint32_t ERQ10:1;\r
2013                 vuint32_t ERQ09:1;\r
2014                 vuint32_t ERQ08:1;\r
2015                 vuint32_t ERQ07:1;\r
2016                 vuint32_t ERQ06:1;\r
2017                 vuint32_t ERQ05:1;\r
2018                 vuint32_t ERQ04:1;\r
2019                 vuint32_t ERQ03:1;\r
2020                 vuint32_t ERQ02:1;\r
2021                 vuint32_t ERQ01:1;\r
2022                 vuint32_t ERQ00:1;\r
2023             } B;\r
2024         } ERQRL;                /* DMA Enable Request Register */\r
2025 \r
2026         int32_t EDMA_reserved2;\r
2027 \r
2028         union {\r
2029             vuint32_t R;\r
2030             struct {\r
2031                 vuint32_t EEI31:1;\r
2032                 vuint32_t EEI30:1;\r
2033                 vuint32_t EEI29:1;\r
2034                 vuint32_t EEI28:1;\r
2035                 vuint32_t EEI27:1;\r
2036                 vuint32_t EEI26:1;\r
2037                 vuint32_t EEI25:1;\r
2038                 vuint32_t EEI24:1;\r
2039                 vuint32_t EEI23:1;\r
2040                 vuint32_t EEI22:1;\r
2041                 vuint32_t EEI21:1;\r
2042                 vuint32_t EEI20:1;\r
2043                 vuint32_t EEI19:1;\r
2044                 vuint32_t EEI18:1;\r
2045                 vuint32_t EEI17:1;\r
2046                 vuint32_t EEI16:1;\r
2047                 vuint32_t EEI15:1;\r
2048                 vuint32_t EEI14:1;\r
2049                 vuint32_t EEI13:1;\r
2050                 vuint32_t EEI12:1;\r
2051                 vuint32_t EEI11:1;\r
2052                 vuint32_t EEI10:1;\r
2053                 vuint32_t EEI09:1;\r
2054                 vuint32_t EEI08:1;\r
2055                 vuint32_t EEI07:1;\r
2056                 vuint32_t EEI06:1;\r
2057                 vuint32_t EEI05:1;\r
2058                 vuint32_t EEI04:1;\r
2059                 vuint32_t EEI03:1;\r
2060                 vuint32_t EEI02:1;\r
2061                 vuint32_t EEI01:1;\r
2062                 vuint32_t EEI00:1;\r
2063             } B;\r
2064         } EEIRL;                /* DMA Enable Error Interrupt Register Low */\r
2065 \r
2066         union {\r
2067             vuint8_t R;\r
2068             struct {\r
2069                 vuint8_t NOP:1;\r
2070                 vuint8_t SERQ:7;\r
2071             } B;\r
2072         } SERQR;                /* DMA Set Enable Request Register */\r
2073 \r
2074         union {\r
2075             vuint8_t R;\r
2076             struct {\r
2077                 vuint8_t NOP:1;\r
2078                 vuint8_t CERQ:7;\r
2079             } B;\r
2080         } CERQR;                /* DMA Clear Enable Request Register */\r
2081 \r
2082         union {\r
2083             vuint8_t R;\r
2084             struct {\r
2085                 vuint8_t NOP:1;\r
2086                 vuint8_t SEEI:7;\r
2087             } B;\r
2088         } SEEIR;                /* DMA Set Enable Error Interrupt Register */\r
2089 \r
2090         union {\r
2091             vuint8_t R;\r
2092             struct {\r
2093                 vuint8_t:1;\r
2094                 vuint8_t CEEI:7;\r
2095             } B;\r
2096         } CEEIR;                /* DMA Clear Enable Error Interrupt Register */\r
2097 \r
2098         union {\r
2099             vuint8_t R;\r
2100             struct {\r
2101                 vuint8_t NOP:1;\r
2102                 vuint8_t CINT:7;\r
2103             } B;\r
2104         } CIRQR;                /* DMA Clear Interrupt Request Register */\r
2105 \r
2106         union {\r
2107             vuint8_t R;\r
2108             struct {\r
2109                 vuint8_t NOP:1;\r
2110                 vuint8_t CERR:7;\r
2111             } B;\r
2112         } CER;                  /* DMA Clear error Register */\r
2113 \r
2114         union {\r
2115             vuint8_t R;\r
2116             struct {\r
2117                 vuint8_t NOP:1;\r
2118                 vuint8_t SSB:7;\r
2119             } B;\r
2120         } SSBR;                 /* Set Start Bit Register */\r
2121 \r
2122         union {\r
2123             vuint8_t R;\r
2124             struct {\r
2125                 vuint8_t NOP:1;\r
2126                 vuint8_t CDSB:7;\r
2127             } B;\r
2128         } CDSBR;                /* Clear Done Status Bit Register */\r
2129 \r
2130         int32_t EDMA_reserved3;\r
2131 \r
2132         union {\r
2133             vuint32_t R;\r
2134             struct {\r
2135                 vuint32_t INT31:1;\r
2136                 vuint32_t INT30:1;\r
2137                 vuint32_t INT29:1;\r
2138                 vuint32_t INT28:1;\r
2139                 vuint32_t INT27:1;\r
2140                 vuint32_t INT26:1;\r
2141                 vuint32_t INT25:1;\r
2142                 vuint32_t INT24:1;\r
2143                 vuint32_t INT23:1;\r
2144                 vuint32_t INT22:1;\r
2145                 vuint32_t INT21:1;\r
2146                 vuint32_t INT20:1;\r
2147                 vuint32_t INT19:1;\r
2148                 vuint32_t INT18:1;\r
2149                 vuint32_t INT17:1;\r
2150                 vuint32_t INT16:1;\r
2151                 vuint32_t INT15:1;\r
2152                 vuint32_t INT14:1;\r
2153                 vuint32_t INT13:1;\r
2154                 vuint32_t INT12:1;\r
2155                 vuint32_t INT11:1;\r
2156                 vuint32_t INT10:1;\r
2157                 vuint32_t INT09:1;\r
2158                 vuint32_t INT08:1;\r
2159                 vuint32_t INT07:1;\r
2160                 vuint32_t INT06:1;\r
2161                 vuint32_t INT05:1;\r
2162                 vuint32_t INT04:1;\r
2163                 vuint32_t INT03:1;\r
2164                 vuint32_t INT02:1;\r
2165                 vuint32_t INT01:1;\r
2166                 vuint32_t INT00:1;\r
2167             } B;\r
2168         } IRQRL;                /* DMA Interrupt Request Low */\r
2169 \r
2170         int32_t EDMA_reserved4;\r
2171 \r
2172         union {\r
2173             vuint32_t R;\r
2174             struct {\r
2175                 vuint32_t ERR31:1;\r
2176                 vuint32_t ERR30:1;\r
2177                 vuint32_t ERR29:1;\r
2178                 vuint32_t ERR28:1;\r
2179                 vuint32_t ERR27:1;\r
2180                 vuint32_t ERR26:1;\r
2181                 vuint32_t ERR25:1;\r
2182                 vuint32_t ERR24:1;\r
2183                 vuint32_t ERR23:1;\r
2184                 vuint32_t ERR22:1;\r
2185                 vuint32_t ERR21:1;\r
2186                 vuint32_t ERR20:1;\r
2187                 vuint32_t ERR19:1;\r
2188                 vuint32_t ERR18:1;\r
2189                 vuint32_t ERR17:1;\r
2190                 vuint32_t ERR16:1;\r
2191                 vuint32_t ERR15:1;\r
2192                 vuint32_t ERR14:1;\r
2193                 vuint32_t ERR13:1;\r
2194                 vuint32_t ERR12:1;\r
2195                 vuint32_t ERR11:1;\r
2196                 vuint32_t ERR10:1;\r
2197                 vuint32_t ERR09:1;\r
2198                 vuint32_t ERR08:1;\r
2199                 vuint32_t ERR07:1;\r
2200                 vuint32_t ERR06:1;\r
2201                 vuint32_t ERR05:1;\r
2202                 vuint32_t ERR04:1;\r
2203                 vuint32_t ERR03:1;\r
2204                 vuint32_t ERR02:1;\r
2205                 vuint32_t ERR01:1;\r
2206                 vuint32_t ERR00:1;\r
2207             } B;\r
2208         } ERL;                  /* DMA Error Low */\r
2209 \r
2210         uint32_t edma_reserved5;\r
2211 \r
2212         union {\r
2213             vuint32_t R;\r
2214             struct {\r
2215                 vuint32_t HRS31:1;\r
2216                 vuint32_t HRS30:1;\r
2217                 vuint32_t HRS29:1;\r
2218                 vuint32_t HRS28:1;\r
2219                 vuint32_t HRS27:1;\r
2220                 vuint32_t HRS26:1;\r
2221                 vuint32_t HRS25:1;\r
2222                 vuint32_t HRS24:1;\r
2223                 vuint32_t HRS23:1;\r
2224                 vuint32_t HRS22:1;\r
2225                 vuint32_t HRS21:1;\r
2226                 vuint32_t HRS20:1;\r
2227                 vuint32_t HRS19:1;\r
2228                 vuint32_t HRS18:1;\r
2229                 vuint32_t HRS17:1;\r
2230                 vuint32_t HRS16:1;\r
2231                 vuint32_t HRS15:1;\r
2232                 vuint32_t HRS14:1;\r
2233                 vuint32_t HRS13:1;\r
2234                 vuint32_t HRS12:1;\r
2235                 vuint32_t HRS11:1;\r
2236                 vuint32_t HRS10:1;\r
2237                 vuint32_t HRS09:1;\r
2238                 vuint32_t HRS08:1;\r
2239                 vuint32_t HRS07:1;\r
2240                 vuint32_t HRS06:1;\r
2241                 vuint32_t HRS05:1;\r
2242                 vuint32_t HRS04:1;\r
2243                 vuint32_t HRS03:1;\r
2244                 vuint32_t HRS02:1;\r
2245                 vuint32_t HRS01:1;\r
2246                 vuint32_t HRS00:1;\r
2247             } B;\r
2248         } HRSL;                 /* Hardware request status register Low */\r
2249 \r
2250         uint32_t edma_reserved6[50];\r
2251 \r
2252         union {\r
2253             vuint8_t R;\r
2254             struct {\r
2255                 vuint8_t ECP:1;\r
2256                 vuint8_t DPA:1;\r
2257                 vuint8_t GRPPRI:2;\r
2258                 vuint8_t CHPRI:4;\r
2259             } B;\r
2260         } CPR[32];              /* Channel n Priority */\r
2261 \r
2262         uint32_t edma_reserved7[952];\r
2263 \r
2264 /****************************************************************************/\r
2265 /*       DMA2 Transfer Control Descriptor                                   */\r
2266 /****************************************************************************/\r
2267 \r
2268         struct tcd_t {          /*for "standard" format TCDs (when EDMA.TCD[x].CITER.E_LINK==BITER.E_LINK=0 && EDMA.EMLM=0 ) */\r
2269             vuint32_t SADDR;    /* source address */\r
2270 \r
2271             vuint16_t SMOD:5;   /* source address modulo */\r
2272             vuint16_t SSIZE:3;  /* source transfer size */\r
2273             vuint16_t DMOD:5;   /* destination address modulo */\r
2274             vuint16_t DSIZE:3;  /* destination transfer size */\r
2275             vint16_t SOFF;      /* signed source address offset */\r
2276 \r
2277             vuint32_t NBYTES;   /* inner (\93minor\94) byte count */\r
2278 \r
2279             vint32_t SLAST;     /* last destination address adjustment, or\r
2280 \r
2281                                    scatter/gather address (if e_sg = 1) */\r
2282             vuint32_t DADDR;    /* destination address */\r
2283 \r
2284             vuint16_t CITERE_LINK:1;\r
2285             vuint16_t CITER:15;\r
2286 \r
2287             vint16_t DOFF;      /* signed destination address offset */\r
2288 \r
2289             vint32_t DLAST_SGA;\r
2290 \r
2291             vuint16_t BITERE_LINK:1;    /* beginning ("major") iteration count */\r
2292             vuint16_t BITER:15;\r
2293 \r
2294             vuint16_t BWC:2;    /* bandwidth control */\r
2295             vuint16_t MAJORLINKCH:6;    /* enable channel-to-channel link */\r
2296             vuint16_t DONE:1;   /* channel done */\r
2297             vuint16_t ACTIVE:1; /* channel active */\r
2298             vuint16_t MAJORE_LINK:1;    /* enable channel-to-channel link */\r
2299             vuint16_t E_SG:1;   /* enable scatter/gather descriptor */\r
2300             vuint16_t D_REQ:1;  /* disable ipd_req when done */\r
2301             vuint16_t INT_HALF:1;       /* interrupt on citer = (biter >> 1) */\r
2302             vuint16_t INT_MAJ:1;        /* interrupt on major loop completion */\r
2303             vuint16_t START:1;  /* explicit channel start */\r
2304         } TCD[32];              /* transfer_control_descriptor */\r
2305 \r
2306     };\r
2307 \r
2308 // struct EDMA_TCD_alt1_tag { /*for alternate format TCDs (when EDMA.TCD[x].CITER.E_LINK==BITER.E_LINK=1 )*/\r
2309 \r
2310     // struct tcd_alt1_t {\r
2311     // vuint32_t SADDR;     /* source address */\r
2312 \r
2313     // vuint16_t SMOD:5;    /* source address modulo */\r
2314     // vuint16_t SSIZE:3;   /* source transfer size */\r
2315     // vuint16_t DMOD:5;    /* destination address modulo */\r
2316     // vuint16_t DSIZE:3;   /* destination transfer size */\r
2317     // vint16_t SOFF;      /* signed source address offset */\r
2318 \r
2319     // vuint32_t NBYTES;    /* inner (\93minor\94) byte count */\r
2320 \r
2321     // vuint32_t SMLOE:1;\r
2322     // vuint32_t DMLOE:1;\r
2323     // vuint32_t MLOFFNBYTES:1;\r
2324     // vuint32_t NBYTES1:1;\r
2325 \r
2326     // vint32_t SLAST;     /* last destination address adjustment, or\r
2327     // scatter/gather address (if e_sg = 1) */\r
2328 \r
2329     // vuint32_t DADDR;     /* destination address */\r
2330 \r
2331     // vuint16_t CITERE_LINK:1;\r
2332     // vuint16_t CITERLINKCH:6;\r
2333     // vuint16_t CITER:9;\r
2334 \r
2335     // vint16_t  DOFF;      /* signed destination address offset */\r
2336 \r
2337     // vint32_t DLAST_SGA;\r
2338 \r
2339     // vuint16_t BITERE_LINK:1;   /* beginning (\93major\94) iteration count */\r
2340     // vuint16_t BITERLINKCH:6;\r
2341     // vuint16_t BITER:9;\r
2342 \r
2343     // vuint16_t BWC:2;        /* bandwidth control */\r
2344     // vuint16_t MAJORLINKCH:6;/* enable channel-to-channel link */\r
2345     // vuint16_t DONE:1;       /* channel done */\r
2346     // vuint16_t ACTIVE:1;     /* channel active */\r
2347     // vuint16_t MAJORE_LINK:1;/* enable channel-to-channel link */\r
2348     // vuint16_t E_SG:1;       /* enable scatter/gather descriptor */\r
2349     // vuint16_t D_REQ:1;      /* disable ipd_req when done */\r
2350     // vuint16_t INT_HALF:1;    /* interrupt on citer = (biter >> 1) */\r
2351     // vuint16_t INT_MAJ:1;     /* interrupt on major loop completion */\r
2352     // vuint16_t START:1;      /* explicit channel start */\r
2353 // } TCD[32];                                                                   /* transfer_control_descriptor */\r
2354 \r
2355 // };\r
2356 #endif\r
2357 \r
2358 /*************************************************************************/\r
2359 /*                          MODULE : EMIOS                               */\r
2360 /*************************************************************************/\r
2361     struct EMIOS_tag {\r
2362         union {\r
2363             vuint32_t R;\r
2364             struct {\r
2365                 vuint32_t:1;\r
2366                 vuint32_t MDIS:1;\r
2367                 vuint32_t FRZ:1;\r
2368                 vuint32_t GTBE:1;\r
2369                   vuint32_t:1;\r
2370                 vuint32_t GPREN:1;\r
2371                   vuint32_t:10;\r
2372                 vuint32_t GPRE:8;\r
2373                   vuint32_t:8;\r
2374             } B;\r
2375         } MCR;                  /* Module Configuration Register */\r
2376 \r
2377         union {\r
2378             vuint32_t R;\r
2379             struct {\r
2380                 vuint32_t F31:1;\r
2381                 vuint32_t F30:1;\r
2382                 vuint32_t F29:1;\r
2383                 vuint32_t F28:1;\r
2384                 vuint32_t F27:1;\r
2385                 vuint32_t F26:1;\r
2386                 vuint32_t F25:1;\r
2387                 vuint32_t F24:1;\r
2388                 vuint32_t F23:1;\r
2389                 vuint32_t F22:1;\r
2390                 vuint32_t F21:1;\r
2391                 vuint32_t F20:1;\r
2392                 vuint32_t F19:1;\r
2393                 vuint32_t F18:1;\r
2394                 vuint32_t F17:1;\r
2395                 vuint32_t F16:1;\r
2396                 vuint32_t F15:1;\r
2397                 vuint32_t F14:1;\r
2398                 vuint32_t F13:1;\r
2399                 vuint32_t F12:1;\r
2400                 vuint32_t F11:1;\r
2401                 vuint32_t F10:1;\r
2402                 vuint32_t F9:1;\r
2403                 vuint32_t F8:1;\r
2404                 vuint32_t F7:1;\r
2405                 vuint32_t F6:1;\r
2406                 vuint32_t F5:1;\r
2407                 vuint32_t F4:1;\r
2408                 vuint32_t F3:1;\r
2409                 vuint32_t F2:1;\r
2410                 vuint32_t F1:1;\r
2411                 vuint32_t F0:1;\r
2412             } B;\r
2413         } GFR;                  /* Global FLAG Register */\r
2414 \r
2415         union {\r
2416             vuint32_t R;\r
2417             struct {\r
2418                 vuint32_t OU31:1;\r
2419                 vuint32_t OU30:1;\r
2420                 vuint32_t OU29:1;\r
2421                 vuint32_t OU28:1;\r
2422                 vuint32_t OU27:1;\r
2423                 vuint32_t OU26:1;\r
2424                 vuint32_t OU25:1;\r
2425                 vuint32_t OU24:1;\r
2426                 vuint32_t OU23:1;\r
2427                 vuint32_t OU22:1;\r
2428                 vuint32_t OU21:1;\r
2429                 vuint32_t OU20:1;\r
2430                 vuint32_t OU19:1;\r
2431                 vuint32_t OU18:1;\r
2432                 vuint32_t OU17:1;\r
2433                 vuint32_t OU16:1;\r
2434                 vuint32_t OU15:1;\r
2435                 vuint32_t OU14:1;\r
2436                 vuint32_t OU13:1;\r
2437                 vuint32_t OU12:1;\r
2438                 vuint32_t OU11:1;\r
2439                 vuint32_t OU10:1;\r
2440                 vuint32_t OU9:1;\r
2441                 vuint32_t OU8:1;\r
2442                 vuint32_t OU7:1;\r
2443                 vuint32_t OU6:1;\r
2444                 vuint32_t OU5:1;\r
2445                 vuint32_t OU4:1;\r
2446                 vuint32_t OU3:1;\r
2447                 vuint32_t OU2:1;\r
2448                 vuint32_t OU1:1;\r
2449                 vuint32_t OU0:1;\r
2450             } B;\r
2451         } OUDR;                 /* Output Update Disable Register */\r
2452 \r
2453         union {\r
2454             vuint32_t R;\r
2455             struct {\r
2456                 vuint32_t UC31:1;\r
2457                 vuint32_t UC30:1;\r
2458                 vuint32_t UC29:1;\r
2459                 vuint32_t UC28:1;\r
2460                 vuint32_t UC27:1;\r
2461                 vuint32_t UC26:1;\r
2462                 vuint32_t UC25:1;\r
2463                 vuint32_t UC24:1;\r
2464                 vuint32_t UC23:1;\r
2465                 vuint32_t UC22:1;\r
2466                 vuint32_t UC21:1;\r
2467                 vuint32_t UC20:1;\r
2468                 vuint32_t UC19:1;\r
2469                 vuint32_t UC18:1;\r
2470                 vuint32_t UC17:1;\r
2471                 vuint32_t UC16:1;\r
2472                 vuint32_t UC15:1;\r
2473                 vuint32_t UC14:1;\r
2474                 vuint32_t UC13:1;\r
2475                 vuint32_t UC12:1;\r
2476                 vuint32_t UC11:1;\r
2477                 vuint32_t UC10:1;\r
2478                 vuint32_t UC9:1;\r
2479                 vuint32_t UC8:1;\r
2480                 vuint32_t UC7:1;\r
2481                 vuint32_t UC6:1;\r
2482                 vuint32_t UC5:1;\r
2483                 vuint32_t UC4:1;\r
2484                 vuint32_t UC3:1;\r
2485                 vuint32_t UC2:1;\r
2486                 vuint32_t UC1:1;\r
2487                 vuint32_t UC0:1;\r
2488             } B;\r
2489         } UCDIS;                /* Disable Channel Register */\r
2490 \r
2491         uint32_t emios_reserved1[4];\r
2492 \r
2493         struct {\r
2494             union {\r
2495                 vuint32_t R;\r
2496                 struct {\r
2497                     vuint32_t:16;\r
2498                     vuint32_t A:16;     /* Channel A Data Register */\r
2499                 } B;\r
2500             } CADR;\r
2501 \r
2502             union {\r
2503                 vuint32_t R;\r
2504                 struct {\r
2505                     vuint32_t:16;\r
2506                     vuint32_t B:16;     /* Channel B Data Register */\r
2507                 } B;\r
2508             } CBDR;\r
2509 \r
2510             union {\r
2511                 vuint32_t R;    /* Channel Counter Register */\r
2512                 struct {\r
2513                     vuint32_t:16;\r
2514                     vuint32_t C:16;     /* Channel C Data Register */\r
2515                 } B;\r
2516             } CCNTR;\r
2517 \r
2518             union {\r
2519                 vuint32_t R;\r
2520                 struct {\r
2521                     vuint32_t FREN:1;\r
2522                     vuint32_t ODIS:1;\r
2523                     vuint32_t ODISSL:2;\r
2524                     vuint32_t UCPRE:2;\r
2525                     vuint32_t UCPREN:1;\r
2526                     vuint32_t DMA:1;\r
2527                       vuint32_t:1;\r
2528                     vuint32_t IF:4;\r
2529                     vuint32_t FCK:1;\r
2530                     vuint32_t FEN:1;\r
2531                       vuint32_t:3;\r
2532                     vuint32_t FORCMA:1;\r
2533                     vuint32_t FORCMB:1;\r
2534                       vuint32_t:1;\r
2535                     vuint32_t BSL:2;\r
2536                     vuint32_t EDSEL:1;\r
2537                     vuint32_t EDPOL:1;\r
2538                     vuint32_t MODE:7;\r
2539                 } B;\r
2540             } CCR;              /* Channel Control Register */\r
2541 \r
2542             union {\r
2543                 vuint32_t R;\r
2544                 struct {\r
2545                     vuint32_t OVR:1;\r
2546                       vuint32_t:15;\r
2547                     vuint32_t OVFL:1;\r
2548                       vuint32_t:12;\r
2549                     vuint32_t UCIN:1;\r
2550                     vuint32_t UCOUT:1;\r
2551                     vuint32_t FLAG:1;\r
2552                 } B;\r
2553             } CSR;              /* Channel Status Register */\r
2554 \r
2555             union {\r
2556                 vuint32_t R;    /* Alternate Channel A Data Register */\r
2557             } ALTA;\r
2558 \r
2559             uint32_t emios_channel_reserved[2];\r
2560 \r
2561         } CH[32];\r
2562 \r
2563     };                          /* end of EMIOS_tag */\r
2564 /*************************************************************************/\r
2565 /*                             MODULE : eSCI                             */\r
2566 /*************************************************************************/\r
2567     struct ESCI_tag {\r
2568         union {\r
2569             vuint32_t R;\r
2570             struct {\r
2571                 vuint32_t:3;\r
2572                 vuint32_t SBR:13;\r
2573                 vuint32_t LOOPS:1;\r
2574                   vuint32_t:1;\r
2575                 vuint32_t RSRC:1;\r
2576                 vuint32_t M:1;\r
2577                 vuint32_t WAKE:1;\r
2578                 vuint32_t ILT:1;\r
2579                 vuint32_t PE:1;\r
2580                 vuint32_t PT:1;\r
2581                 vuint32_t TIE:1;\r
2582                 vuint32_t TCIE:1;\r
2583                 vuint32_t RIE:1;\r
2584                 vuint32_t ILIE:1;\r
2585                 vuint32_t TE:1;\r
2586                 vuint32_t RE:1;\r
2587                 vuint32_t RWU:1;\r
2588                 vuint32_t SBK:1;\r
2589             } B;\r
2590         } CR1;                  /* Control Register 1 */\r
2591 \r
2592         union {\r
2593             vuint16_t R;\r
2594             struct {\r
2595                 vuint16_t MDIS:1;\r
2596                 vuint16_t FBR:1;\r
2597                 vuint16_t BSTP:1;\r
2598                 vuint16_t IEBERR:1;\r
2599                 vuint16_t RXDMA:1;\r
2600                 vuint16_t TXDMA:1;\r
2601                 vuint16_t BRK13:1;\r
2602                 vuint16_t TXDIR:1;\r
2603                 vuint16_t BESM13:1;\r
2604                 vuint16_t SBSTP:1;\r
2605                 vuint16_t RXPOL:1;\r
2606                 vuint16_t PMSK:1;\r
2607                 vuint16_t ORIE:1;\r
2608                 vuint16_t NFIE:1;\r
2609                 vuint16_t FEIE:1;\r
2610                 vuint16_t PFIE:1;\r
2611             } B;\r
2612         } CR2;                  /* Control Register 2 */\r
2613 \r
2614         union {\r
2615             vuint16_t R;\r
2616             struct {\r
2617                 vuint16_t R8:1;\r
2618                 vuint16_t T8:1;\r
2619                 vuint16_t ERR:1;\r
2620                   vuint16_t:1;\r
2621                 vuint16_t RD_11:4;\r
2622                 vuint16_t D:8;\r
2623             } B;\r
2624         } DR;                  /* Data Register */\r
2625 \r
2626         union {\r
2627             vuint32_t R;\r
2628             struct {\r
2629                 vuint32_t TDRE:1;\r
2630                 vuint32_t TC:1;\r
2631                 vuint32_t RDRF:1;\r
2632                 vuint32_t IDLE:1;\r
2633                 vuint32_t OR:1;\r
2634                 vuint32_t NF:1;\r
2635                 vuint32_t FE:1;\r
2636                 vuint32_t PF:1;\r
2637                   vuint32_t:3;\r
2638                 vuint32_t BERR:1;\r
2639                   vuint32_t:2;\r
2640                 vuint32_t TACT:1;\r
2641                 vuint32_t RAF:1;\r
2642                 vuint32_t RXRDY:1;\r
2643                 vuint32_t TXRDY:1;\r
2644                 vuint32_t LWAKE:1;\r
2645                 vuint32_t STO:1;\r
2646                 vuint32_t PBERR:1;\r
2647                 vuint32_t CERR:1;\r
2648                 vuint32_t CKERR:1;\r
2649                 vuint32_t FRC:1;\r
2650                   vuint32_t:6;\r
2651                 vuint32_t UREQ:1;\r
2652                 vuint32_t OVFL:1;\r
2653             } B;\r
2654         } SR;                   /* Status Register */\r
2655 \r
2656         union {\r
2657             vuint32_t R;\r
2658             struct {\r
2659                 vuint32_t LRES:1;\r
2660                 vuint32_t WU:1;\r
2661                 vuint32_t WUD0:1;\r
2662                 vuint32_t WUD1:1;\r
2663                   vuint32_t:2;\r
2664                 vuint32_t PRTY:1;\r
2665                 vuint32_t LIN:1;\r
2666                 vuint32_t RXIE:1;\r
2667                 vuint32_t TXIE:1;\r
2668                 vuint32_t WUIE:1;\r
2669                 vuint32_t STIE:1;\r
2670                 vuint32_t PBIE:1;\r
2671                 vuint32_t CIE:1;\r
2672                 vuint32_t CKIE:1;\r
2673                 vuint32_t FCIE:1;\r
2674                   vuint32_t:6;\r
2675                 vuint32_t UQIE:1;\r
2676                 vuint32_t OFIE:1;\r
2677                   vuint32_t:8;\r
2678             } B;\r
2679         } LCR;                  /* LIN Control Register */\r
2680 \r
2681         union {\r
2682             vuint8_t R;\r
2683         } LTR;                  /* LIN Transmit Register */\r
2684 \r
2685         vuint8_t eSCI_reserved1[3];\r
2686 \r
2687         union {\r
2688             vuint8_t R;\r
2689         } LRR;                  /* LIN Recieve Register */\r
2690 \r
2691         vuint8_t eSCI_reserved2[3];\r
2692 \r
2693         union {\r
2694             vuint16_t R;\r
2695         } LPR;                  /* LIN CRC Polynom Register  */\r
2696 \r
2697         union {\r
2698             vuint8_t R;\r
2699             struct {\r
2700                 vuint8_t:3;\r
2701                 vuint8_t SYNM:1;\r
2702                 vuint8_t EROE:1;\r
2703                 vuint8_t ERFE:1;\r
2704                 vuint8_t ERPE:1;\r
2705                 vuint8_t M2:1;\r
2706             } B;\r
2707         } CR3;                  /* Control Register 3 */\r
2708 \r
2709         vuint8_t eSCI_reserved3[5];\r
2710     };                          /* end of ESCI_tag */\r
2711 /*************************************************************************/\r
2712 /*                             MODULE : FEC                              */\r
2713 /*************************************************************************/\r
2714     struct FEC_tag {\r
2715 \r
2716         uint32_t fec_reserved_start;\r
2717 \r
2718         union {\r
2719             vuint32_t R;\r
2720             struct {\r
2721                 vuint32_t HBERR:1;\r
2722                 vuint32_t BABR:1;\r
2723                 vuint32_t BABT:1;\r
2724                 vuint32_t GRA:1;\r
2725                 vuint32_t TXF:1;\r
2726                 vuint32_t TXB:1;\r
2727                 vuint32_t RXF:1;\r
2728                 vuint32_t RXB:1;\r
2729                 vuint32_t MII:1;\r
2730                 vuint32_t EBERR:1;\r
2731                 vuint32_t LC:1;\r
2732                 vuint32_t RL:1;\r
2733                 vuint32_t UN:1;\r
2734                   vuint32_t:19;\r
2735             } B;\r
2736         } EIR;                  /*  Interrupt Event Register */\r
2737 \r
2738         union {\r
2739             vuint32_t R;\r
2740             struct {\r
2741                 vuint32_t HBERR:1;\r
2742                 vuint32_t BABR:1;\r
2743                 vuint32_t BABT:1;\r
2744                 vuint32_t GRA:1;\r
2745                 vuint32_t TXF:1;\r
2746                 vuint32_t TXB:1;\r
2747                 vuint32_t RXF:1;\r
2748                 vuint32_t RXB:1;\r
2749                 vuint32_t MII:1;\r
2750                 vuint32_t EBERR:1;\r
2751                 vuint32_t LC:1;\r
2752                 vuint32_t RL:1;\r
2753                 vuint32_t UN:1;\r
2754                   vuint32_t:19;\r
2755             } B;\r
2756         } EIMR;                 /*  Interrupt Mask Register  */\r
2757 \r
2758         uint32_t fec_reserved_eimr;\r
2759 \r
2760         union {\r
2761             vuint32_t R;\r
2762             struct {\r
2763                 vuint32_t:7;\r
2764                 vuint32_t R_DES_ACTIVE:1;\r
2765                   vuint32_t:24;\r
2766             } B;\r
2767         } RDAR;                 /*  Receive Descriptor Active Register  */\r
2768 \r
2769         union {\r
2770             vuint32_t R;\r
2771             struct {\r
2772                 vuint32_t:7;\r
2773                 vuint32_t X_DES_ACTIVE:1;\r
2774                   vuint32_t:24;\r
2775             } B;\r
2776         } TDAR;                 /*  Transmit Descriptor Active Register  */\r
2777 \r
2778         uint32_t fec_reserved_tdar[3];\r
2779 \r
2780         union {\r
2781             vuint32_t R;\r
2782             struct {\r
2783                 vuint32_t:30;\r
2784                 vuint32_t ETHER_EN:1;\r
2785                 vuint32_t RESET:1;\r
2786             } B;\r
2787         } ECR;                  /*  Ethernet Control Register  */\r
2788 \r
2789         uint32_t fec_reserved_ecr[6];\r
2790 \r
2791         union {\r
2792             vuint32_t R;\r
2793             struct {\r
2794                 vuint32_t ST:2;\r
2795                 vuint32_t OP:2;\r
2796                 vuint32_t PA:5;\r
2797                 vuint32_t RA:5;\r
2798                 vuint32_t TA:2;\r
2799                 vuint32_t DATA:16;\r
2800             } B;\r
2801         } MMFR;                 /* MII Data Register */\r
2802 \r
2803         union {\r
2804             vuint32_t R;\r
2805             struct {\r
2806                 vuint32_t:24;\r
2807                 vuint32_t DIS_PREAMBLE:1;\r
2808                 vuint32_t MII_SPEED:6;\r
2809                   vuint32_t:1;\r
2810             } B;\r
2811         } MSCR;                 /* MII Speed Control Register */\r
2812 \r
2813         uint32_t fec_reserved_mscr[7];\r
2814 \r
2815         union {\r
2816             vuint32_t R;\r
2817             struct {\r
2818                 vuint32_t MIB_DISABLE:1;\r
2819                 vuint32_t MIB_IDLE:1;\r
2820                   vuint32_t:30;\r
2821             } B;\r
2822         } MIBC;                 /* MIB Control Register */\r
2823 \r
2824         uint32_t fec_reserved_mibc[7];\r
2825 \r
2826         union {\r
2827             vuint32_t R;\r
2828             struct {\r
2829                 vuint32_t:5;\r
2830                 vuint32_t MAX_FL:11;\r
2831                   vuint32_t:10;\r
2832                 vuint32_t FCE:1;\r
2833                 vuint32_t BC_REJ:1;\r
2834                 vuint32_t PROM:1;\r
2835                 vuint32_t MII_MODE:1;\r
2836                 vuint32_t DRT:1;\r
2837                 vuint32_t LOOP:1;\r
2838             } B;\r
2839         } RCR;                  /* Receive Control Register */\r
2840 \r
2841         uint32_t fec_reserved_rcr[15];\r
2842 \r
2843         union {\r
2844             vuint32_t R;\r
2845             struct {\r
2846                 vuint32_t:27;\r
2847                 vuint32_t RFC_PAUSE:1;\r
2848                 vuint32_t TFC_PAUSE:1;\r
2849                 vuint32_t FDEN:1;\r
2850                 vuint32_t HBC:1;\r
2851                 vuint32_t GTS:1;\r
2852             } B;\r
2853         } TCR;                  /* Transmit Control Register */\r
2854 \r
2855         uint32_t fec_reserved_tcr[7];\r
2856 \r
2857         union {\r
2858             vuint32_t R;\r
2859             struct {\r
2860                 vuint32_t PADDR1:32;\r
2861             } B;\r
2862         } PALR;                 /* Physical Address Low Register */\r
2863 \r
2864         union {\r
2865             vuint32_t R;\r
2866             struct {\r
2867                 vuint32_t PADDR2:16;\r
2868                 vuint32_t TYPE:16;\r
2869             } B;\r
2870         } PAUR;                 /* Physical Address High + Type Register */\r
2871 \r
2872         union {\r
2873             vuint32_t R;\r
2874             struct {\r
2875                 vuint32_t OPCODE:16;\r
2876                 vuint32_t PAUSE_DUR:16;\r
2877             } B;\r
2878         } OPD;                  /* Opcode/Pause Duration Register */\r
2879 \r
2880         uint32_t fec_reserved_opd[10];\r
2881 \r
2882         union {\r
2883             vuint32_t R;\r
2884             struct {\r
2885                 vuint32_t IADDR1:32;\r
2886             } B;\r
2887         } IAUR;                 /* Descriptor Individual Upper Address Register */\r
2888 \r
2889         union {\r
2890             vuint32_t R;\r
2891             struct {\r
2892                 vuint32_t IADDR2:32;\r
2893             } B;\r
2894         } IALR;                 /* Descriptor Individual Lower Address Register */\r
2895 \r
2896         union {\r
2897             vuint32_t R;\r
2898             struct {\r
2899                 vuint32_t GADDR1:32;\r
2900             } B;\r
2901         } GAUR;                 /* Descriptor Group Upper Address Register */\r
2902 \r
2903         union {\r
2904             vuint32_t R;\r
2905             struct {\r
2906                 vuint32_t GADDR2:32;\r
2907             } B;\r
2908         } GALR;                 /* Descriptor Group Lower Address Register */\r
2909 \r
2910         uint32_t fec_reserved_galr[7];\r
2911 \r
2912         union {\r
2913             vuint32_t R;\r
2914             struct {\r
2915                 vuint32_t:30;\r
2916                 vuint32_t X_WMRK:2;\r
2917             } B;\r
2918         } TFWR;                 /* FIFO Transmit FIFO Watermark Register */\r
2919 \r
2920         uint32_t fec_reserved_tfwr;\r
2921 \r
2922         union {\r
2923             vuint32_t R;\r
2924             struct {\r
2925                 vuint32_t:22;\r
2926                 vuint32_t R_BOUND:8;\r
2927                   vuint32_t:2;\r
2928             } B;\r
2929         } FRBR;                 /* FIFO Receive Bound Register */\r
2930 \r
2931         union {\r
2932             vuint32_t R;\r
2933             struct {\r
2934                 vuint32_t:22;\r
2935                 vuint32_t R_FSTART:8;\r
2936                   vuint32_t:2;\r
2937             } B;\r
2938         } FRSR;                 /* FIFO Receive Start Register */\r
2939 \r
2940         uint32_t fec_reserved_frsr[11];\r
2941 \r
2942         union {\r
2943             vuint32_t R;\r
2944             struct {\r
2945                 vuint32_t R_DES_START:30;\r
2946                   vuint32_t:2;\r
2947             } B;\r
2948         } ERDSR;                /* Receive Descriptor Ring Start Register */\r
2949 \r
2950         union {\r
2951             vuint32_t R;\r
2952             struct {\r
2953                 vuint32_t X_DES_START:30;\r
2954                   vuint32_t:2;\r
2955             } B;\r
2956         } ETDSR;                /* Transmit Descriptor Ring Start Register */\r
2957 \r
2958         union {\r
2959             vuint32_t R;\r
2960             struct {\r
2961                 vuint32_t:21;\r
2962                 vuint32_t R_BUF_SIZE:7;\r
2963                   vuint32_t:4;\r
2964             } B;\r
2965         } EMRBR;                /* Receive Buffer Size Register */\r
2966 \r
2967         uint32_t fec_reserved_emrbr[29];\r
2968 \r
2969         union {\r
2970             vuint32_t R;\r
2971         } RMON_T_DROP;          /* Count of frames not counted correctly */\r
2972 \r
2973         union {\r
2974             vuint32_t R;\r
2975         } RMON_T_PACKETS;       /* RMON Tx packet count */\r
2976 \r
2977         union {\r
2978             vuint32_t R;\r
2979         } RMON_T_BC_PKT;        /* RMON Tx Broadcast Packets */\r
2980 \r
2981         union {\r
2982             vuint32_t R;\r
2983         } RMON_T_MC_PKT;        /* RMON Tx Multicast Packets */\r
2984 \r
2985         union {\r
2986             vuint32_t R;\r
2987         } RMON_T_CRC_ALIGN;     /* RMON Tx Packets w CRC/Align error */\r
2988 \r
2989         union {\r
2990             vuint32_t R;\r
2991         } RMON_T_UNDERSIZE;     /* RMON Tx Packets < 64 bytes, good crc */\r
2992 \r
2993         union {\r
2994             vuint32_t R;\r
2995         } RMON_T_OVERSIZE;      /* RMON Tx Packets > MAX_FL bytes, good crc */\r
2996 \r
2997         union {\r
2998             vuint32_t R;\r
2999         } RMON_T_FRAG;          /* RMON Tx Packets < 64 bytes, bad crc */\r
3000 \r
3001         union {\r
3002             vuint32_t R;\r
3003         } RMON_T_JAB;           /* RMON Tx Packets > MAX_FL bytes, bad crc */\r
3004 \r
3005         union {\r
3006             vuint32_t R;\r
3007         } RMON_T_COL;           /* RMON Tx collision count */\r
3008 \r
3009         union {\r
3010             vuint32_t R;\r
3011         } RMON_T_P64;           /* RMON Tx 64 byte packets */\r
3012 \r
3013         union {\r
3014             vuint32_t R;\r
3015         } RMON_T_P65TO127;      /* RMON Tx 65 to 127 byte packets */\r
3016 \r
3017         union {\r
3018             vuint32_t R;\r
3019         } RMON_T_P128TO255;     /* RMON Tx 128 to 255 byte packets */\r
3020 \r
3021         union {\r
3022             vuint32_t R;\r
3023         } RMON_T_P256TO511;     /* RMON Tx 256 to 511 byte packets */\r
3024 \r
3025         union {\r
3026             vuint32_t R;\r
3027         } RMON_T_P512TO1023;    /* RMON Tx 512 to 1023 byte packets */\r
3028 \r
3029         union {\r
3030             vuint32_t R;\r
3031         } RMON_T_P1024TO2047;   /* RMON Tx 1024 to 2047 byte packets */\r
3032 \r
3033         union {\r
3034             vuint32_t R;\r
3035         } RMON_T_P_GTE2048;     /* RMON Tx packets w > 2048 bytes */\r
3036 \r
3037         union {\r
3038             vuint32_t R;\r
3039         } RMON_T_OCTETS;        /* RMON Tx Octets */\r
3040 \r
3041         union {\r
3042             vuint32_t R;\r
3043         } IEEE_T_DROP;          /* Count of frames not counted correctly */\r
3044 \r
3045         union {\r
3046             vuint32_t R;\r
3047         } IEEE_T_FRAME_OK;      /* Frames Transmitted OK */\r
3048 \r
3049         union {\r
3050             vuint32_t R;\r
3051         } IEEE_T_1COL;          /* Frames Transmitted with Single Collision */\r
3052 \r
3053         union {\r
3054             vuint32_t R;\r
3055         } IEEE_T_MCOL;          /* Frames Transmitted with Multiple Collisions */\r
3056 \r
3057         union {\r
3058             vuint32_t R;\r
3059         } IEEE_T_DEF;           /* Frames Transmitted after Deferral Delay */\r
3060 \r
3061         union {\r
3062             vuint32_t R;\r
3063         } IEEE_T_LCOL;          /* Frames Transmitted with Late Collision */\r
3064 \r
3065         union {\r
3066             vuint32_t R;\r
3067         } IEEE_T_EXCOL;         /* Frames Transmitted with Excessive Collisions */\r
3068 \r
3069         union {\r
3070             vuint32_t R;\r
3071         } IEEE_T_MACERR;        /* Frames Transmitted with Tx FIFO Underrun */\r
3072 \r
3073         union {\r
3074             vuint32_t R;\r
3075         } IEEE_T_CSERR;         /* Frames Transmitted with Carrier Sense Error */\r
3076 \r
3077         union {\r
3078             vuint32_t R;\r
3079         } IEEE_T_SQE;           /* Frames Transmitted with SQE Error */\r
3080 \r
3081         union {\r
3082             vuint32_t R;\r
3083         } IEEE_T_FDXFC;         /* Flow Control Pause frames transmitted */\r
3084 \r
3085         union {\r
3086             vuint32_t R;\r
3087         } IEEE_T_OCTETS_OK;     /* Octet count for Frames Transmitted w/o Error */\r
3088 \r
3089         uint32_t fec_reserved_rmon_t_octets_ok[2];\r
3090 \r
3091         union {\r
3092             vuint32_t R;\r
3093         } RMON_R_DROP;          /*  Count of frames not counted correctly  */\r
3094 \r
3095         union {\r
3096             vuint32_t R;\r
3097         } RMON_R_PACKETS;       /* RMON Rx packet count */\r
3098 \r
3099         union {\r
3100             vuint32_t R;\r
3101         } RMON_R_BC_PKT;        /* RMON Rx Broadcast Packets */\r
3102 \r
3103         union {\r
3104             vuint32_t R;\r
3105         } RMON_R_MC_PKT;        /* RMON Rx Multicast Packets */\r
3106 \r
3107         union {\r
3108             vuint32_t R;\r
3109         } RMON_R_CRC_ALIGN;     /* RMON Rx Packets w CRC/Align error */\r
3110 \r
3111         union {\r
3112             vuint32_t R;\r
3113         } RMON_R_UNDERSIZE;     /* RMON Rx Packets < 64 bytes, good crc */\r
3114 \r
3115         union {\r
3116             vuint32_t R;\r
3117         } RMON_R_OVERSIZE;      /* RMON Rx Packets > MAX_FL bytes, good crc */\r
3118 \r
3119         union {\r
3120             vuint32_t R;\r
3121         } RMON_R_FRAG;          /* RMON Rx Packets < 64 bytes, bad crc */\r
3122 \r
3123         union {\r
3124             vuint32_t R;\r
3125         } RMON_R_JAB;           /* RMON Rx Packets > MAX_FL bytes, bad crc */\r
3126 \r
3127         uint32_t fec_reserved_rmon_r_jab;\r
3128 \r
3129         union {\r
3130             vuint32_t R;\r
3131         } RMON_R_P64;           /* RMON Rx 64 byte packets */\r
3132 \r
3133         union {\r
3134             vuint32_t R;\r
3135         } RMON_R_P65TO127;      /* RMON Rx 65 to 127 byte packets */\r
3136 \r
3137         union {\r
3138             vuint32_t R;\r
3139         } RMON_R_P128TO255;     /* RMON Rx 128 to 255 byte packets */\r
3140 \r
3141         union {\r
3142             vuint32_t R;\r
3143         } RMON_R_P256TO511;     /* RMON Rx 256 to 511 byte packets */\r
3144 \r
3145         union {\r
3146             vuint32_t R;\r
3147         } RMON_R_P512TO1023;    /* RMON Rx 512 to 1023 byte packets */\r
3148 \r
3149         union {\r
3150             vuint32_t R;\r
3151         } RMON_R_P1024TO2047;   /* RMON Rx 1024 to 2047 byte packets */\r
3152 \r
3153         union {\r
3154             vuint32_t R;\r
3155         } RMON_R_P_GTE2048;     /* RMON Rx packets w > 2048 bytes */\r
3156 \r
3157         union {\r
3158             vuint32_t R;\r
3159         } RMON_R_OCTETS;        /* RMON Rx Octets */\r
3160 \r
3161         union {\r
3162             vuint32_t R;\r
3163         } IEEE_R_DROP;          /* Count of frames not counted correctly */\r
3164 \r
3165         union {\r
3166             vuint32_t R;\r
3167         } IEEE_R_FRAME_OK;      /* Frames Received OK */\r
3168 \r
3169         union {\r
3170             vuint32_t R;\r
3171         } IEEE_R_CRC;           /* Frames Received with CRC Error */\r
3172 \r
3173         union {\r
3174             vuint32_t R;\r
3175         } IEEE_R_ALIGN;         /* Frames Received with Alignment Error */\r
3176 \r
3177         union {\r
3178             vuint32_t R;\r
3179         } IEEE_R_MACERR;        /* Receive Fifo Overflow count */\r
3180 \r
3181         union {\r
3182             vuint32_t R;\r
3183         } IEEE_R_FDXFC;         /* Flow Control Pause frames received */\r
3184 \r
3185         union {\r
3186             vuint32_t R;\r
3187         } IEEE_R_OCTETS_OK;     /* Octet count for Frames Rcvd w/o Error */\r
3188 \r
3189     };                          /* end of FEC_tag */\r
3190 /*************************************************************************/\r
3191 /*                            MODULE : FLASH                             */\r
3192 /*************************************************************************/\r
3193     struct FLASH_tag {\r
3194         union {\r
3195             vuint32_t R;\r
3196             struct {\r
3197                 vuint32_t:5;\r
3198                 vuint32_t SIZE:3;\r
3199                   vuint32_t:1;\r
3200                 vuint32_t LAS:3;\r
3201                   vuint32_t:3;\r
3202                 vuint32_t MAS:1;\r
3203                 vuint32_t EER:1;\r
3204                 vuint32_t RWE:1;\r
3205                 vuint32_t SBC:1;\r
3206                   vuint32_t:1;\r
3207                 vuint32_t PEAS:1;\r
3208                 vuint32_t DONE:1;\r
3209                 vuint32_t PEG:1;\r
3210                   vuint32_t:4;\r
3211                 vuint32_t PGM:1;\r
3212                 vuint32_t PSUS:1;\r
3213                 vuint32_t ERS:1;\r
3214                 vuint32_t ESUS:1;\r
3215                 vuint32_t EHV:1;\r
3216             } B;\r
3217         } MCR;                  /* Module Configuration Register */\r
3218 \r
3219         union {\r
3220             vuint32_t R;\r
3221             struct {\r
3222                 vuint32_t LME:1;\r
3223                   vuint32_t:10;\r
3224                 vuint32_t SLOCK:1;\r
3225                   vuint32_t:2;\r
3226                 vuint32_t MLOCK:2;\r
3227                   vuint32_t:6;\r
3228                 vuint32_t LLOCK:10;\r
3229             } B;\r
3230         } LMLR;                  /* Low/Mid-address space block locking Register */\r
3231 \r
3232         union {\r
3233             vuint32_t R;\r
3234             struct {\r
3235                 vuint32_t HBE:1;\r
3236                   vuint32_t:25;\r
3237                 vuint32_t HBLOCK:6;\r
3238             } B;\r
3239         } HLR;                  /* High-address space block locking Register */\r
3240 \r
3241         union {\r
3242             vuint32_t R;\r
3243             struct {\r
3244                 vuint32_t SLE:1;\r
3245                   vuint32_t:10;\r
3246                 vuint32_t SSLOCK:1;\r
3247                   vuint32_t:2;\r
3248                 vuint32_t SMLOCK:2;\r
3249                   vuint32_t:6;\r
3250                 vuint32_t SLLOCK:10;\r
3251             } B;\r
3252         } SLMLR;                  /* Secondary low/mid-address space block locking Register */\r
3253 \r
3254         union {\r
3255             vuint32_t R;\r
3256             struct {\r
3257                 vuint32_t:14;\r
3258                 vuint32_t MSEL:2;\r
3259                   vuint32_t:6;\r
3260                 vuint32_t LSEL:10;\r
3261             } B;\r
3262         } LMS;                  /* Low/Mid-address space block locking Register */\r
3263 \r
3264         union {\r
3265             vuint32_t R;\r
3266             struct {\r
3267                 vuint32_t:26;\r
3268                 vuint32_t HBSEL:6;\r
3269             } B;\r
3270         } HBS;                  /* High-address space block locking Register */\r
3271 \r
3272         union {\r
3273             vuint32_t R;\r
3274             struct {\r
3275                 vuint32_t SAD:1;\r
3276                   vuint32_t:10;\r
3277                 vuint32_t ADDR:18;\r
3278                   vuint32_t:3;\r
3279             } B;\r
3280         } ADR;                  /* Address Register */\r
3281 \r
3282         union {\r
3283             vuint32_t R;\r
3284             struct {\r
3285                 vuint32_t LBCFG:4;\r
3286                 vuint32_t ARB:1;\r
3287                 vuint32_t PRI:1;\r
3288                   vuint32_t:1;\r
3289                 vuint32_t M8PFE:1;\r
3290                   vuint32_t:1;\r
3291                 vuint32_t M6PFE:1;\r
3292                 vuint32_t M5PFE:1;\r
3293                 vuint32_t M4PFE:1;\r
3294                   vuint32_t:1;\r
3295                 vuint32_t M2PFE:1;\r
3296                 vuint32_t M1PFE:1;\r
3297                 vuint32_t M0PFE:1;\r
3298                 vuint32_t APC:3;\r
3299                 vuint32_t WWSC:2;\r
3300                 vuint32_t RWSC:3;\r
3301                   vuint32_t:1;\r
3302                 vuint32_t DPFEN:1;\r
3303                   vuint32_t:1;\r
3304                 vuint32_t IPFEN:1;\r
3305                   vuint32_t:1;\r
3306                 vuint32_t PFLIM:2;\r
3307                 vuint32_t BFEN:1;\r
3308             } B;\r
3309         } PFCRP0;               /* Platform Flash Configuration Register for Port 0 */\r
3310 \r
3311         union {\r
3312             vuint32_t R;\r
3313             struct {\r
3314                 vuint32_t LBCFG:4;\r
3315                   vuint32_t:3;\r
3316                 vuint32_t M8PFE:1;\r
3317                   vuint32_t:1;\r
3318                 vuint32_t M6PFE:1;\r
3319                 vuint32_t M5PFE:1;\r
3320                 vuint32_t M4PFE:1;\r
3321                   vuint32_t:1;\r
3322                 vuint32_t M2PFE:1;\r
3323                 vuint32_t M1PFE:1;\r
3324                 vuint32_t M0PFE:1;\r
3325                 vuint32_t APC:3;\r
3326                 vuint32_t WWSC:2;\r
3327                 vuint32_t RWSC:3;\r
3328                   vuint32_t:1;\r
3329                 vuint32_t DPFEN:1;\r
3330                   vuint32_t:1;\r
3331                 vuint32_t IPFEN:1;\r
3332                   vuint32_t:1;\r
3333                 vuint32_t PFLIM:2;\r
3334                 vuint32_t BFEN:1;\r
3335             } B;\r
3336         } PFCRP1;               /* Platform Flash Configuration Register for Port 1 */\r
3337 \r
3338         union {\r
3339             vuint32_t R;\r
3340             struct {\r
3341                 vuint32_t M7AP:2;\r
3342                 vuint32_t M6AP:2;\r
3343                 vuint32_t M5AP:2;\r
3344                 vuint32_t M4AP:2;\r
3345                 vuint32_t M3AP:2;\r
3346                 vuint32_t M2AP:2;\r
3347                 vuint32_t M1AP:2;\r
3348                 vuint32_t M0AP:2;\r
3349                 vuint32_t SHSACC:4;\r
3350                   vuint32_t:4;\r
3351                 vuint32_t SHDACC:4;\r
3352                   vuint32_t:4;\r
3353             } B;\r
3354         } PFAPR;                /* Platform Flash access protection Register */\r
3355 \r
3356         union {\r
3357             vuint32_t R;\r
3358             struct {\r
3359                 vuint32_t:1;\r
3360                 vuint32_t SACC:31;\r
3361             } B;\r
3362         } PFSACC;               /* PFlash Supervisor Access Control Register */\r
3363 \r
3364         union {\r
3365             vuint32_t R;\r
3366             struct {\r
3367                 vuint32_t:1;\r
3368                 vuint32_t DACC:31;\r
3369             } B;\r
3370         } PFDACC;               /* PFlash Data Access Control Register */\r
3371 \r
3372         uint32_t FLASH_reserved1[3];\r
3373 \r
3374         union {\r
3375             vuint32_t R;\r
3376             struct {\r
3377                 vuint32_t UTE:1;\r
3378                 vuint32_t SCBE:1;\r
3379                   vuint32_t:6;\r
3380                 vuint32_t DSI:8;\r
3381                   vuint32_t:10;\r
3382                 vuint32_t MRE:1;\r
3383                 vuint32_t MRV:1;\r
3384                 vuint32_t EIE:1;\r
3385                 vuint32_t AIS:1;\r
3386                 vuint32_t AIE:1;\r
3387                 vuint32_t AID:1;\r
3388             } B;\r
3389         } UT0;                  /* User Test Register 0 */\r
3390 \r
3391         union {\r
3392             vuint32_t R;\r
3393             struct {\r
3394                 vuint32_t DAI:32;\r
3395             } B;\r
3396         } UT1;                  /* User Test Register 1 */\r
3397 \r
3398         union {\r
3399             vuint32_t R;\r
3400             struct {\r
3401                 vuint32_t DAI:32;\r
3402             } B;\r
3403         } UT2;                  /* User Test Register 2 */\r
3404 \r
3405         union {\r
3406             vuint32_t R;\r
3407             struct {\r
3408                 vuint32_t MISR:32;\r
3409             } B;\r
3410         } MISR[5];              /* Multiple Input Signature Register */\r
3411 \r
3412     };                          /* end of FLASH_tag */\r
3413 \r
3414 #include "ip_flexcan.h"\r
3415 \r
3416 /**************************************************************************/\r
3417 /*                          MODULE : FlexRay                              */\r
3418 /**************************************************************************/\r
3419 \r
3420     typedef union uMVR {\r
3421         vuint16_t R;\r
3422         struct {\r
3423             vuint16_t CHIVER:8; /* CHI Version Number */\r
3424             vuint16_t PEVER:8;  /* PE Version Number */\r
3425         } B;\r
3426     } MVR_t;\r
3427 \r
3428     typedef union uMCR {\r
3429         vuint16_t R;\r
3430         struct {\r
3431             vuint16_t MEN:1;    /* module enable */\r
3432               vuint16_t:1;\r
3433             vuint16_t SCMD:1;   /* single channel mode */\r
3434             vuint16_t CHB:1;    /* channel B enable */\r
3435             vuint16_t CHA:1;    /* channel A enable */\r
3436             vuint16_t SFFE:1;   /* synchronization frame filter enable */\r
3437               vuint16_t:5;\r
3438             vuint16_t CLKSEL:1; /* protocol engine clock source select */\r
3439             vuint16_t PRESCALE:3;       /* protocol engine clock prescaler */\r
3440               vuint16_t:1;\r
3441         } B;\r
3442     } MCR_t;\r
3443     typedef union uSTBSCR {\r
3444         vuint16_t R;\r
3445         struct {\r
3446             vuint16_t WMD:1;    /* write mode */\r
3447             vuint16_t STBSSEL:7;        /* strobe signal select */\r
3448               vuint16_t:3;\r
3449             vuint16_t ENB:1;    /* strobe signal enable */\r
3450               vuint16_t:2;\r
3451             vuint16_t STBPSEL:2;        /* strobe port select */\r
3452         } B;\r
3453     } STBSCR_t;\r
3454     typedef union uMBDSR {\r
3455         vuint16_t R;\r
3456         struct {\r
3457             vuint16_t:1;\r
3458             vuint16_t MBSEG2DS:7;       /* message buffer segment 2 data size */\r
3459               vuint16_t:1;\r
3460             vuint16_t MBSEG1DS:7;       /* message buffer segment 1 data size */\r
3461         } B;\r
3462     } MBDSR_t;\r
3463 \r
3464     typedef union uMBSSUTR {\r
3465         vuint16_t R;\r
3466         struct {\r
3467 \r
3468             vuint16_t:2;\r
3469             vuint16_t LAST_MB_SEG1:6;   /* last message buffer control register for message buffer segment 1 */\r
3470               vuint16_t:2;\r
3471             vuint16_t LAST_MB_UTIL:6;   /* last message buffer utilized */\r
3472         } B;\r
3473     } MBSSUTR_t;\r
3474 \r
3475     typedef union uPOCR {\r
3476         vuint16_t R;\r
3477         vuint8_t byte[2];\r
3478         struct {\r
3479             vuint16_t WME:1;    /* write mode external correction command */\r
3480               vuint16_t:3;\r
3481             vuint16_t EOC_AP:2; /* external offset correction application */\r
3482             vuint16_t ERC_AP:2; /* external rate correction application */\r
3483             vuint16_t BSY:1;    /* command write busy / write mode command */\r
3484               vuint16_t:3;\r
3485             vuint16_t POCCMD:4; /* protocol command */\r
3486         } B;\r
3487     } POCR_t;\r
3488 /* protocol commands */\r
3489     typedef union uGIFER {\r
3490         vuint16_t R;\r
3491         struct {\r
3492             vuint16_t MIF:1;    /* module interrupt flag */\r
3493             vuint16_t PRIF:1;   /* protocol interrupt flag */\r
3494             vuint16_t CHIF:1;   /* CHI interrupt flag */\r
3495             vuint16_t WKUPIF:1; /* wakeup interrupt flag */\r
3496             vuint16_t FNEBIF:1; /* receive FIFO channel B not empty interrupt flag */\r
3497             vuint16_t FNEAIF:1; /* receive FIFO channel A not empty interrupt flag */\r
3498             vuint16_t RBIF:1;   /* receive message buffer interrupt flag */\r
3499             vuint16_t TBIF:1;   /* transmit buffer interrupt flag */\r
3500             vuint16_t MIE:1;    /* module interrupt enable */\r
3501             vuint16_t PRIE:1;   /* protocol interrupt enable */\r
3502             vuint16_t CHIE:1;   /* CHI interrupt enable */\r
3503             vuint16_t WKUPIE:1; /* wakeup interrupt enable */\r
3504             vuint16_t FNEBIE:1; /* receive FIFO channel B not empty interrupt enable */\r
3505             vuint16_t FNEAIE:1; /* receive FIFO channel A not empty interrupt enable */\r
3506             vuint16_t RBIE:1;   /* receive message buffer interrupt enable */\r
3507             vuint16_t TBIE:1;   /* transmit buffer interrupt enable */\r
3508         } B;\r
3509     } GIFER_t;\r
3510     typedef union uPIFR0 {\r
3511         vuint16_t R;\r
3512         struct {\r
3513             vuint16_t FATLIF:1; /* fatal protocol error interrupt flag */\r
3514             vuint16_t INTLIF:1; /* internal protocol error interrupt flag */\r
3515             vuint16_t ILCFIF:1; /* illegal protocol configuration flag */\r
3516             vuint16_t CSAIF:1;  /* cold start abort interrupt flag */\r
3517             vuint16_t MRCIF:1;  /* missing rate correctio interrupt flag */\r
3518             vuint16_t MOCIF:1;  /* missing offset correctio interrupt flag */\r
3519             vuint16_t CCLIF:1;  /* clock correction limit reached interrupt flag */\r
3520             vuint16_t MXSIF:1;  /* max sync frames detected interrupt flag */\r
3521             vuint16_t MTXIF:1;  /* media access test symbol received flag */\r
3522             vuint16_t LTXBIF:1; /* pdLatestTx violation on channel B interrupt flag */\r
3523             vuint16_t LTXAIF:1; /* pdLatestTx violation on channel A interrupt flag */\r
3524             vuint16_t TBVBIF:1; /* Transmission across boundary on channel B Interrupt Flag */\r
3525             vuint16_t TBVAIF:1; /* Transmission across boundary on channel A Interrupt Flag */\r
3526             vuint16_t TI2IF:1;  /* timer 2 expired interrupt flag */\r
3527             vuint16_t TI1IF:1;  /* timer 1 expired interrupt flag */\r
3528             vuint16_t CYSIF:1;  /* cycle start interrupt flag */\r
3529         } B;\r
3530     } PIFR0_t;\r
3531     typedef union uPIFR1 {\r
3532         vuint16_t R;\r
3533         struct {\r
3534             vuint16_t EMCIF:1;  /* error mode changed interrupt flag */\r
3535             vuint16_t IPCIF:1;  /* illegal protocol command interrupt flag */\r
3536             vuint16_t PECFIF:1; /* protocol engine communication failure interrupt flag */\r
3537             vuint16_t PSCIF:1;  /* Protocol State Changed Interrupt Flag */\r
3538             vuint16_t SSI3IF:1; /* slot status counter incremented interrupt flag */\r
3539             vuint16_t SSI2IF:1; /* slot status counter incremented interrupt flag */\r
3540             vuint16_t SSI1IF:1; /* slot status counter incremented interrupt flag */\r
3541             vuint16_t SSI0IF:1; /* slot status counter incremented interrupt flag */\r
3542               vuint16_t:2;\r
3543             vuint16_t EVTIF:1;  /* even cycle table written interrupt flag */\r
3544             vuint16_t ODTIF:1;  /* odd cycle table written interrupt flag */\r
3545               vuint16_t:4;\r
3546         } B;\r
3547     } PIFR1_t;\r
3548     typedef union uPIER0 {\r
3549         vuint16_t R;\r
3550         struct {\r
3551             vuint16_t FATLIE:1; /* fatal protocol error interrupt enable */\r
3552             vuint16_t INTLIE:1; /* internal protocol error interrupt interrupt enable  */\r
3553             vuint16_t ILCFIE:1; /* illegal protocol configuration interrupt enable */\r
3554             vuint16_t CSAIE:1;  /* cold start abort interrupt enable */\r
3555             vuint16_t MRCIE:1;  /* missing rate correctio interrupt enable */\r
3556             vuint16_t MOCIE:1;  /* missing offset correctio interrupt enable */\r
3557             vuint16_t CCLIE:1;  /* clock correction limit reached interrupt enable */\r
3558             vuint16_t MXSIE:1;  /* max sync frames detected interrupt enable */\r
3559             vuint16_t MTXIE:1;  /* media access test symbol received interrupt enable */\r
3560             vuint16_t LTXBIE:1; /* pdLatestTx violation on channel B interrupt enable */\r
3561             vuint16_t LTXAIE:1; /* pdLatestTx violation on channel A interrupt enable */\r
3562             vuint16_t TBVBIE:1; /* Transmission across boundary on channel B Interrupt enable */\r
3563             vuint16_t TBVAIE:1; /* Transmission across boundary on channel A Interrupt enable */\r
3564             vuint16_t TI2IE:1;  /* timer 2 expired interrupt enable */\r
3565             vuint16_t TI1IE:1;  /* timer 1 expired interrupt enable */\r
3566             vuint16_t CYSIE:1;  /* cycle start interrupt enable */\r
3567         } B;\r
3568     } PIER0_t;\r
3569     typedef union uPIER1 {\r
3570         vuint16_t R;\r
3571         struct {\r
3572             vuint16_t EMCIE:1;  /* error mode changed interrupt enable */\r
3573             vuint16_t IPCIE:1;  /* illegal protocol command interrupt enable */\r
3574             vuint16_t PECFIE:1; /* protocol engine communication failure interrupt enable */\r
3575             vuint16_t PSCIE:1;  /* Protocol State Changed Interrupt enable */\r
3576             vuint16_t SSI3IE:1; /* slot status counter incremented interrupt enable */\r
3577             vuint16_t SSI2IE:1; /* slot status counter incremented interrupt enable */\r
3578             vuint16_t SSI1IE:1; /* slot status counter incremented interrupt enable */\r
3579             vuint16_t SSI0IE:1; /* slot status counter incremented interrupt enable */\r
3580               vuint16_t:2;\r
3581             vuint16_t EVTIE:1;  /* even cycle table written interrupt enable */\r
3582             vuint16_t ODTIE:1;  /* odd cycle table written interrupt enable */\r
3583               vuint16_t:4;\r
3584         } B;\r
3585     } PIER1_t;\r
3586     typedef union uCHIERFR {\r
3587         vuint16_t R;\r
3588         struct {\r
3589             vuint16_t FRLBEF:1; /* flame lost channel B error flag */\r
3590             vuint16_t FRLAEF:1; /* frame lost channel A error flag */\r
3591             vuint16_t PCMIEF:1; /* command ignored error flag */\r
3592             vuint16_t FOVBEF:1; /* receive FIFO overrun channel B error flag */\r
3593             vuint16_t FOVAEF:1; /* receive FIFO overrun channel A error flag */\r
3594             vuint16_t MSBEF:1;  /* message buffer search error flag */\r
3595             vuint16_t MBUEF:1;  /* message buffer utilization error flag */\r
3596             vuint16_t LCKEF:1;  /* lock error flag */\r
3597             vuint16_t DBLEF:1;  /* double transmit message buffer lock error flag */\r
3598             vuint16_t SBCFEF:1; /* system bus communication failure error flag */\r
3599             vuint16_t FIDEF:1;  /* frame ID error flag */\r
3600             vuint16_t DPLEF:1;  /* dynamic payload length error flag */\r
3601             vuint16_t SPLEF:1;  /* static payload length error flag */\r
3602             vuint16_t NMLEF:1;  /* network management length error flag */\r
3603             vuint16_t NMFEF:1;  /* network management frame error flag */\r
3604             vuint16_t ILSAEF:1; /* illegal access error flag */\r
3605         } B;\r
3606     } CHIERFR_t;\r
3607     typedef union uMBIVEC {\r
3608         vuint16_t R;\r
3609         struct {\r
3610 \r
3611             vuint16_t:2;\r
3612             vuint16_t TBIVEC:6; /* transmit buffer interrupt vector */\r
3613               vuint16_t:2;\r
3614             vuint16_t RBIVEC:6; /* receive buffer interrupt vector */\r
3615         } B;\r
3616     } MBIVEC_t;\r
3617 \r
3618     typedef union uPSR0 {\r
3619         vuint16_t R;\r
3620         struct {\r
3621             vuint16_t ERRMODE:2;        /* error mode */\r
3622             vuint16_t SLOTMODE:2;       /* slot mode */\r
3623               vuint16_t:1;\r
3624             vuint16_t PROTSTATE:3;      /* protocol state */\r
3625             vuint16_t SUBSTATE:4;       /* protocol sub state */\r
3626               vuint16_t:1;\r
3627             vuint16_t WAKEUPSTATUS:3;   /* wakeup status */\r
3628         } B;\r
3629     } PSR0_t;\r
3630 \r
3631 /* protocol states */\r
3632 /* protocol sub-states */\r
3633 /* wakeup status */\r
3634     typedef union uPSR1 {\r
3635         vuint16_t R;\r
3636         struct {\r
3637             vuint16_t CSAA:1;   /* cold start attempt abort flag */\r
3638             vuint16_t SCP:1;    /* cold start path */\r
3639               vuint16_t:1;\r
3640             vuint16_t REMCSAT:5;        /* remanining coldstart attempts */\r
3641             vuint16_t CPN:1;    /* cold start noise path */\r
3642             vuint16_t HHR:1;    /* host halt request pending */\r
3643             vuint16_t FRZ:1;    /* freeze occured */\r
3644             vuint16_t APTAC:5;  /* allow passive to active counter */\r
3645         } B;\r
3646     } PSR1_t;\r
3647     typedef union uPSR2 {\r
3648         vuint16_t R;\r
3649         struct {\r
3650             vuint16_t NBVB:1;   /* NIT boundary violation on channel B */\r
3651             vuint16_t NSEB:1;   /* NIT syntax error on channel B */\r
3652             vuint16_t STCB:1;   /* symbol window transmit conflict on channel B */\r
3653             vuint16_t SBVB:1;   /* symbol window boundary violation on channel B */\r
3654             vuint16_t SSEB:1;   /* symbol window syntax error on channel B */\r
3655             vuint16_t MTB:1;    /* media access test symbol MTS received on channel B */\r
3656             vuint16_t NBVA:1;   /* NIT boundary violation on channel A */\r
3657             vuint16_t NSEA:1;   /* NIT syntax error on channel A */\r
3658             vuint16_t STCA:1;   /* symbol window transmit conflict on channel A */\r
3659             vuint16_t SBVA:1;   /* symbol window boundary violation on channel A */\r
3660             vuint16_t SSEA:1;   /* symbol window syntax error on channel A */\r
3661             vuint16_t MTA:1;    /* media access test symbol MTS received on channel A */\r
3662             vuint16_t CLKCORRFAILCNT:4; /* clock correction failed counter */\r
3663         } B;\r
3664     } PSR2_t;\r
3665     typedef union uPSR3 {\r
3666         vuint16_t R;\r
3667         struct {\r
3668             vuint16_t:2;\r
3669             vuint16_t WUB:1;    /* wakeup symbol received on channel B */\r
3670             vuint16_t ABVB:1;   /* aggregated boundary violation on channel B */\r
3671             vuint16_t AACB:1;   /* aggregated additional communication on channel B */\r
3672             vuint16_t ACEB:1;   /* aggregated content error on channel B */\r
3673             vuint16_t ASEB:1;   /* aggregated syntax error on channel B */\r
3674             vuint16_t AVFB:1;   /* aggregated valid frame on channel B */\r
3675               vuint16_t:2;\r
3676             vuint16_t WUA:1;    /* wakeup symbol received on channel A */\r
3677             vuint16_t ABVA:1;   /* aggregated boundary violation on channel A */\r
3678             vuint16_t AACA:1;   /* aggregated additional communication on channel A */\r
3679             vuint16_t ACEA:1;   /* aggregated content error on channel A */\r
3680             vuint16_t ASEA:1;   /* aggregated syntax error on channel A */\r
3681             vuint16_t AVFA:1;   /* aggregated valid frame on channel A */\r
3682         } B;\r
3683     } PSR3_t;\r
3684     typedef union uCIFRR {\r
3685         vuint16_t R;\r
3686         struct {\r
3687             vuint16_t:8;\r
3688             vuint16_t MIFR:1;   /* module interrupt flag */\r
3689             vuint16_t PRIFR:1;  /* protocol interrupt flag */\r
3690             vuint16_t CHIFR:1;  /* CHI interrupt flag */\r
3691             vuint16_t WUPIFR:1; /* wakeup interrupt flag */\r
3692             vuint16_t FNEBIFR:1;        /* receive fifo channel B no empty interrupt flag */\r
3693             vuint16_t FNEAIFR:1;        /* receive fifo channel A no empty interrupt flag */\r
3694             vuint16_t RBIFR:1;  /* receive message buffer interrupt flag */\r
3695             vuint16_t TBIFR:1;  /* transmit buffer interrupt flag */\r
3696         } B;\r
3697     } CIFRR_t;\r
3698     typedef union uSYMATOR {\r
3699         vuint16_t R;\r
3700         struct {\r
3701             vuint16_t:11;\r
3702             vuint16_t TIMEOUT:5;        /* system memory time out value */\r
3703         } B;\r
3704     } SYMATOR_t;\r
3705 \r
3706     typedef union uSFCNTR {\r
3707         vuint16_t R;\r
3708         struct {\r
3709             vuint16_t SFEVB:4;  /* sync frames channel B, even cycle */\r
3710             vuint16_t SFEVA:4;  /* sync frames channel A, even cycle */\r
3711             vuint16_t SFODB:4;  /* sync frames channel B, odd cycle */\r
3712             vuint16_t SFODA:4;  /* sync frames channel A, odd cycle */\r
3713         } B;\r
3714     } SFCNTR_t;\r
3715 \r
3716     typedef union uSFTCCSR {\r
3717         vuint16_t R;\r
3718         struct {\r
3719             vuint16_t ELKT:1;   /* even cycle tables lock and unlock trigger */\r
3720             vuint16_t OLKT:1;   /* odd cycle tables lock and unlock trigger */\r
3721             vuint16_t CYCNUM:6; /* cycle number */\r
3722             vuint16_t ELKS:1;   /* even cycle tables lock status */\r
3723             vuint16_t OLKS:1;   /* odd cycle tables lock status */\r
3724             vuint16_t EVAL:1;   /* even cycle tables valid */\r
3725             vuint16_t OVAL:1;   /* odd cycle tables valid */\r
3726               vuint16_t:1;\r
3727             vuint16_t OPT:1;    /*one pair trigger */\r
3728             vuint16_t SDVEN:1;  /* sync frame deviation table enable */\r
3729             vuint16_t SIDEN:1;  /* sync frame ID table enable */\r
3730         } B;\r
3731     } SFTCCSR_t;\r
3732     typedef union uSFIDRFR {\r
3733         vuint16_t R;\r
3734         struct {\r
3735             vuint16_t:6;\r
3736             vuint16_t SYNFRID:10;       /* sync frame rejection ID */\r
3737         } B;\r
3738     } SFIDRFR_t;\r
3739 \r
3740     typedef union uTICCR {\r
3741         vuint16_t R;\r
3742         struct {\r
3743             vuint16_t:2;\r
3744             vuint16_t T2CFG:1;  /* timer 2 configuration */\r
3745             vuint16_t T2REP:1;  /* timer 2 repetitive mode */\r
3746               vuint16_t:1;\r
3747             vuint16_t T2SP:1;   /* timer 2 stop */\r
3748             vuint16_t T2TR:1;   /* timer 2 trigger */\r
3749             vuint16_t T2ST:1;   /* timer 2 state */\r
3750               vuint16_t:3;\r
3751             vuint16_t T1REP:1;  /* timer 1 repetitive mode */\r
3752               vuint16_t:1;\r
3753             vuint16_t T1SP:1;   /* timer 1 stop */\r
3754             vuint16_t T1TR:1;   /* timer 1 trigger */\r
3755             vuint16_t T1ST:1;   /* timer 1 state */\r
3756 \r
3757         } B;\r
3758     } TICCR_t;\r
3759     typedef union uTI1CYSR {\r
3760         vuint16_t R;\r
3761         struct {\r
3762             vuint16_t:2;\r
3763             vuint16_t TI1CYCVAL:6;      /* timer 1 cycle filter value */\r
3764               vuint16_t:2;\r
3765             vuint16_t TI1CYCMSK:6;      /* timer 1 cycle filter mask */\r
3766 \r
3767         } B;\r
3768     } TI1CYSR_t;\r
3769 \r
3770     typedef union uSSSR {\r
3771         vuint16_t R;\r
3772         struct {\r
3773             vuint16_t WMD:1;    /* write mode */\r
3774               vuint16_t:1;\r
3775             vuint16_t SEL:2;    /* static slot number */\r
3776               vuint16_t:1;\r
3777             vuint16_t SLOTNUMBER:11;    /* selector */\r
3778         } B;\r
3779     } SSSR_t;\r
3780 \r
3781     typedef union uSSCCR {\r
3782         vuint16_t R;\r
3783         struct {\r
3784             vuint16_t WMD:1;    /* write mode */\r
3785               vuint16_t:1;\r
3786             vuint16_t SEL:2;    /* selector */\r
3787               vuint16_t:1;\r
3788             vuint16_t CNTCFG:2; /* counter configuration */\r
3789             vuint16_t MCY:1;    /* multi cycle selection */\r
3790             vuint16_t VFR:1;    /* valid frame selection */\r
3791             vuint16_t SYF:1;    /* sync frame selection */\r
3792             vuint16_t NUF:1;    /* null frame selection  */\r
3793             vuint16_t SUF:1;    /* startup frame selection */\r
3794             vuint16_t STATUSMASK:4;     /* slot status mask */\r
3795         } B;\r
3796     } SSCCR_t;\r
3797     typedef union uSSR {\r
3798         vuint16_t R;\r
3799         struct {\r
3800             vuint16_t VFB:1;    /* valid frame on channel B */\r
3801             vuint16_t SYB:1;    /* valid sync frame on channel B */\r
3802             vuint16_t NFB:1;    /* valid null frame on channel B */\r
3803             vuint16_t SUB:1;    /* valid startup frame on channel B */\r
3804             vuint16_t SEB:1;    /* syntax error on channel B */\r
3805             vuint16_t CEB:1;    /* content error on channel B */\r
3806             vuint16_t BVB:1;    /* boundary violation on channel B */\r
3807             vuint16_t TCB:1;    /* tx conflict on channel B */\r
3808             vuint16_t VFA:1;    /* valid frame on channel A */\r
3809             vuint16_t SYA:1;    /* valid sync frame on channel A */\r
3810             vuint16_t NFA:1;    /* valid null frame on channel A */\r
3811             vuint16_t SUA:1;    /* valid startup frame on channel A */\r
3812             vuint16_t SEA:1;    /* syntax error on channel A */\r
3813             vuint16_t CEA:1;    /* content error on channel A */\r
3814             vuint16_t BVA:1;    /* boundary violation on channel A */\r
3815             vuint16_t TCA:1;    /* tx conflict on channel A */\r
3816         } B;\r
3817     } SSR_t;\r
3818     typedef union uMTSCFR {\r
3819         vuint16_t R;\r
3820         struct {\r
3821             vuint16_t MTE:1;    /* media access test symbol transmission enable */\r
3822               vuint16_t:1;\r
3823             vuint16_t CYCCNTMSK:6;      /* cycle counter mask */\r
3824               vuint16_t:2;\r
3825             vuint16_t CYCCNTVAL:6;      /* cycle counter value */\r
3826         } B;\r
3827     } MTSCFR_t;\r
3828 \r
3829     typedef union uRSBIR {\r
3830         vuint16_t R;\r
3831         struct {\r
3832             vuint16_t WMD:1;    /* write mode */\r
3833               vuint16_t:1;\r
3834             vuint16_t SEL:2;    /* selector */\r
3835               vuint16_t:5;\r
3836             vuint16_t RSBIDX:7; /* receive shadow buffer index */\r
3837         } B;\r
3838     } RSBIR_t;\r
3839 \r
3840     typedef union uRFDSR {\r
3841         vuint16_t R;\r
3842         struct {\r
3843             vuint16_t FIFODEPTH:8;      /* fifo depth */\r
3844               vuint16_t:1;\r
3845             vuint16_t ENTRYSIZE:7;      /* entry size */\r
3846         } B;\r
3847     } RFDSR_t;\r
3848 \r
3849     typedef union uRFRFCFR {\r
3850         vuint16_t R;\r
3851         struct {\r
3852             vuint16_t WMD:1;    /* write mode */\r
3853             vuint16_t IBD:1;    /* interval boundary */\r
3854             vuint16_t SEL:2;    /* filter number */\r
3855               vuint16_t:1;\r
3856             vuint16_t SID:11;   /* slot ID */\r
3857         } B;\r
3858     } RFRFCFR_t;\r
3859 \r
3860     typedef union uRFRFCTR {\r
3861         vuint16_t R;\r
3862         struct {\r
3863             vuint16_t:4;\r
3864             vuint16_t F3MD:1;   /* filter mode */\r
3865             vuint16_t F2MD:1;   /* filter mode */\r
3866             vuint16_t F1MD:1;   /* filter mode */\r
3867             vuint16_t F0MD:1;   /* filter mode */\r
3868               vuint16_t:4;\r
3869             vuint16_t F3EN:1;   /* filter enable */\r
3870             vuint16_t F2EN:1;   /* filter enable */\r
3871             vuint16_t F1EN:1;   /* filter enable */\r
3872             vuint16_t F0EN:1;   /* filter enable */\r
3873         } B;\r
3874     } RFRFCTR_t;\r
3875     typedef union uPCR0 {\r
3876         vuint16_t R;\r
3877         struct {\r
3878             vuint16_t ACTION_POINT_OFFSET:6;\r
3879             vuint16_t STATIC_SLOT_LENGTH:10;\r
3880         } B;\r
3881     } PCR0_t;\r
3882 \r
3883     typedef union uPCR1 {\r
3884         vuint16_t R;\r
3885         struct {\r
3886             vuint16_t:2;\r
3887             vuint16_t MACRO_AFTER_FIRST_STATIC_SLOT:14;\r
3888         } B;\r
3889     } PCR1_t;\r
3890 \r
3891     typedef union uPCR2 {\r
3892         vuint16_t R;\r
3893         struct {\r
3894             vuint16_t MINISLOT_AFTER_ACTION_POINT:6;\r
3895             vuint16_t NUMBER_OF_STATIC_SLOTS:10;\r
3896         } B;\r
3897     } PCR2_t;\r
3898 \r
3899     typedef union uPCR3 {\r
3900         vuint16_t R;\r
3901         struct {\r
3902             vuint16_t WAKEUP_SYMBOL_RX_LOW:6;\r
3903             vuint16_t MINISLOT_ACTION_POINT_OFFSET:5;\r
3904             vuint16_t COLDSTART_ATTEMPTS:5;\r
3905         } B;\r
3906     } PCR3_t;\r
3907 \r
3908     typedef union uPCR4 {\r
3909         vuint16_t R;\r
3910         struct {\r
3911             vuint16_t CAS_RX_LOW_MAX:7;\r
3912             vuint16_t WAKEUP_SYMBOL_RX_WINDOW:9;\r
3913         } B;\r
3914     } PCR4_t;\r
3915 \r
3916     typedef union uPCR5 {\r
3917         vuint16_t R;\r
3918         struct {\r
3919             vuint16_t TSS_TRANSMITTER:4;\r
3920             vuint16_t WAKEUP_SYMBOL_TX_LOW:6;\r
3921             vuint16_t WAKEUP_SYMBOL_RX_IDLE:6;\r
3922         } B;\r
3923     } PCR5_t;\r
3924 \r
3925     typedef union uPCR6 {\r
3926         vuint16_t R;\r
3927         struct {\r
3928             vuint16_t:1;\r
3929             vuint16_t SYMBOL_WINDOW_AFTER_ACTION_POINT:8;\r
3930             vuint16_t MACRO_INITIAL_OFFSET_A:7;\r
3931         } B;\r
3932     } PCR6_t;\r
3933 \r
3934     typedef union uPCR7 {\r
3935         vuint16_t R;\r
3936         struct {\r
3937             vuint16_t DECODING_CORRECTION_B:9;\r
3938             vuint16_t MICRO_PER_MACRO_NOM_HALF:7;\r
3939         } B;\r
3940     } PCR7_t;\r
3941 \r
3942     typedef union uPCR8 {\r
3943         vuint16_t R;\r
3944         struct {\r
3945             vuint16_t MAX_WITHOUT_CLOCK_CORRECTION_FATAL:4;\r
3946             vuint16_t MAX_WITHOUT_CLOCK_CORRECTION_PASSIVE:4;\r
3947             vuint16_t WAKEUP_SYMBOL_TX_IDLE:8;\r
3948         } B;\r
3949     } PCR8_t;\r
3950 \r
3951     typedef union uPCR9 {\r
3952         vuint16_t R;\r
3953         struct {\r
3954             vuint16_t MINISLOT_EXISTS:1;\r
3955             vuint16_t SYMBOL_WINDOW_EXISTS:1;\r
3956             vuint16_t OFFSET_CORRECTION_OUT:14;\r
3957         } B;\r
3958     } PCR9_t;\r
3959 \r
3960     typedef union uPCR10 {\r
3961         vuint16_t R;\r
3962         struct {\r
3963             vuint16_t SINGLE_SLOT_ENABLED:1;\r
3964             vuint16_t WAKEUP_CHANNEL:1;\r
3965             vuint16_t MACRO_PER_CYCLE:14;\r
3966         } B;\r
3967     } PCR10_t;\r
3968 \r
3969     typedef union uPCR11 {\r
3970         vuint16_t R;\r
3971         struct {\r
3972             vuint16_t KEY_SLOT_USED_FOR_STARTUP:1;\r
3973             vuint16_t KEY_SLOT_USED_FOR_SYNC:1;\r
3974             vuint16_t OFFSET_CORRECTION_START:14;\r
3975         } B;\r
3976     } PCR11_t;\r
3977 \r
3978     typedef union uPCR12 {\r
3979         vuint16_t R;\r
3980         struct {\r
3981             vuint16_t ALLOW_PASSIVE_TO_ACTIVE:5;\r
3982             vuint16_t KEY_SLOT_HEADER_CRC:11;\r
3983         } B;\r
3984     } PCR12_t;\r
3985 \r
3986     typedef union uPCR13 {\r
3987         vuint16_t R;\r
3988         struct {\r
3989             vuint16_t FIRST_MINISLOT_ACTION_POINT_OFFSET:6;\r
3990             vuint16_t STATIC_SLOT_AFTER_ACTION_POINT:10;\r
3991         } B;\r
3992     } PCR13_t;\r
3993 \r
3994     typedef union uPCR14 {\r
3995         vuint16_t R;\r
3996         struct {\r
3997             vuint16_t RATE_CORRECTION_OUT:11;\r
3998             vuint16_t LISTEN_TIMEOUT_H:5;\r
3999         } B;\r
4000     } PCR14_t;\r
4001 \r
4002     typedef union uPCR15 {\r
4003         vuint16_t R;\r
4004         struct {\r
4005             vuint16_t LISTEN_TIMEOUT_L:16;\r
4006         } B;\r
4007     } PCR15_t;\r
4008 \r
4009     typedef union uPCR16 {\r
4010         vuint16_t R;\r
4011         struct {\r
4012             vuint16_t MACRO_INITIAL_OFFSET_B:7;\r
4013             vuint16_t NOISE_LISTEN_TIMEOUT_H:9;\r
4014         } B;\r
4015     } PCR16_t;\r
4016 \r
4017     typedef union uPCR17 {\r
4018         vuint16_t R;\r
4019         struct {\r
4020             vuint16_t NOISE_LISTEN_TIMEOUT_L:16;\r
4021         } B;\r
4022     } PCR17_t;\r
4023 \r
4024     typedef union uPCR18 {\r
4025         vuint16_t R;\r
4026         struct {\r
4027             vuint16_t WAKEUP_PATTERN:6;\r
4028             vuint16_t KEY_SLOT_ID:10;\r
4029         } B;\r
4030     } PCR18_t;\r
4031 \r
4032     typedef union uPCR19 {\r
4033         vuint16_t R;\r
4034         struct {\r
4035             vuint16_t DECODING_CORRECTION_A:9;\r
4036             vuint16_t PAYLOAD_LENGTH_STATIC:7;\r
4037         } B;\r
4038     } PCR19_t;\r
4039 \r
4040     typedef union uPCR20 {\r
4041         vuint16_t R;\r
4042         struct {\r
4043             vuint16_t MICRO_INITIAL_OFFSET_B:8;\r
4044             vuint16_t MICRO_INITIAL_OFFSET_A:8;\r
4045         } B;\r
4046     } PCR20_t;\r
4047 \r
4048     typedef union uPCR21 {\r
4049         vuint16_t R;\r
4050         struct {\r
4051             vuint16_t EXTERN_RATE_CORRECTION:3;\r
4052             vuint16_t LATEST_TX:13;\r
4053         } B;\r
4054     } PCR21_t;\r
4055 \r
4056     typedef union uPCR22 {\r
4057         vuint16_t R;\r
4058         struct {\r
4059             vuint16_t:1;\r
4060             vuint16_t COMP_ACCEPTED_STARTUP_RANGE_A:11;\r
4061             vuint16_t MICRO_PER_CYCLE_H:4;\r
4062         } B;\r
4063     } PCR22_t;\r
4064 \r
4065     typedef union uPCR23 {\r
4066         vuint16_t R;\r
4067         struct {\r
4068             vuint16_t micro_per_cycle_l:16;\r
4069         } B;\r
4070     } PCR23_t;\r
4071 \r
4072     typedef union uPCR24 {\r
4073         vuint16_t R;\r
4074         struct {\r
4075             vuint16_t CLUSTER_DRIFT_DAMPING:5;\r
4076             vuint16_t MAX_PAYLOAD_LENGTH_DYNAMIC:7;\r
4077             vuint16_t MICRO_PER_CYCLE_MIN_H:4;\r
4078         } B;\r
4079     } PCR24_t;\r
4080 \r
4081     typedef union uPCR25 {\r
4082         vuint16_t R;\r
4083         struct {\r
4084             vuint16_t MICRO_PER_CYCLE_MIN_L:16;\r
4085         } B;\r
4086     } PCR25_t;\r
4087 \r
4088     typedef union uPCR26 {\r
4089         vuint16_t R;\r
4090         struct {\r
4091             vuint16_t ALLOW_HALT_DUE_TO_CLOCK:1;\r
4092             vuint16_t COMP_ACCEPTED_STARTUP_RANGE_B:11;\r
4093             vuint16_t MICRO_PER_CYCLE_MAX_H:4;\r
4094         } B;\r
4095     } PCR26_t;\r
4096 \r
4097     typedef union uPCR27 {\r
4098         vuint16_t R;\r
4099         struct {\r
4100             vuint16_t MICRO_PER_CYCLE_MAX_L:16;\r
4101         } B;\r
4102     } PCR27_t;\r
4103 \r
4104     typedef union uPCR28 {\r
4105         vuint16_t R;\r
4106         struct {\r
4107             vuint16_t DYNAMIC_SLOT_IDLE_PHASE:2;\r
4108             vuint16_t MACRO_AFTER_OFFSET_CORRECTION:14;\r
4109         } B;\r
4110     } PCR28_t;\r
4111 \r
4112     typedef union uPCR29 {\r
4113         vuint16_t R;\r
4114         struct {\r
4115             vuint16_t EXTERN_OFFSET_CORRECTION:3;\r
4116             vuint16_t MINISLOTS_MAX:13;\r
4117         } B;\r
4118     } PCR29_t;\r
4119 \r
4120     typedef union uPCR30 {\r
4121         vuint16_t R;\r
4122         struct {\r
4123             vuint16_t:12;\r
4124             vuint16_t SYNC_NODE_MAX:4;\r
4125         } B;\r
4126     } PCR30_t;\r
4127 \r
4128     typedef struct uMSG_BUFF_CCS {\r
4129         union {\r
4130             vuint16_t R;\r
4131             struct {\r
4132                 vuint16_t:1;\r
4133                 vuint16_t MCM:1;        /* message buffer commit mode */\r
4134                 vuint16_t MBT:1;        /* message buffer type */\r
4135                 vuint16_t MTD:1;        /* message buffer direction */\r
4136                 vuint16_t CMT:1;        /* commit for transmission */\r
4137                 vuint16_t EDT:1;        /* enable / disable trigger */\r
4138                 vuint16_t LCKT:1;       /* lock request trigger */\r
4139                 vuint16_t MBIE:1;       /* message buffer interrupt enable */\r
4140                   vuint16_t:3;\r
4141                 vuint16_t DUP:1;        /* data updated  */\r
4142                 vuint16_t DVAL:1;       /* data valid */\r
4143                 vuint16_t EDS:1;        /* lock status */\r
4144                 vuint16_t LCKS:1;       /* enable / disable status */\r
4145                 vuint16_t MBIF:1;       /* message buffer interrupt flag */\r
4146             } B;\r
4147         } MBCCSR;\r
4148         union {\r
4149             vuint16_t R;\r
4150             struct {\r
4151                 vuint16_t MTM:1;        /* message buffer transmission mode */\r
4152                 vuint16_t CHNLA:1;      /* channel assignement */\r
4153                 vuint16_t CHNLB:1;      /* channel assignement */\r
4154                 vuint16_t CCFE:1;       /* cycle counter filter enable */\r
4155                 vuint16_t CCFMSK:6;     /* cycle counter filter mask */\r
4156                 vuint16_t CCFVAL:6;     /* cycle counter filter value */\r
4157             } B;\r
4158         } MBCCFR;\r
4159         union {\r
4160             vuint16_t R;\r
4161             struct {\r
4162                 vuint16_t:5;\r
4163                 vuint16_t FID:11;       /* frame ID */\r
4164             } B;\r
4165         } MBFIDR;\r
4166 \r
4167         union {\r
4168             vuint16_t R;\r
4169             struct {\r
4170                 vuint16_t:9;\r
4171                 vuint16_t MBIDX:7;      /* message buffer index */\r
4172             } B;\r
4173         } MBIDXR;\r
4174     } MSG_BUFF_CCS_t;\r
4175     typedef union uSYSBADHR {\r
4176         vuint16_t R;\r
4177     } SYSBADHR_t;\r
4178     typedef union uSYSBADLR {\r
4179         vuint16_t R;\r
4180     } SYSBADLR_t;\r
4181     typedef union uPADR {\r
4182         vuint16_t R;\r
4183     } PADR_t;\r
4184     typedef union uPDAR {\r
4185         vuint16_t R;\r
4186     } PDAR_t;\r
4187     typedef union uCASERCR {\r
4188         vuint16_t R;\r
4189     } CASERCR_t;\r
4190     typedef union uCBSERCR {\r
4191         vuint16_t R;\r
4192     } CBSERCR_t;\r
4193     typedef union uCYCTR {\r
4194         vuint16_t R;\r
4195     } CYCTR_t;\r
4196     typedef union uMTCTR {\r
4197         vuint16_t R;\r
4198     } MTCTR_t;\r
4199     typedef union uSLTCTAR {\r
4200         vuint16_t R;\r
4201     } SLTCTAR_t;\r
4202     typedef union uSLTCTBR {\r
4203         vuint16_t R;\r
4204     } SLTCTBR_t;\r
4205     typedef union uRTCORVR {\r
4206         vuint16_t R;\r
4207     } RTCORVR_t;\r
4208     typedef union uOFCORVR {\r
4209         vuint16_t R;\r
4210     } OFCORVR_t;\r
4211     typedef union uSFTOR {\r
4212         vuint16_t R;\r
4213     } SFTOR_t;\r
4214     typedef union uSFIDAFVR {\r
4215         vuint16_t R;\r
4216     } SFIDAFVR_t;\r
4217     typedef union uSFIDAFMR {\r
4218         vuint16_t R;\r
4219     } SFIDAFMR_t;\r
4220     typedef union uNMVR {\r
4221         vuint16_t R;\r
4222     } NMVR_t;\r
4223     typedef union uNMVLR {\r
4224         vuint16_t R;\r
4225     } NMVLR_t;\r
4226     typedef union uT1MTOR {\r
4227         vuint16_t R;\r
4228     } T1MTOR_t;\r
4229     typedef union uTI2CR0 {\r
4230         vuint16_t R;\r
4231     } TI2CR0_t;\r
4232     typedef union uTI2CR1 {\r
4233         vuint16_t R;\r
4234     } TI2CR1_t;\r
4235     typedef union uSSCR {\r
4236         vuint16_t R;\r
4237     } SSCR_t;\r
4238     typedef union uRFSR {\r
4239         vuint16_t R;\r
4240     } RFSR_t;\r
4241     typedef union uRFSIR {\r
4242         vuint16_t R;\r
4243     } RFSIR_t;\r
4244     typedef union uRFARIR {\r
4245         vuint16_t R;\r
4246     } RFARIR_t;\r
4247     typedef union uRFBRIR {\r
4248         vuint16_t R;\r
4249     } RFBRIR_t;\r
4250     typedef union uRFMIDAFVR {\r
4251         vuint16_t R;\r
4252     } RFMIDAFVR_t;\r
4253     typedef union uRFMIAFMR {\r
4254         vuint16_t R;\r
4255     } RFMIAFMR_t;\r
4256     typedef union uRFFIDRFVR {\r
4257         vuint16_t R;\r
4258     } RFFIDRFVR_t;\r
4259     typedef union uRFFIDRFMR {\r
4260         vuint16_t R;\r
4261     } RFFIDRFMR_t;\r
4262     typedef union uLDTXSLAR {\r
4263         vuint16_t R;\r
4264     } LDTXSLAR_t;\r
4265     typedef union uLDTXSLBR {\r
4266         vuint16_t R;\r
4267     } LDTXSLBR_t;\r
4268 \r
4269     typedef struct FR_tag {\r
4270         volatile MVR_t MVR;     /*module version register *//*0  */\r
4271         volatile MCR_t MCR;     /*module configuration register *//*2  */\r
4272         volatile SYSBADHR_t SYSBADHR;   /*system memory base address high register *//*4        */\r
4273         volatile SYSBADLR_t SYSBADLR;   /*system memory base address low register *//*6         */\r
4274         volatile STBSCR_t STBSCR;       /*strobe signal control register *//*8      */\r
4275         vuint16_t reserved0[1]; /*A    */\r
4276         volatile MBDSR_t MBDSR; /*message buffer data size register *//*C  */\r
4277         volatile MBSSUTR_t MBSSUTR;     /*message buffer segment size and utilization register *//*E  */\r
4278         vuint16_t reserved1[1]; /*10 */\r
4279         vuint16_t reserved2[1]; /*12 */\r
4280         volatile POCR_t POCR;   /*Protocol operation control register *//*14 */\r
4281         volatile GIFER_t GIFER; /*global interrupt flag and enable register *//*16 */\r
4282         volatile PIFR0_t PIFR0; /*protocol interrupt flag register 0 *//*18 */\r
4283         volatile PIFR1_t PIFR1; /*protocol interrupt flag register 1 *//*1A */\r
4284         volatile PIER0_t PIER0; /*protocol interrupt enable register 0 *//*1C */\r
4285         volatile PIER1_t PIER1; /*protocol interrupt enable register 1 *//*1E */\r
4286         volatile CHIERFR_t CHIERFR;     /*CHI error flag register *//*20 */\r
4287         volatile MBIVEC_t MBIVEC;       /*message buffer interrupt vector register *//*22 */\r
4288         volatile CASERCR_t CASERCR;     /*channel A status error counter register *//*24 */\r
4289         volatile CBSERCR_t CBSERCR;     /*channel B status error counter register *//*26 */\r
4290         volatile PSR0_t PSR0;   /*protocol status register 0 *//*28 */\r
4291         volatile PSR1_t PSR1;   /*protocol status register 1 *//*2A */\r
4292         volatile PSR2_t PSR2;   /*protocol status register 2 *//*2C */\r
4293         volatile PSR3_t PSR3;   /*protocol status register 3 *//*2E */\r
4294         volatile MTCTR_t MTCTR; /*macrotick counter register *//*30 */\r
4295         volatile CYCTR_t CYCTR; /*cycle counter register *//*32 */\r
4296         volatile SLTCTAR_t SLTCTAR;     /*slot counter channel A register *//*34 */\r
4297         volatile SLTCTBR_t SLTCTBR;     /*slot counter channel B register *//*36 */\r
4298         volatile RTCORVR_t RTCORVR;     /*rate correction value register *//*38 */\r
4299         volatile OFCORVR_t OFCORVR;     /*offset correction value register *//*3A */\r
4300         volatile CIFRR_t CIFRR; /*combined interrupt flag register *//*3C */\r
4301         volatile SYMATOR_t SYMATOR;     /*system memory acess time-out register *//*3E */\r
4302         volatile SFCNTR_t SFCNTR;       /*sync frame counter register *//*40 */\r
4303         volatile SFTOR_t SFTOR; /*sync frame table offset register *//*42 */\r
4304         volatile SFTCCSR_t SFTCCSR;     /*sync frame table configuration, control, status register *//*44 */\r
4305         volatile SFIDRFR_t SFIDRFR;     /*sync frame ID rejection filter register *//*46 */\r
4306         volatile SFIDAFVR_t SFIDAFVR;   /*sync frame ID acceptance filter value regiater *//*48 */\r
4307         volatile SFIDAFMR_t SFIDAFMR;   /*sync frame ID acceptance filter mask register *//*4A */\r
4308         volatile NMVR_t NMVR[6];        /*network management vector registers (12 bytes) *//*4C */\r
4309         volatile NMVLR_t NMVLR; /*network management vector length register *//*58 */\r
4310         volatile TICCR_t TICCR; /*timer configuration and control register *//*5A */\r
4311         volatile TI1CYSR_t TI1CYSR;     /*timer 1 cycle set register *//*5C */\r
4312         volatile T1MTOR_t T1MTOR;       /*timer 1 macrotick offset register *//*5E */\r
4313         volatile TI2CR0_t TI2CR0;       /*timer 2 configuration register 0 *//*60 */\r
4314         volatile TI2CR1_t TI2CR1;       /*timer 2 configuration register 1 *//*62 */\r
4315         volatile SSSR_t SSSR;   /*slot status selection register *//*64 */\r
4316         volatile SSCCR_t SSCCR; /*slot status counter condition register *//*66 */\r
4317         volatile SSR_t SSR[8];  /*slot status registers 0-7 *//*68 */\r
4318         volatile SSCR_t SSCR[4];        /*slot status counter registers 0-3 *//*78 */\r
4319         volatile MTSCFR_t MTSACFR;      /*mts a config register *//*80 */\r
4320         volatile MTSCFR_t MTSBCFR;      /*mts b config register *//*82 */\r
4321         volatile RSBIR_t RSBIR; /*receive shadow buffer index register *//*84 */\r
4322         volatile RFSR_t RFSR;   /*receive fifo selection register *//*86 */\r
4323         volatile RFSIR_t RFSIR; /*receive fifo start index register *//*88 */\r
4324         volatile RFDSR_t RFDSR; /*receive fifo depth and size register *//*8A */\r
4325         volatile RFARIR_t RFARIR;       /*receive fifo a read index register *//*8C */\r
4326         volatile RFBRIR_t RFBRIR;       /*receive fifo b read index register *//*8E */\r
4327         volatile RFMIDAFVR_t RFMIDAFVR; /*receive fifo message ID acceptance filter value register *//*90 */\r
4328         volatile RFMIAFMR_t RFMIAFMR;   /*receive fifo message ID acceptance filter mask register *//*92 */\r
4329         volatile RFFIDRFVR_t RFFIDRFVR; /*receive fifo frame ID rejection filter value register *//*94 */\r
4330         volatile RFFIDRFMR_t RFFIDRFMR; /*receive fifo frame ID rejection filter mask register *//*96 */\r
4331         volatile RFRFCFR_t RFRFCFR;     /*receive fifo range filter configuration register *//*98 */\r
4332         volatile RFRFCTR_t RFRFCTR;     /*receive fifo range filter control register *//*9A */\r
4333         volatile LDTXSLAR_t LDTXSLAR;   /*last dynamic transmit slot channel A register *//*9C */\r
4334         volatile LDTXSLBR_t LDTXSLBR;   /*last dynamic transmit slot channel B register *//*9E */\r
4335         volatile PCR0_t PCR0;   /*protocol configuration register 0 *//*A0 */\r
4336         volatile PCR1_t PCR1;   /*protocol configuration register 1 *//*A2 */\r
4337         volatile PCR2_t PCR2;   /*protocol configuration register 2 *//*A4 */\r
4338         volatile PCR3_t PCR3;   /*protocol configuration register 3 *//*A6 */\r
4339         volatile PCR4_t PCR4;   /*protocol configuration register 4 *//*A8 */\r
4340         volatile PCR5_t PCR5;   /*protocol configuration register 5 *//*AA */\r
4341         volatile PCR6_t PCR6;   /*protocol configuration register 6 *//*AC */\r
4342         volatile PCR7_t PCR7;   /*protocol configuration register 7 *//*AE */\r
4343         volatile PCR8_t PCR8;   /*protocol configuration register 8 *//*B0 */\r
4344         volatile PCR9_t PCR9;   /*protocol configuration register 9 *//*B2 */\r
4345         volatile PCR10_t PCR10; /*protocol configuration register 10 *//*B4 */\r
4346         volatile PCR11_t PCR11; /*protocol configuration register 11 *//*B6 */\r
4347         volatile PCR12_t PCR12; /*protocol configuration register 12 *//*B8 */\r
4348         volatile PCR13_t PCR13; /*protocol configuration register 13 *//*BA */\r
4349         volatile PCR14_t PCR14; /*protocol configuration register 14 *//*BC */\r
4350         volatile PCR15_t PCR15; /*protocol configuration register 15 *//*BE */\r
4351         volatile PCR16_t PCR16; /*protocol configuration register 16 *//*C0 */\r
4352         volatile PCR17_t PCR17; /*protocol configuration register 17 *//*C2 */\r
4353         volatile PCR18_t PCR18; /*protocol configuration register 18 *//*C4 */\r
4354         volatile PCR19_t PCR19; /*protocol configuration register 19 *//*C6 */\r
4355         volatile PCR20_t PCR20; /*protocol configuration register 20 *//*C8 */\r
4356         volatile PCR21_t PCR21; /*protocol configuration register 21 *//*CA */\r
4357         volatile PCR22_t PCR22; /*protocol configuration register 22 *//*CC */\r
4358         volatile PCR23_t PCR23; /*protocol configuration register 23 *//*CE */\r
4359         volatile PCR24_t PCR24; /*protocol configuration register 24 *//*D0 */\r
4360         volatile PCR25_t PCR25; /*protocol configuration register 25 *//*D2 */\r
4361         volatile PCR26_t PCR26; /*protocol configuration register 26 *//*D4 */\r
4362         volatile PCR27_t PCR27; /*protocol configuration register 27 *//*D6 */\r
4363         volatile PCR28_t PCR28; /*protocol configuration register 28 *//*D8 */\r
4364         volatile PCR29_t PCR29; /*protocol configuration register 29 *//*DA */\r
4365         volatile PCR30_t PCR30; /*protocol configuration register 30 *//*DC */\r
4366         vuint16_t reserved3[17];\r
4367         volatile MSG_BUFF_CCS_t MBCCS[128];     /* message buffer configuration, control & status registers 0-31 *//*100 */\r
4368     } FR_tag_t;\r
4369 \r
4370     typedef union uF_HEADER     /* frame header */\r
4371     {\r
4372         struct {\r
4373             vuint16_t:5;\r
4374             vuint16_t HDCRC:11; /* Header CRC */\r
4375               vuint16_t:2;\r
4376             vuint16_t CYCCNT:6; /* Cycle Count */\r
4377               vuint16_t:1;\r
4378             vuint16_t PLDLEN:7; /* Payload Length */\r
4379               vuint16_t:1;\r
4380             vuint16_t PPI:1;    /* Payload Preamble Indicator */\r
4381             vuint16_t NUF:1;    /* Null Frame Indicator */\r
4382             vuint16_t SYF:1;    /* Sync Frame Indicator */\r
4383             vuint16_t SUF:1;    /* Startup Frame Indicator */\r
4384             vuint16_t FID:11;   /* Frame ID */\r
4385         } B;\r
4386         vuint16_t WORDS[3];\r
4387     } F_HEADER_t;\r
4388     typedef union uS_STSTUS     /* slot status */\r
4389     {\r
4390         struct {\r
4391             vuint16_t VFB:1;    /* Valid Frame on channel B */\r
4392             vuint16_t SYB:1;    /* Sync Frame Indicator channel B */\r
4393             vuint16_t NFB:1;    /* Null Frame Indicator channel B */\r
4394             vuint16_t SUB:1;    /* Startup Frame Indicator channel B */\r
4395             vuint16_t SEB:1;    /* Syntax Error on channel B */\r
4396             vuint16_t CEB:1;    /* Content Error on channel B */\r
4397             vuint16_t BVB:1;    /* Boundary Violation on channel B */\r
4398             vuint16_t CH:1;     /* Channel */\r
4399             vuint16_t VFA:1;    /* Valid Frame on channel A */\r
4400             vuint16_t SYA:1;    /* Sync Frame Indicator channel A */\r
4401             vuint16_t NFA:1;    /* Null Frame Indicator channel A */\r
4402             vuint16_t SUA:1;    /* Startup Frame Indicator channel A */\r
4403             vuint16_t SEA:1;    /* Syntax Error on channel A */\r
4404             vuint16_t CEA:1;    /* Content Error on channel A */\r
4405             vuint16_t BVA:1;    /* Boundary Violation on channel A */\r
4406               vuint16_t:1;\r
4407         } RX;\r
4408         struct {\r
4409             vuint16_t VFB:1;    /* Valid Frame on channel B */\r
4410             vuint16_t SYB:1;    /* Sync Frame Indicator channel B */\r
4411             vuint16_t NFB:1;    /* Null Frame Indicator channel B */\r
4412             vuint16_t SUB:1;    /* Startup Frame Indicator channel B */\r
4413             vuint16_t SEB:1;    /* Syntax Error on channel B */\r
4414             vuint16_t CEB:1;    /* Content Error on channel B */\r
4415             vuint16_t BVB:1;    /* Boundary Violation on channel B */\r
4416             vuint16_t TCB:1;    /* Tx Conflict on channel B */\r
4417             vuint16_t VFA:1;    /* Valid Frame on channel A */\r
4418             vuint16_t SYA:1;    /* Sync Frame Indicator channel A */\r
4419             vuint16_t NFA:1;    /* Null Frame Indicator channel A */\r
4420             vuint16_t SUA:1;    /* Startup Frame Indicator channel A */\r
4421             vuint16_t SEA:1;    /* Syntax Error on channel A */\r
4422             vuint16_t CEA:1;    /* Content Error on channel A */\r
4423             vuint16_t BVA:1;    /* Boundary Violation on channel A */\r
4424             vuint16_t TCA:1;    /* Tx Conflict on channel A */\r
4425         } TX;\r
4426         vuint16_t R;\r
4427     } S_STATUS_t;\r
4428 \r
4429     typedef struct uMB_HEADER   /* message buffer header */\r
4430     {\r
4431         F_HEADER_t FRAME_HEADER;\r
4432         vuint16_t DATA_OFFSET;\r
4433         S_STATUS_t SLOT_STATUS;\r
4434     } MB_HEADER_t;\r
4435 /**************************************************************************/\r
4436 /*                     MODULE : FMPLL                                     */\r
4437 /**************************************************************************/\r
4438     struct FMPLL_tag {\r
4439 \r
4440         uint32_t FMPLL_reserved0;\r
4441 \r
4442         union {                 /* Synthesiser Status Register */\r
4443             vuint32_t R;\r
4444             struct {\r
4445                 vuint32_t:22;\r
4446                 vuint32_t LOLF:1;\r
4447                 vuint32_t LOC:1;\r
4448                 vuint32_t MODE:1;\r
4449                 vuint32_t PLLSEL:1;\r
4450                 vuint32_t PLLREF:1;\r
4451                 vuint32_t LOCKS:1;\r
4452                 vuint32_t LOCK:1;\r
4453                 vuint32_t LOCF:1;\r
4454                 vuint32_t CALDONE:1;\r
4455                 vuint32_t CALPASS:1;\r
4456             } B;\r
4457         } SYNSR;\r
4458 \r
4459         union {\r
4460             vuint32_t R;\r
4461             struct {\r
4462                 vuint32_t:1;\r
4463                 vuint32_t CLKCFG:3;\r
4464                   vuint32_t:8;\r
4465                 vuint32_t EPREDIV:4;\r
4466                   vuint32_t:8;\r
4467                 vuint32_t EMFD:8;\r
4468             } B;\r
4469         } ESYNCR1;\r
4470 \r
4471         union {\r
4472             vuint32_t R;\r
4473             struct {\r
4474                 vuint32_t:8;\r
4475                 vuint32_t LOCEN:1;\r
4476                 vuint32_t LOLRE:1;\r
4477                 vuint32_t LOCRE:1;\r
4478                 vuint32_t LOLIRQ:1;\r
4479                 vuint32_t LOCIRQ:1;\r
4480                   vuint32_t:1;\r
4481                 vuint32_t ERATE:2;\r
4482                   vuint32_t:5;\r
4483                 vuint32_t EDEPTH:3;\r
4484                   vuint32_t:2;\r
4485                 vuint32_t ERFD:6;\r
4486             } B;\r
4487         } ESYNCR2;\r
4488 \r
4489     };\r
4490 /*************************************************************************/\r
4491 /*                          MODULE : i2c                                 */\r
4492 /*************************************************************************/\r
4493     struct I2C_tag {\r
4494         union {\r
4495             vuint8_t R;\r
4496             struct {\r
4497                 vuint8_t AD:7;\r
4498                   vuint8_t:1;\r
4499             } B;\r
4500         } IBAD;                 /* Module Bus Address Register */\r
4501 \r
4502         union {\r
4503             vuint8_t R;\r
4504             struct {\r
4505                 vuint8_t MULT:2;\r
4506                 vuint8_t ICR:6;\r
4507             } B;\r
4508         } IBFD;                 /* Module Bus Frequency Register */\r
4509 \r
4510         union {\r
4511             vuint8_t R;\r
4512             struct {\r
4513                 vuint8_t MDIS:1;\r
4514                 vuint8_t IBIE:1;\r
4515                 vuint8_t MS:1;\r
4516                 vuint8_t TX:1;\r
4517                 vuint8_t NOACK:1;\r
4518                 vuint8_t RSTA:1;\r
4519                 vuint8_t DMAEN:1;\r
4520                   vuint8_t:1;\r
4521             } B;\r
4522         } IBCR;                 /* Module Bus Control Register */\r
4523 \r
4524         union {\r
4525             vuint8_t R;\r
4526             struct {\r
4527                 vuint8_t TCF:1;\r
4528                 vuint8_t IAAS:1;\r
4529                 vuint8_t IBB:1;\r
4530                 vuint8_t IBAL:1;\r
4531                   vuint8_t:1;\r
4532                 vuint8_t SRW:1;\r
4533                 vuint8_t IBIF:1;\r
4534                 vuint8_t RXAK:1;\r
4535             } B;\r
4536         } IBSR;                 /* Module Status Register */\r
4537 \r
4538         union {\r
4539             vuint8_t R;\r
4540             struct {\r
4541                 vuint8_t DATA:8;\r
4542             } B;\r
4543         } IBDR;                 /* Module Data Register */\r
4544 \r
4545         union {\r
4546             vuint8_t R;\r
4547             struct {\r
4548                 vuint8_t BIIE:1;\r
4549                   vuint8_t:7;\r
4550             } B;\r
4551         } IBIC;                 /* Module Interrupt Configuration Register */\r
4552 \r
4553     };                          /* end of i2c_tag */\r
4554 /*************************************************************************/\r
4555 /*                          MODULE : INTC                                */\r
4556 /*************************************************************************/\r
4557     struct INTC_tag {\r
4558         union {\r
4559             vuint32_t R;\r
4560             struct {\r
4561                 vuint32_t:18;\r
4562                 vuint32_t VTES_PRC1:1;\r
4563                   vuint32_t:4;\r
4564                 vuint32_t HVEN_PRC1:1;\r
4565                   vuint32_t:2;\r
4566                 vuint32_t VTES_PRC0:1;\r
4567                   vuint32_t:4;\r
4568                 vuint32_t HVEN_PRC0:1;\r
4569             } B;\r
4570         } MCR;                  /* Module Configuration Register */\r
4571 \r
4572         int32_t INTC_reserved1;\r
4573 \r
4574         union {\r
4575             vuint32_t R;\r
4576             struct {\r
4577                 vuint32_t:28;\r
4578                 vuint32_t PRI:4;\r
4579             } B;\r
4580         } CPR_PRC0;             /* Processor 0 (Z6) Current Priority Register */\r
4581 \r
4582         union {\r
4583             vuint32_t R;\r
4584             struct {\r
4585                 vuint32_t:28;\r
4586                 vuint32_t PRI:4;\r
4587             } B;\r
4588         } CPR_PRC1;             /* Processor 1 (Z0) Current Priority Register */\r
4589 \r
4590         union {\r
4591             vuint32_t R;\r
4592             struct {\r
4593                 vuint32_t VTBA_PRC0:21;\r
4594                 vuint32_t INTVEC_PRC0:9;\r
4595                   vuint32_t:2;\r
4596             } B;\r
4597         } IACKR_PRC0;           /* Processor 0 (Z6) Interrupt Acknowledge Register */\r
4598 \r
4599         union {\r
4600             vuint32_t R;\r
4601             struct {\r
4602                 vuint32_t VTBA_PRC1:21;\r
4603                 vuint32_t INTVEC_PRC1:9;\r
4604                   vuint32_t:2;\r
4605             } B;\r
4606         } IACKR_PRC1;           /* Processor 1 (Z0) Interrupt Acknowledge Register */\r
4607 \r
4608         union {\r
4609             vuint32_t R;\r
4610             struct {\r
4611                 vuint32_t:32;\r
4612             } B;\r
4613         } EOIR_PRC0;            /* Processor 0 End of Interrupt Register */\r
4614 \r
4615         union {\r
4616             vuint32_t R;\r
4617             struct {\r
4618                 vuint32_t:32;\r
4619             } B;\r
4620         } EOIR_PRC1;            /* Processor 1 End of Interrupt Register */\r
4621 \r
4622         union {\r
4623             vuint8_t R;\r
4624             struct {\r
4625                 vuint8_t:6;\r
4626                 vuint8_t SET:1;\r
4627                 vuint8_t CLR:1;\r
4628             } B;\r
4629         } SSCIR[8];             /* Software Set/Clear Interruput Register */\r
4630 \r
4631         uint32_t intc_reserved2[6];\r
4632 \r
4633         union {\r
4634             vuint8_t R;\r
4635             struct {\r
4636                 vuint8_t PRC_SEL:2;\r
4637                   vuint8_t:2;\r
4638                 vuint8_t PRI:4;\r
4639             } B;\r
4640         } PSR[316];             /* Software Set/Clear Interrupt Register */\r
4641 \r
4642     };                          /* end of INTC_tag */\r
4643 /*************************************************************************/\r
4644 /*                           MODULE : MLB                                */\r
4645 /*************************************************************************/\r
4646     struct MLB_tag {\r
4647 \r
4648         union {\r
4649             vuint32_t R;\r
4650             struct {\r
4651                 vuint32_t MDE:1;\r
4652                 vuint32_t LBM:1;\r
4653                 vuint32_t MCS:2;\r
4654                   vuint32_t:1;\r
4655                 vuint32_t MLK:1;\r
4656                 vuint32_t MLE:1;\r
4657                 vuint32_t MHRE:1;\r
4658                 vuint32_t MRS:1;\r
4659                   vuint32_t:15;\r
4660                 vuint32_t MDA:8;\r
4661             } B;\r
4662         } DCCR;                 /* Device Control Configuration Register */\r
4663 \r
4664         union {\r
4665             vuint32_t R;\r
4666             struct {\r
4667                 vuint32_t:24;\r
4668                 vuint32_t SSRE:1;\r
4669                 vuint32_t SDMU:1;\r
4670                 vuint32_t SDML:1;\r
4671                 vuint32_t SDSC:1;\r
4672                 vuint32_t SDCS:1;\r
4673                 vuint32_t SDNU:1;\r
4674                 vuint32_t SDNL:1;\r
4675                 vuint32_t SDR:1;\r
4676             } B;\r
4677         } SSCR;                 /* MLB Blank Register */\r
4678 \r
4679         union {\r
4680             vuint32_t R;\r
4681             struct {\r
4682                 vuint32_t MSD:32;\r
4683             } B;\r
4684         } SDCR;                 /* MLB Status Register */\r
4685 \r
4686         union {\r
4687             vuint32_t R;\r
4688             struct {\r
4689                 vuint32_t:25;\r
4690                 vuint32_t SMMU:1;\r
4691                 vuint32_t SMML:1;\r
4692                 vuint32_t SMSC:1;\r
4693                 vuint32_t SMCS:1;\r
4694                 vuint32_t SMNU:1;\r
4695                 vuint32_t SMNL:1;\r
4696                 vuint32_t SMR:1;\r
4697             } B;\r
4698         } SMCR;                 /* RX Control Channel Address Register */\r
4699 \r
4700         uint32_t MLB_reserved1[3];\r
4701 \r
4702         union {\r
4703             vuint32_t R;\r
4704             struct {\r
4705                 vuint32_t UMA:8;\r
4706                 vuint32_t UMI:8;\r
4707                 vuint32_t MMA:8;\r
4708                 vuint32_t MMI:8;\r
4709             } B;\r
4710         } VCCR;                 /* Version Control Configuration Register */\r
4711 \r
4712         union {\r
4713             vuint32_t R;\r
4714             struct {\r
4715                 vuint32_t SRBA:16;\r
4716                 vuint32_t STBA:16;\r
4717             } B;\r
4718         } SBCR;                 /* Sync Base Address Config Register */\r
4719 \r
4720         union {\r
4721             vuint32_t R;\r
4722             struct {\r
4723                 vuint32_t ARBA:16;\r
4724                 vuint32_t ATBA:16;\r
4725             } B;\r
4726         } ABCR;                 /* Async Base Address Channel Config Register */\r
4727 \r
4728         union {\r
4729             vuint32_t R;\r
4730             struct {\r
4731                 vuint32_t CRBA:16;\r
4732                 vuint32_t CTBA:16;\r
4733             } B;\r
4734         } CBCR;                 /* Control Base Address Config Register */\r
4735 \r
4736         union {\r
4737             vuint32_t R;\r
4738             struct {\r
4739                 vuint32_t IRBA:16;\r
4740                 vuint32_t ITBA:16;\r
4741             } B;\r
4742         } IBCR;                 /* Isochronous Base Address Config Register */\r
4743 \r
4744         union {\r
4745             vuint32_t R;\r
4746             struct {\r
4747                 vuint32_t:16;\r
4748                 vuint32_t CSU:16;\r
4749             } B;\r
4750         } CICR;                 /* Channel Interrupt Config Register */\r
4751 \r
4752         uint32_t MLB_reserved2[3];\r
4753 \r
4754         struct mlbch_t {\r
4755 \r
4756             union {\r
4757                 vuint32_t R;\r
4758                 struct {\r
4759                     vuint32_t CE:1;\r
4760                     vuint32_t TR:1;\r
4761                     vuint32_t CT:2;\r
4762                     vuint32_t FSE_FCE:1;\r
4763                     vuint32_t MDS:2;\r
4764                       vuint32_t:2;\r
4765                     vuint32_t MLFS:1;\r
4766                       vuint32_t:1;\r
4767                     vuint32_t MBE:1;\r
4768                     vuint32_t MBS:1;\r
4769                     vuint32_t MBD:1;\r
4770                     vuint32_t MDB:1;\r
4771                     vuint32_t MPE:1;\r
4772                     vuint32_t FSCD_IPL:1;\r
4773                     vuint32_t IPL:2;\r
4774                     vuint32_t FSPC_IPL:5;\r
4775                     vuint32_t CA:8;\r
4776                 } B;\r
4777             } CECR;             /* Channel Entry Config Register */\r
4778 \r
4779             union {\r
4780                 vuint32_t R;\r
4781                 struct {\r
4782                     vuint32_t BM:1;\r
4783                     vuint32_t BF:1;\r
4784                       vuint32_t:10;\r
4785                     vuint32_t IVB:2;\r
4786                     vuint32_t GIRB_GB:1;\r
4787                     vuint32_t RDY:1;\r
4788                       vuint32_t:4;\r
4789                     vuint32_t PBS:1;\r
4790                     vuint32_t PBD:1;\r
4791                     vuint32_t PBDB:1;\r
4792                     vuint32_t PBPE:1;\r
4793                       vuint32_t:1;\r
4794                     vuint32_t LFS:1;\r
4795                     vuint32_t HBE:1;\r
4796                     vuint32_t BE:1;\r
4797                     vuint32_t CBS:1;\r
4798                     vuint32_t CBD:1;\r
4799                     vuint32_t CBDB:1;\r
4800                     vuint32_t CBPE:1;\r
4801                 } B;\r
4802             } CSCR;             /* Channel Status Config Register */\r
4803 \r
4804             union {\r
4805                 vuint32_t R;\r
4806                 struct {\r
4807                     vuint32_t BCA:16;\r
4808                     vuint32_t BFA:16;\r
4809                 } B;\r
4810             } CCBCR;            /* Channel Current Buffer Config Register */\r
4811 \r
4812             union {\r
4813                 vuint32_t R;\r
4814                 struct {\r
4815                     vuint32_t BSA:16;\r
4816                     vuint32_t BEA:16;\r
4817                 } B;\r
4818             } CNBCR;            /* Channel Next Buffer Config Register */\r
4819 \r
4820         } CH[16];\r
4821 \r
4822         uint32_t MLB_reserved3[80];\r
4823 \r
4824         union {\r
4825             vuint32_t R;\r
4826             struct {\r
4827                 vuint32_t BSA:16;\r
4828                 vuint32_t BEA:16;\r
4829             } B;\r
4830         } LCBCR[16];            /* Local Channel Buffer Config Register */\r
4831 \r
4832     };                          /* end of MLB_tag */\r
4833 /*************************************************************************/\r
4834 /*                          MODULE : MPU                                 */\r
4835 /*************************************************************************/\r
4836     struct MPU_tag {\r
4837         union {\r
4838             vuint32_t R;\r
4839             struct {\r
4840                 vuint32_t MPERR:8;\r
4841                   vuint32_t:4;\r
4842                 vuint32_t HRL:4;\r
4843                 vuint32_t NSP:4;\r
4844                 vuint32_t NGRD:4;\r
4845                   vuint32_t:7;\r
4846                 vuint32_t VLD:1;\r
4847             } B;\r
4848         } CESR;                 /* Module Control/Error Status Register */\r
4849 \r
4850         uint32_t mpu_reserved1[3];\r
4851 \r
4852         union {\r
4853             vuint32_t R;\r
4854             struct {\r
4855                 vuint32_t EADDR:32;\r
4856             } B;\r
4857         } EAR0;                 /* Error Address Register */\r
4858 \r
4859         union {\r
4860             vuint32_t R;\r
4861             struct {\r
4862                 vuint32_t EACD:16;\r
4863                 vuint32_t EPID:8;\r
4864                 vuint32_t EMN:4;\r
4865                 vuint32_t EATTR:3;\r
4866                 vuint32_t ERW:1;\r
4867             } B;\r
4868         } EDR0;                 /* Error Detail Register */\r
4869 \r
4870         union {\r
4871             vuint32_t R;\r
4872             struct {\r
4873                 vuint32_t EADDR:32;\r
4874             } B;\r
4875         } EAR1;\r
4876 \r
4877         union {\r
4878             vuint32_t R;\r
4879             struct {\r
4880                 vuint32_t EACD:16;\r
4881                 vuint32_t EPID:8;\r
4882                 vuint32_t EMN:4;\r
4883                 vuint32_t EATTR:3;\r
4884                 vuint32_t ERW:1;\r
4885             } B;\r
4886         } EDR1;\r
4887 \r
4888         union {\r
4889             vuint32_t R;\r
4890             struct {\r
4891                 vuint32_t EADDR:32;\r
4892             } B;\r
4893         } EAR2;\r
4894 \r
4895         union {\r
4896             vuint32_t R;\r
4897             struct {\r
4898                 vuint32_t EACD:16;\r
4899                 vuint32_t EPID:8;\r
4900                 vuint32_t EMN:4;\r
4901                 vuint32_t EATTR:3;\r
4902                 vuint32_t ERW:1;\r
4903             } B;\r
4904         } EDR3;\r
4905 \r
4906         union {\r
4907             vuint32_t R;\r
4908             struct {\r
4909                 vuint32_t EADDR:32;\r
4910             } B;\r
4911         } EAR3;\r
4912 \r
4913         union {\r
4914             vuint32_t R;\r
4915             struct {\r
4916                 vuint32_t EACD:16;\r
4917                 vuint32_t EPID:8;\r
4918                 vuint32_t EMN:4;\r
4919                 vuint32_t EATTR:3;\r
4920                 vuint32_t ERW:1;\r
4921             } B;\r
4922         } EDR2;\r
4923 \r
4924         uint32_t mpu_reserved2[244];\r
4925 \r
4926         struct {\r
4927             union {\r
4928                 vuint32_t R;\r
4929                 struct {\r
4930                     vuint32_t SRTADDR:27;\r
4931                       vuint32_t:5;\r
4932                 } B;\r
4933             } WORD0;            /* Region Descriptor n Word 0 */\r
4934 \r
4935             union {\r
4936                 vuint32_t R;\r
4937                 struct {\r
4938                     vuint32_t ENDADDR:27;\r
4939                       vuint32_t:5;\r
4940                 } B;\r
4941             } WORD1;            /* Region Descriptor n Word 1 */\r
4942 \r
4943             union {\r
4944                 vuint32_t R;\r
4945                 struct {\r
4946                     vuint32_t:2;\r
4947                     vuint32_t M6RE:1;\r
4948                     vuint32_t M6WE:1;\r
4949                     vuint32_t M5RE:1;\r
4950                     vuint32_t M5WE:1;\r
4951                     vuint32_t M4RE:1;\r
4952                     vuint32_t M4WE:1;\r
4953                       vuint32_t:6;\r
4954                     vuint32_t M2PE:1;\r
4955                     vuint32_t M2SM:2;\r
4956                     vuint32_t M2UM:3;\r
4957                     vuint32_t M1PE:1;\r
4958                     vuint32_t M1SM:2;\r
4959                     vuint32_t M1UM:3;\r
4960                     vuint32_t M0PE:1;\r
4961                     vuint32_t M0SM:2;\r
4962                     vuint32_t M0UM:3;\r
4963                 } B;\r
4964             } WORD2;            /* Region Descriptor n Word 2 */\r
4965 \r
4966             union {\r
4967                 vuint32_t R;\r
4968                 struct {\r
4969                     vuint32_t PID:8;\r
4970                     vuint32_t PIDMASK:8;\r
4971                       vuint32_t:15;\r
4972                     vuint32_t VLD:1;\r
4973                 } B;\r
4974             } WORD3;            /* Region Descriptor n Word 3 */\r
4975 \r
4976         } RGD[16];\r
4977 \r
4978         uint32_t mpu_reserved3[192];\r
4979 \r
4980         union {\r
4981             vuint32_t R;\r
4982             struct {\r
4983                 vuint32_t:2;\r
4984                 vuint32_t M6RE:1;\r
4985                 vuint32_t M6WE:1;\r
4986                 vuint32_t M5RE:1;\r
4987                 vuint32_t M5WE:1;\r
4988                 vuint32_t M4RE:1;\r
4989                 vuint32_t M4WE:1;\r
4990                   vuint32_t:6;\r
4991                 vuint32_t M2PE:1;\r
4992                 vuint32_t M2SM:2;\r
4993                 vuint32_t M2UM:3;\r
4994                 vuint32_t M1PE:1;\r
4995                 vuint32_t M1SM:2;\r
4996                 vuint32_t M1UM:3;\r
4997                 vuint32_t M0PE:1;\r
4998                 vuint32_t M0SM:2;\r
4999                 vuint32_t M0UM:3;\r
5000             } B;\r
5001         } RGDAAC[16];           /* Region Descriptor Alternate Access Control n */\r
5002     };\r
5003 /**************************************************************************/\r
5004 /*                          MODULE : pit                                  */\r
5005 /**************************************************************************/\r
5006     struct PIT_tag {\r
5007 \r
5008         union {\r
5009             vuint32_t R;\r
5010             struct {\r
5011                 vuint32_t:30;\r
5012                 vuint32_t MDIS:1;\r
5013                 vuint32_t FRZ:1;\r
5014             } B;\r
5015         } MCR;\r
5016 \r
5017         uint32_t pit_reserved1[63];\r
5018 \r
5019         union {\r
5020             vuint32_t R;\r
5021             struct {\r
5022                 vuint32_t TSV:32;\r
5023             } B;\r
5024         } LDVAL1;\r
5025 \r
5026         union {\r
5027             vuint32_t R;\r
5028             struct {\r
5029                 vuint32_t TVL:32;\r
5030             } B;\r
5031         } CVAL1;\r
5032 \r
5033         union {\r
5034             vuint32_t R;\r
5035             struct {\r
5036                 vuint32_t:30;\r
5037                 vuint32_t TIE:1;\r
5038                 vuint32_t TEN:1;\r
5039             } B;\r
5040         } TCTRL1;\r
5041 \r
5042         union {\r
5043             vuint32_t R;\r
5044             struct {\r
5045                 vuint32_t:31;\r
5046                 vuint32_t TIF:1;\r
5047             } B;\r
5048         } TFLG1;\r
5049 \r
5050         union {\r
5051             vuint32_t R;\r
5052             struct {\r
5053                 vuint32_t TSV:32;\r
5054             } B;\r
5055         } LDVAL2;\r
5056 \r
5057         union {\r
5058             vuint32_t R;\r
5059             struct {\r
5060                 vuint32_t TVL:32;\r
5061             } B;\r
5062         } CVAL2;\r
5063 \r
5064         union {\r
5065             vuint32_t R;\r
5066             struct {\r
5067                 vuint32_t:30;\r
5068                 vuint32_t TIE:1;\r
5069                 vuint32_t TEN:1;\r
5070             } B;\r
5071         } TCTRL2;\r
5072 \r
5073         union {\r
5074             vuint32_t R;\r
5075             struct {\r
5076                 vuint32_t:31;\r
5077                 vuint32_t TIF:1;\r
5078             } B;\r
5079         } TFLG2;\r
5080 \r
5081         union {\r
5082             vuint32_t R;\r
5083             struct {\r
5084                 vuint32_t TSV:32;\r
5085             } B;\r
5086         } LDVAL3;\r
5087 \r
5088         union {\r
5089             vuint32_t R;\r
5090             struct {\r
5091                 vuint32_t TVL:32;\r
5092             } B;\r
5093         } CVAL3;\r
5094 \r
5095         union {\r
5096             vuint32_t R;\r
5097             struct {\r
5098                 vuint32_t:30;\r
5099                 vuint32_t TIE:1;\r
5100                 vuint32_t TEN:1;\r
5101             } B;\r
5102         } TCTRL3;\r
5103 \r
5104         union {\r
5105             vuint32_t R;\r
5106             struct {\r
5107                 vuint32_t:31;\r
5108                 vuint32_t TIF:1;\r
5109             } B;\r
5110         } TFLG3;\r
5111 \r
5112         union {\r
5113             vuint32_t R;\r
5114             struct {\r
5115                 vuint32_t TSV:32;\r
5116             } B;\r
5117         } LDVAL4;\r
5118 \r
5119         union {\r
5120             vuint32_t R;\r
5121             struct {\r
5122                 vuint32_t TVL:32;\r
5123             } B;\r
5124         } CVAL4;\r
5125 \r
5126         union {\r
5127             vuint32_t R;\r
5128             struct {\r
5129                 vuint32_t:30;\r
5130                 vuint32_t TIE:1;\r
5131                 vuint32_t TEN:1;\r
5132             } B;\r
5133         } TCTRL4;\r
5134 \r
5135         union {\r
5136             vuint32_t R;\r
5137             struct {\r
5138                 vuint32_t:31;\r
5139                 vuint32_t TIF:1;\r
5140             } B;\r
5141         } TFLG4;\r
5142 \r
5143         union {\r
5144             vuint32_t R;\r
5145             struct {\r
5146                 vuint32_t TSV:32;\r
5147             } B;\r
5148         } LDVAL5;\r
5149 \r
5150         union {\r
5151             vuint32_t R;\r
5152             struct {\r
5153                 vuint32_t TVL:32;\r
5154             } B;\r
5155         } CVAL5;\r
5156 \r
5157         union {\r
5158             vuint32_t R;\r
5159             struct {\r
5160                 vuint32_t:30;\r
5161                 vuint32_t TIE:1;\r
5162                 vuint32_t TEN:1;\r
5163             } B;\r
5164         } TCTRL5;\r
5165 \r
5166         union {\r
5167             vuint32_t R;\r
5168             struct {\r
5169                 vuint32_t:31;\r
5170                 vuint32_t TIF:1;\r
5171             } B;\r
5172         } TFLG5;\r
5173 \r
5174         union {\r
5175             vuint32_t R;\r
5176             struct {\r
5177                 vuint32_t TSV:32;\r
5178             } B;\r
5179         } LDVAL6;\r
5180 \r
5181         union {\r
5182             vuint32_t R;\r
5183             struct {\r
5184                 vuint32_t TVL:32;\r
5185             } B;\r
5186         } CVAL6;\r
5187 \r
5188         union {\r
5189             vuint32_t R;\r
5190             struct {\r
5191                 vuint32_t:30;\r
5192                 vuint32_t TIE:1;\r
5193                 vuint32_t TEN:1;\r
5194             } B;\r
5195         } TCTRL6;\r
5196 \r
5197         union {\r
5198             vuint32_t R;\r
5199             struct {\r
5200                 vuint32_t:31;\r
5201                 vuint32_t TIF:1;\r
5202             } B;\r
5203         } TFLG6;\r
5204 \r
5205         union {\r
5206             vuint32_t R;\r
5207             struct {\r
5208                 vuint32_t TSV:32;\r
5209             } B;\r
5210         } LDVAL7;\r
5211 \r
5212         union {\r
5213             vuint32_t R;\r
5214             struct {\r
5215                 vuint32_t TVL:32;\r
5216             } B;\r
5217         } CVAL7;\r
5218 \r
5219         union {\r
5220             vuint32_t R;\r
5221             struct {\r
5222                 vuint32_t:30;\r
5223                 vuint32_t TIE:1;\r
5224                 vuint32_t TEN:1;\r
5225             } B;\r
5226         } TCTRL7;\r
5227 \r
5228         union {\r
5229             vuint32_t R;\r
5230             struct {\r
5231                 vuint32_t:31;\r
5232                 vuint32_t TIF:1;\r
5233             } B;\r
5234         } TFLG7;\r
5235 \r
5236         union {\r
5237             vuint32_t R;\r
5238             struct {\r
5239                 vuint32_t TSV:32;\r
5240             } B;\r
5241         } LDVAL8;\r
5242 \r
5243         union {\r
5244             vuint32_t R;\r
5245             struct {\r
5246                 vuint32_t TVL:32;\r
5247             } B;\r
5248         } CVAL8;\r
5249 \r
5250         union {\r
5251             vuint32_t R;\r
5252             struct {\r
5253                 vuint32_t:30;\r
5254                 vuint32_t TIE:1;\r
5255                 vuint32_t TEN:1;\r
5256             } B;\r
5257         } TCTRL8;\r
5258 \r
5259         union {\r
5260             vuint32_t R;\r
5261             struct {\r
5262                 vuint32_t:31;\r
5263                 vuint32_t TIF:1;\r
5264             } B;\r
5265         } TFLG8;\r
5266     };\r
5267 /**************************************************************************/\r
5268 /*                          MODULE : sem4                                 */\r
5269 /**************************************************************************/\r
5270     struct SEMA4_tag {\r
5271         union {\r
5272             vuint8_t R;\r
5273             struct {\r
5274                 vuint8_t:6;\r
5275                 vuint8_t GTFSM:2;\r
5276             } B;\r
5277         } GATE[16];             /* Gate n Register */\r
5278 \r
5279         uint32_t sema4_reserved1[12];   /* {0x40-0x10}/4 = 0x0C */\r
5280 \r
5281         union {\r
5282             vuint16_t R;\r
5283             struct {\r
5284                 vuint16_t INE0:1;\r
5285                 vuint16_t INE1:1;\r
5286                 vuint16_t INE2:1;\r
5287                 vuint16_t INE3:1;\r
5288                 vuint16_t INE4:1;\r
5289                 vuint16_t INE5:1;\r
5290                 vuint16_t INE6:1;\r
5291                 vuint16_t INE7:1;\r
5292                 vuint16_t INE8:1;\r
5293                 vuint16_t INE9:1;\r
5294                 vuint16_t INE10:1;\r
5295                 vuint16_t INE11:1;\r
5296                 vuint16_t INE12:1;\r
5297                 vuint16_t INE13:1;\r
5298                 vuint16_t INE14:1;\r
5299                 vuint16_t INE15:1;\r
5300             } B;\r
5301         } CP0INE;\r
5302 \r
5303         uint16_t sema4_reserved2[3];    /* {0x48-0x42}/2 = 0x03 */\r
5304 \r
5305         union {\r
5306             vuint16_t R;\r
5307             struct {\r
5308                 vuint16_t INE0:1;\r
5309                 vuint16_t INE1:1;\r
5310                 vuint16_t INE2:1;\r
5311                 vuint16_t INE3:1;\r
5312                 vuint16_t INE4:1;\r
5313                 vuint16_t INE5:1;\r
5314                 vuint16_t INE6:1;\r
5315                 vuint16_t INE7:1;\r
5316                 vuint16_t INE8:1;\r
5317                 vuint16_t INE9:1;\r
5318                 vuint16_t INE10:1;\r
5319                 vuint16_t INE11:1;\r
5320                 vuint16_t INE12:1;\r
5321                 vuint16_t INE13:1;\r
5322                 vuint16_t INE14:1;\r
5323                 vuint16_t INE15:1;\r
5324             } B;\r
5325         } CP1INE;\r
5326 \r
5327         uint16_t sema4_reserved3[27];   /* {0x80-0x4A}/2 = 0x1B */\r
5328 \r
5329         union {\r
5330             vuint16_t R;\r
5331             struct {\r
5332                 vuint16_t GN0:1;\r
5333                 vuint16_t GN1:1;\r
5334                 vuint16_t GN2:1;\r
5335                 vuint16_t GN3:1;\r
5336                 vuint16_t GN4:1;\r
5337                 vuint16_t GN5:1;\r
5338                 vuint16_t GN6:1;\r
5339                 vuint16_t GN7:1;\r
5340                 vuint16_t GN8:1;\r
5341                 vuint16_t GN9:1;\r
5342                 vuint16_t GN10:1;\r
5343                 vuint16_t GN11:1;\r
5344                 vuint16_t GN12:1;\r
5345                 vuint16_t GN13:1;\r
5346                 vuint16_t GN14:1;\r
5347                 vuint16_t GN15:1;\r
5348             } B;\r
5349         } CP0NTF;\r
5350 \r
5351         uint16_t sema4_reserved4[3];    /* {0x88-0x82}/2 = 0x03 */\r
5352 \r
5353         union {\r
5354             vuint16_t R;\r
5355             struct {\r
5356                 vuint16_t GN0:1;\r
5357                 vuint16_t GN1:1;\r
5358                 vuint16_t GN2:1;\r
5359                 vuint16_t GN3:1;\r
5360                 vuint16_t GN4:1;\r
5361                 vuint16_t GN5:1;\r
5362                 vuint16_t GN6:1;\r
5363                 vuint16_t GN7:1;\r
5364                 vuint16_t GN8:1;\r
5365                 vuint16_t GN9:1;\r
5366                 vuint16_t GN10:1;\r
5367                 vuint16_t GN11:1;\r
5368                 vuint16_t GN12:1;\r
5369                 vuint16_t GN13:1;\r
5370                 vuint16_t GN14:1;\r
5371                 vuint16_t GN15:1;\r
5372             } B;\r
5373         } CP1NTF;\r
5374 \r
5375         uint16_t sema4_reserved5[59];   /* {0x100-0x8A}/2 = 0x3B */\r
5376 \r
5377         union {\r
5378             vuint16_t R;\r
5379             struct {\r
5380                 vuint16_t:2;\r
5381                 vuint16_t RSTGSM:2;\r
5382                   vuint16_t:1;\r
5383                 vuint16_t RSTGMS:3;\r
5384                 vuint16_t RSTGTN:8;\r
5385             } B;\r
5386         } RSTGT;\r
5387 \r
5388         uint16_t sema4_reserved6;\r
5389 \r
5390         union {\r
5391             vuint16_t R;\r
5392             struct {\r
5393                 vuint16_t:2;\r
5394                 vuint16_t RSTNSM:2;\r
5395                   vuint16_t:1;\r
5396                 vuint16_t RSTNMS:3;\r
5397                 vuint16_t RSTNTN:8;\r
5398             } B;\r
5399         } RSTNTF;\r
5400     };\r
5401 /*************************************************************************/\r
5402 /*                            MODULE : SIU                               */\r
5403 /*************************************************************************/\r
5404     struct SIU_tag {\r
5405 \r
5406         int32_t SIU_reserved0;\r
5407 \r
5408         union {\r
5409             vuint32_t R;\r
5410             struct {\r
5411                 vuint32_t PARTNUM:16;\r
5412                 vuint32_t CSP:1;\r
5413                 vuint32_t PKG:5;\r
5414                   vuint32_t:2;\r
5415                 vuint32_t MASKNUM_MAJOR:4;\r
5416                 vuint32_t MASKNUM_MINOR:4;\r
5417             } B;\r
5418         } MIDR;                 /* MCU ID Register */\r
5419 \r
5420         int32_t SIU_reserved1;\r
5421 \r
5422         union {\r
5423             vuint32_t R;\r
5424             struct {\r
5425                 vuint32_t PORS:1;\r
5426                 vuint32_t ERS:1;\r
5427                 vuint32_t LLRS:1;\r
5428                 vuint32_t LCRS:1;\r
5429                 vuint32_t WDRS:1;\r
5430                 vuint32_t CRS:1;\r
5431                   vuint32_t:8;\r
5432                 vuint32_t SSRS:1;\r
5433                   vuint32_t:15;\r
5434                 vuint32_t BOOTCFG:1;\r
5435                   vuint32_t:1;\r
5436             } B;\r
5437         } RSR;                  /* Reset Status Register */\r
5438 \r
5439         union {\r
5440             vuint32_t R;\r
5441             struct {\r
5442                 vuint32_t SSR:1;\r
5443                   vuint32_t:15;\r
5444                 vuint32_t CRE0:1;\r
5445                 vuint32_t CRE1:1;\r
5446                   vuint32_t:6;\r
5447                 vuint32_t SSRL:1;\r
5448                   vuint32_t:7;\r
5449             } B;\r
5450         } SRCR;                 /* System Reset Control Register */\r
5451 \r
5452         union {\r
5453             vuint32_t R;\r
5454             struct {\r
5455                 vuint32_t NMI0:1;\r
5456                 vuint32_t NMI1:1;\r
5457                   vuint32_t:14;\r
5458                 vuint32_t EIF15:1;\r
5459                 vuint32_t EIF14:1;\r
5460                 vuint32_t EIF13:1;\r
5461                 vuint32_t EIF12:1;\r
5462                 vuint32_t EIF11:1;\r
5463                 vuint32_t EIF10:1;\r
5464                 vuint32_t EIF9:1;\r
5465                 vuint32_t EIF8:1;\r
5466                 vuint32_t EIF7:1;\r
5467                 vuint32_t EIF6:1;\r
5468                 vuint32_t EIF5:1;\r
5469                 vuint32_t EIF4:1;\r
5470                 vuint32_t EIF3:1;\r
5471                 vuint32_t EIF2:1;\r
5472                 vuint32_t EIF1:1;\r
5473                 vuint32_t EIF0:1;\r
5474             } B;\r
5475         } EISR;                 /* External Interrupt Status Register */\r
5476 \r
5477         union {\r
5478             vuint32_t R;\r
5479             struct {\r
5480                 vuint32_t:16;\r
5481                 vuint32_t EIRE15:1;\r
5482                 vuint32_t EIRE14:1;\r
5483                 vuint32_t EIRE13:1;\r
5484                 vuint32_t EIRE12:1;\r
5485                 vuint32_t EIRE11:1;\r
5486                 vuint32_t EIRE10:1;\r
5487                 vuint32_t EIRE9:1;\r
5488                 vuint32_t EIRE8:1;\r
5489                 vuint32_t EIRE7:1;\r
5490                 vuint32_t EIRE6:1;\r
5491                 vuint32_t EIRE5:1;\r
5492                 vuint32_t EIRE4:1;\r
5493                 vuint32_t EIRE3:1;\r
5494                 vuint32_t EIRE2:1;\r
5495                 vuint32_t EIRE1:1;\r
5496                 vuint32_t EIRE0:1;\r
5497             } B;\r
5498         } DIRER;                /* DMA/Interrupt Request Enable Register */\r
5499 \r
5500         union {\r
5501             vuint32_t R;\r
5502             struct {\r
5503                 vuint32_t:30;\r
5504                 vuint32_t DIRS1:1;\r
5505                 vuint32_t DIRS0:1;\r
5506             } B;\r
5507         } DIRSR;                /* DMA/Interrupt Select Register */\r
5508 \r
5509         union {\r
5510             vuint32_t R;\r
5511             struct {\r
5512                 vuint32_t:16;\r
5513                 vuint32_t OVF15:1;\r
5514                 vuint32_t OVF14:1;\r
5515                 vuint32_t OVF13:1;\r
5516                 vuint32_t OVF12:1;\r
5517                 vuint32_t OVF11:1;\r
5518                 vuint32_t OVF10:1;\r
5519                 vuint32_t OVF9:1;\r
5520                 vuint32_t OVF8:1;\r
5521                 vuint32_t OVF7:1;\r
5522                 vuint32_t OVF6:1;\r
5523                 vuint32_t OVF5:1;\r
5524                 vuint32_t OVF4:1;\r
5525                 vuint32_t OVF3:1;\r
5526                 vuint32_t OVF2:1;\r
5527                 vuint32_t OVF1:1;\r
5528                 vuint32_t OVF0:1;\r
5529             } B;\r
5530         } OSR;                  /* Overrun Status Register */\r
5531 \r
5532         union {\r
5533             vuint32_t R;\r
5534             struct {\r
5535                 vuint32_t:16;\r
5536                 vuint32_t ORE15:1;\r
5537                 vuint32_t ORE14:1;\r
5538                 vuint32_t ORE13:1;\r
5539                 vuint32_t ORE12:1;\r
5540                 vuint32_t ORE11:1;\r
5541                 vuint32_t ORE10:1;\r
5542                 vuint32_t ORE9:1;\r
5543                 vuint32_t ORE8:1;\r
5544                 vuint32_t ORE7:1;\r
5545                 vuint32_t ORE6:1;\r
5546                 vuint32_t ORE5:1;\r
5547                 vuint32_t ORE4:1;\r
5548                 vuint32_t ORE3:1;\r
5549                 vuint32_t ORE2:1;\r
5550                 vuint32_t ORE1:1;\r
5551                 vuint32_t ORE0:1;\r
5552             } B;\r
5553         } ORER;                 /* Overrun Request Enable Register */\r
5554 \r
5555         union {\r
5556             vuint32_t R;\r
5557             struct {\r
5558                 vuint32_t NREE0:1;\r
5559                 vuint32_t NREE1:1;\r
5560                   vuint32_t:14;\r
5561                 vuint32_t IREE15:1;\r
5562                 vuint32_t IREE14:1;\r
5563                 vuint32_t IREE13:1;\r
5564                 vuint32_t IREE12:1;\r
5565                 vuint32_t IREE11:1;\r
5566                 vuint32_t IREE10:1;\r
5567                 vuint32_t IREE9:1;\r
5568                 vuint32_t IREE8:1;\r
5569                 vuint32_t IREE7:1;\r
5570                 vuint32_t IREE6:1;\r
5571                 vuint32_t IREE5:1;\r
5572                 vuint32_t IREE4:1;\r
5573                 vuint32_t IREE3:1;\r
5574                 vuint32_t IREE2:1;\r
5575                 vuint32_t IREE1:1;\r
5576                 vuint32_t IREE0:1;\r
5577             } B;\r
5578         } IREER;                /* External IRQ Rising-Edge Event Enable Register */\r
5579 \r
5580         union {\r
5581             vuint32_t R;\r
5582             struct {\r
5583                 vuint32_t NFEE0:1;\r
5584                 vuint32_t NFEE1:1;\r
5585                   vuint32_t:14;\r
5586                 vuint32_t IFEE15:1;\r
5587                 vuint32_t IFEE14:1;\r
5588                 vuint32_t IFEE13:1;\r
5589                 vuint32_t IFEE12:1;\r
5590                 vuint32_t IFEE11:1;\r
5591                 vuint32_t IFEE10:1;\r
5592                 vuint32_t IFEE9:1;\r
5593                 vuint32_t IFEE8:1;\r
5594                 vuint32_t IFEE7:1;\r
5595                 vuint32_t IFEE6:1;\r
5596                 vuint32_t IFEE5:1;\r
5597                 vuint32_t IFEE4:1;\r
5598                 vuint32_t IFEE3:1;\r
5599                 vuint32_t IFEE2:1;\r
5600                 vuint32_t IFEE1:1;\r
5601                 vuint32_t IFEE0:1;\r
5602             } B;\r
5603         } IFEER;                /* External IRQ Falling-Edge Event Enable Register */\r
5604 \r
5605         union {\r
5606             vuint32_t R;\r
5607             struct {\r
5608                 vuint32_t:28;\r
5609                 vuint32_t DFL:4;\r
5610             } B;\r
5611         } IDFR;                 /* External IRQ Digital Filter Register */\r
5612 \r
5613         union {\r
5614             vuint32_t R;\r
5615             struct {\r
5616                 vuint32_t FNMI0:1;\r
5617                 vuint32_t FNMI1:1;\r
5618                   vuint32_t:14;\r
5619                 vuint32_t FI15:1;\r
5620                 vuint32_t FI14:1;\r
5621                 vuint32_t FI13:1;\r
5622                 vuint32_t FI12:1;\r
5623                 vuint32_t FI11:1;\r
5624                 vuint32_t FI10:1;\r
5625                 vuint32_t FI9:1;\r
5626                 vuint32_t FI8:1;\r
5627                 vuint32_t FI7:1;\r
5628                 vuint32_t FI6:1;\r
5629                 vuint32_t FI5:1;\r
5630                 vuint32_t FI4:1;\r
5631                 vuint32_t FI3:1;\r
5632                 vuint32_t FI2:1;\r
5633                 vuint32_t FI1:1;\r
5634                 vuint32_t FI0:1;\r
5635             } B;\r
5636         } IFIR;                 /* External IRQ Filtered Input Register */\r
5637 \r
5638         int32_t SIU_reserved2[2];\r
5639 \r
5640         union {\r
5641             vuint16_t R;\r
5642             struct {\r
5643                 vuint16_t:4;\r
5644                 vuint16_t PA:2;\r
5645                 vuint16_t OBE:1;\r
5646                 vuint16_t IBE:1;\r
5647                   vuint16_t:2;\r
5648                 vuint16_t ODE:1;\r
5649                 vuint16_t HYS:1;\r
5650                 vuint16_t SRC:2;\r
5651                 vuint16_t WPE:1;\r
5652                 vuint16_t WPS:1;\r
5653             } B;\r
5654         } PCR[155];             /* Pad Configuration Registers */\r
5655 \r
5656         int32_t SIU_reserved3[290];\r
5657 \r
5658         union {\r
5659             vuint8_t R;\r
5660             struct {\r
5661                 vuint8_t:7;\r
5662                 vuint8_t PDO:1;\r
5663             } B;\r
5664         } GPDO[155];            /* GPIO Pin Data Output Registers */\r
5665 \r
5666         int8_t SIU_reserved4[357];\r
5667 \r
5668         union {\r
5669             vuint8_t R;\r
5670             struct {\r
5671                 vuint8_t:7;\r
5672                 vuint8_t PDI:1;\r
5673             } B;\r
5674         } GPDI[155];            /* GPIO Pin Data Input Registers */\r
5675 \r
5676         int32_t SIU_reserved5[26];\r
5677 \r
5678         union {\r
5679             vuint32_t R;\r
5680             struct {\r
5681                 vuint32_t ESEL15:2;\r
5682                 vuint32_t ESEL14:2;\r
5683                 vuint32_t ESEL13:2;\r
5684                 vuint32_t ESEL12:2;\r
5685                 vuint32_t ESEL11:2;\r
5686                 vuint32_t ESEL10:2;\r
5687                 vuint32_t ESEL9:2;\r
5688                 vuint32_t ESEL8:2;\r
5689                 vuint32_t ESEL7:2;\r
5690                 vuint32_t ESEL6:2;\r
5691                 vuint32_t ESEL5:2;\r
5692                 vuint32_t ESEL4:2;\r
5693                 vuint32_t ESEL3:2;\r
5694                 vuint32_t ESEL2:2;\r
5695                 vuint32_t ESEL1:2;\r
5696                 vuint32_t ESEL0:2;\r
5697             } B;\r
5698         } ISEL1;                /* IMUX Register */\r
5699 \r
5700         union {\r
5701             vuint32_t R;\r
5702             struct {\r
5703                 vuint32_t ESEL15:2;\r
5704                 vuint32_t ESEL14:2;\r
5705                 vuint32_t ESEL13:2;\r
5706                 vuint32_t ESEL12:2;\r
5707                 vuint32_t ESEL11:2;\r
5708                 vuint32_t ESEL10:2;\r
5709                 vuint32_t ESEL9:2;\r
5710                 vuint32_t ESEL8:2;\r
5711                 vuint32_t ESEL7:2;\r
5712                 vuint32_t ESEL6:2;\r
5713                 vuint32_t ESEL5:2;\r
5714                 vuint32_t ESEL4:2;\r
5715                 vuint32_t ESEL3:2;\r
5716                 vuint32_t ESEL2:2;\r
5717                 vuint32_t ESEL1:2;\r
5718                 vuint32_t ESEL0:2;\r
5719             } B;\r
5720         } ISEL2;                /* IMUX Register */\r
5721 \r
5722         int32_t SIU_reserved6;\r
5723 \r
5724         union {\r
5725             vuint32_t R;\r
5726             struct {\r
5727                 vuint32_t:17;\r
5728                 vuint32_t TSEL1:7;\r
5729                   vuint32_t:1;\r
5730                 vuint32_t TSEL0:7;\r
5731             } B;\r
5732         } ISEL4;                /* IMUX Register */\r
5733 \r
5734         int32_t SIU_reserved7[27];\r
5735 \r
5736         union {\r
5737             vuint32_t R;\r
5738             struct {\r
5739                 vuint32_t:14;\r
5740                 vuint32_t MATCH:1;\r
5741                 vuint32_t DISNEX:1;\r
5742                   vuint32_t:8;\r
5743                 vuint32_t TESTLOCK:1;\r
5744                   vuint32_t:7;\r
5745             } B;\r
5746         } CCR;                  /* Chip Configuration Register Register */\r
5747 \r
5748         union {\r
5749             vuint32_t R;\r
5750             struct {\r
5751                 vuint32_t:28;\r
5752                 vuint32_t ECEN:1;\r
5753                   vuint32_t:1;\r
5754                 vuint32_t ECDF:2;\r
5755             } B;\r
5756         } ECCR;                 /* External Clock Configuration Register Register */\r
5757 \r
5758         union {\r
5759             vuint32_t R;\r
5760         } GPR0;                 /* General Purpose Register 0 */\r
5761 \r
5762         union {\r
5763             vuint32_t R;\r
5764         } GPR1;                 /* General Purpose Register 1 */\r
5765 \r
5766         union {\r
5767             vuint32_t R;\r
5768         } GPR2;                 /* General Purpose Register 2 */\r
5769 \r
5770         union {\r
5771             vuint32_t R;\r
5772         } GPR3;                 /* General Purpose Register 3 */\r
5773 \r
5774         int32_t SIU_reserved8[2];\r
5775 \r
5776         union {\r
5777             vuint32_t R;\r
5778             struct {\r
5779                 vuint32_t SYSCLKSEL:2;\r
5780                 vuint32_t SYSCLKDIV:3;\r
5781                   vuint32_t:19;\r
5782                 vuint32_t LPCLKDIV3:2;\r
5783                 vuint32_t LPCLKDIV2:2;\r
5784                 vuint32_t LPCLKDIV1:2;\r
5785                 vuint32_t LPCLKDIV0:2;\r
5786             } B;\r
5787         } SYSCLK;               /* System CLock Register */\r
5788 \r
5789         union {\r
5790             vuint32_t R;\r
5791             struct {\r
5792                 vuint32_t:6;\r
5793                 vuint32_t HLT6:1;\r
5794                 vuint32_t HLT7:1;\r
5795                   vuint32_t:1;\r
5796                 vuint32_t HLT9:1;\r
5797                 vuint32_t HLT10:1;\r
5798                 vuint32_t HLT11:1;\r
5799                 vuint32_t HLT12:1;\r
5800                 vuint32_t HLT13:1;\r
5801                 vuint32_t HLT14:1;\r
5802                 vuint32_t HLT15:1;\r
5803                 vuint32_t HLT16:1;\r
5804                 vuint32_t HLT17:1;\r
5805                 vuint32_t HLT18:1;\r
5806                 vuint32_t HLT19:1;\r
5807                 vuint32_t HLT20:1;\r
5808                 vuint32_t HLT21:1;\r
5809                 vuint32_t HLT22:1;\r
5810                 vuint32_t HLT23:1;\r
5811                   vuint32_t:2;\r
5812                 vuint32_t HLT26:1;\r
5813                 vuint32_t HLT27:1;\r
5814                 vuint32_t HLT28:1;\r
5815                 vuint32_t HLT29:1;\r
5816                   vuint32_t:1;\r
5817                 vuint32_t HLT31:1;\r
5818             } B;\r
5819         } HLT0;                 /* Halt Register 0 */\r
5820 \r
5821         union {\r
5822             vuint32_t R;\r
5823             struct {\r
5824                 vuint32_t:3;\r
5825                 vuint32_t HLT3:1;\r
5826                 vuint32_t HLT4:1;\r
5827                   vuint32_t:15;\r
5828                 vuint32_t HLT20:1;\r
5829                 vuint32_t HLT21:1;\r
5830                 vuint32_t HLT22:1;\r
5831                 vuint32_t HLT23:1;\r
5832                   vuint32_t:2;\r
5833                 vuint32_t HLT26:1;\r
5834                 vuint32_t HLT27:1;\r
5835                 vuint32_t HLT28:1;\r
5836                 vuint32_t HLT29:1;\r
5837                   vuint32_t:2;\r
5838             } B;\r
5839         } HLT1;                 /* Halt Register 1 */\r
5840 \r
5841         union {\r
5842             vuint32_t R;\r
5843             struct {\r
5844                 vuint32_t:6;\r
5845                 vuint32_t HLTACK6:1;\r
5846                 vuint32_t HLTACK7:1;\r
5847                   vuint32_t:1;\r
5848                 vuint32_t HLTACK9:1;\r
5849                 vuint32_t HLTACK10:1;\r
5850                 vuint32_t HLTACK11:1;\r
5851                 vuint32_t HLTACK12:1;\r
5852                 vuint32_t HLTACK13:1;\r
5853                 vuint32_t HLTACK14:1;\r
5854                 vuint32_t HLTACK15:1;\r
5855                 vuint32_t HLTACK16:1;\r
5856                 vuint32_t HLTACK17:1;\r
5857                 vuint32_t HLTACK18:1;\r
5858                 vuint32_t HLTACK19:1;\r
5859                 vuint32_t HLTACK20:1;\r
5860                 vuint32_t HLTACK21:1;\r
5861                 vuint32_t HLTACK22:1;\r
5862                 vuint32_t HLTACK23:1;\r
5863                   vuint32_t:2;\r
5864                 vuint32_t HLTACK26:1;\r
5865                 vuint32_t HLTACK27:1;\r
5866                 vuint32_t HLTACK28:1;\r
5867                 vuint32_t HLTACK29:1;\r
5868                   vuint32_t:1;\r
5869                 vuint32_t HLTACK31:1;\r
5870             } B;\r
5871         } HLTACK0;              /* Halt Acknowledge Register 0 */\r
5872 \r
5873         union {\r
5874             vuint32_t R;\r
5875             struct {\r
5876                 vuint32_t HLTACK0:1;\r
5877                 vuint32_t HLTACK1:1;\r
5878                   vuint32_t:1;\r
5879                 vuint32_t HLTACK3:1;\r
5880                 vuint32_t HLTACK4:1;\r
5881                   vuint32_t:11;\r
5882                 vuint32_t HLTACK20:1;\r
5883                 vuint32_t HLTACK21:1;\r
5884                 vuint32_t HLTACK22:1;\r
5885                 vuint32_t HLTACK23:1;\r
5886                   vuint32_t:2;\r
5887                 vuint32_t HLTACK26:1;\r
5888                 vuint32_t HLTACK27:1;\r
5889                 vuint32_t HLTACK28:1;\r
5890                 vuint32_t HLTACK29:1;\r
5891                   vuint32_t:2;\r
5892             } B;\r
5893         } HLTACK1;              /* Halt Acknowledge Register 0 */\r
5894 \r
5895         union {\r
5896             vuint32_t R;\r
5897             struct {\r
5898                 vuint32_t EMIOSSEL31:4;\r
5899                 vuint32_t EMIOSSEL30:4;\r
5900                 vuint32_t EMIOSSEL29:4;\r
5901                 vuint32_t EMIOSSEL28:4;\r
5902                 vuint32_t EMIOSSEL27:4;\r
5903                 vuint32_t EMIOSSEL26:4;\r
5904                 vuint32_t EMIOSSEL25:4;\r
5905                 vuint32_t EMIOSSEL24:4;\r
5906             } B;\r
5907         } EMIOS_SEL0;           /* eMIOS Select Register 0 */\r
5908 \r
5909         union {\r
5910             vuint32_t R;\r
5911             struct {\r
5912                 vuint32_t EMIOSSEL23:4;\r
5913                 vuint32_t EMIOSSEL22:4;\r
5914                 vuint32_t EMIOSSEL21:4;\r
5915                 vuint32_t EMIOSSEL20:4;\r
5916                 vuint32_t EMIOSSEL19:4;\r
5917                 vuint32_t EMIOSSEL18:4;\r
5918                 vuint32_t EMIOSSEL17:4;\r
5919                 vuint32_t EMIOSSEL16:4;\r
5920             } B;\r
5921         } EMIOS_SEL1;           /* eMIOS Select Register 1 */\r
5922 \r
5923         union {\r
5924             vuint32_t R;\r
5925             struct {\r
5926                 vuint32_t EMIOSSEL15:4;\r
5927                 vuint32_t EMIOSSEL14:4;\r
5928                 vuint32_t EMIOSSEL13:4;\r
5929                 vuint32_t EMIOSSEL12:4;\r
5930                 vuint32_t EMIOSSEL11:4;\r
5931                 vuint32_t EMIOSSEL10:4;\r
5932                 vuint32_t EMIOSSEL9:4;\r
5933                 vuint32_t EMIOSSEL8:4;\r
5934             } B;\r
5935         } EMIOS_SEL2;           /* eMIOS Select Register 2 */\r
5936 \r
5937         union {\r
5938             vuint32_t R;\r
5939             struct {\r
5940                 vuint32_t EMIOSSEL7:4;\r
5941                 vuint32_t EMIOSSEL6:4;\r
5942                 vuint32_t EMIOSSEL5:4;\r
5943                 vuint32_t EMIOSSEL4:4;\r
5944                 vuint32_t EMIOSSEL3:4;\r
5945                 vuint32_t EMIOSSEL2:4;\r
5946                 vuint32_t EMIOSSEL1:4;\r
5947                 vuint32_t EMIOSSEL0:4;\r
5948             } B;\r
5949         } EMIOS_SEL3;           /* eMIOS Select Register 3 */\r
5950 \r
5951         union {\r
5952             vuint32_t R;\r
5953             struct {\r
5954                 vuint32_t ESEL15:2;\r
5955                 vuint32_t ESEL14:2;\r
5956                 vuint32_t ESEL13:2;\r
5957                 vuint32_t ESEL12:2;\r
5958                 vuint32_t ESEL11:2;\r
5959                 vuint32_t ESEL10:2;\r
5960                 vuint32_t ESEL9:2;\r
5961                 vuint32_t ESEL8:2;\r
5962                 vuint32_t ESEL7:2;\r
5963                 vuint32_t ESEL6:2;\r
5964                 vuint32_t ESEL5:2;\r
5965                 vuint32_t ESEL4:2;\r
5966                 vuint32_t ESEL3:2;\r
5967                 vuint32_t ESEL2:2;\r
5968                 vuint32_t ESEL1:2;\r
5969                 vuint32_t ESEL0:2;\r
5970             } B;\r
5971         } ISEL2A;               /* External Interrupt Select Register 2A */\r
5972 \r
5973         int32_t SIU_reserved9[142];\r
5974 \r
5975         union {\r
5976             vuint32_t R;\r
5977             struct {\r
5978                 vuint32_t:16;\r
5979                 vuint32_t PB:16;\r
5980             } B;\r
5981         } PGPDO0;               /* Parallel GPIO Pin Data Output Register */\r
5982 \r
5983         union {\r
5984             vuint32_t R;\r
5985             struct {\r
5986                 vuint32_t PC:16;\r
5987                 vuint32_t PD:16;\r
5988             } B;\r
5989         } PGPDO1;               /* Parallel GPIO Pin Data Output Register */\r
5990 \r
5991         union {\r
5992             vuint32_t R;\r
5993             struct {\r
5994                 vuint32_t PE:16;\r
5995                 vuint32_t PF:16;\r
5996             } B;\r
5997         } PGPDO2;               /* Parallel GPIO Pin Data Output Register */\r
5998 \r
5999         union {\r
6000             vuint32_t R;\r
6001             struct {\r
6002                 vuint32_t PG:16;\r
6003                 vuint32_t PH:16;\r
6004             } B;\r
6005         } PGPDO3;               /* Parallel GPIO Pin Data Output Register */\r
6006 \r
6007         union {\r
6008             vuint32_t R;\r
6009             struct {\r
6010                 vuint32_t PJ:16;\r
6011                 vuint32_t PK:11;\r
6012                   vuint32_t:5;\r
6013             } B;\r
6014         } PGPDO4;               /* Parallel GPIO Pin Data Output Register */\r
6015 \r
6016         int32_t SIU_reserved10[11];\r
6017 \r
6018         union {\r
6019             vuint32_t R;\r
6020             struct {\r
6021                 vuint32_t PA:16;\r
6022                 vuint32_t PB:16;\r
6023             } B;\r
6024         } PGPDI0;               /* Parallel GPIO Pin Data Input Register */\r
6025 \r
6026         union {\r
6027             vuint32_t R;\r
6028             struct {\r
6029                 vuint32_t PC:16;\r
6030                 vuint32_t PD:16;\r
6031             } B;\r
6032         } PGPDI1;               /* Parallel GPIO Pin Data Input Register */\r
6033 \r
6034         union {\r
6035             vuint32_t R;\r
6036             struct {\r
6037                 vuint32_t PE:16;\r
6038                 vuint32_t PF:16;\r
6039             } B;\r
6040         } PGPDI2;               /* Parallel GPIO Pin Data Input Register */\r
6041 \r
6042         union {\r
6043             vuint32_t R;\r
6044             struct {\r
6045                 vuint32_t PG:16;\r
6046                 vuint32_t PH:16;\r
6047             } B;\r
6048         } PGPDI3;               /* Parallel GPIO Pin Data Input Register */\r
6049 \r
6050         union {\r
6051             vuint32_t R;\r
6052             struct {\r
6053                 vuint32_t PJ:16;\r
6054                 vuint32_t PK:11;\r
6055                   vuint32_t:5;\r
6056             } B;\r
6057         } PGPDI4;               /* Parallel GPIO Pin Data Input Register */\r
6058 \r
6059         int32_t SIU_reserved11[12];\r
6060 \r
6061         union {\r
6062             vuint32_t R;\r
6063             struct {\r
6064                 vuint32_t PB_MASK:16;\r
6065                 vuint32_t PB:16;\r
6066             } B;\r
6067         } MPGPDO1;              /* Masked Parallel GPIO Pin Data Input Register */\r
6068 \r
6069         union {\r
6070             vuint32_t R;\r
6071             struct {\r
6072                 vuint32_t PC_MASK:16;\r
6073                 vuint32_t PC:16;\r
6074             } B;\r
6075         } MPGPDO2;              /* Masked Parallel GPIO Pin Data Input Register */\r
6076 \r
6077         union {\r
6078             vuint32_t R;\r
6079             struct {\r
6080                 vuint32_t PD_MASK:16;\r
6081                 vuint32_t PD:16;\r
6082             } B;\r
6083         } MPGPDO3;              /* Masked Parallel GPIO Pin Data Input Register */\r
6084 \r
6085         union {\r
6086             vuint32_t R;\r
6087             struct {\r
6088                 vuint32_t PE_MASK:16;\r
6089                 vuint32_t PE:16;\r
6090             } B;\r
6091         } MPGPDO4;              /* Masked Parallel GPIO Pin Data Input Register */\r
6092 \r
6093         union {\r
6094             vuint32_t R;\r
6095             struct {\r
6096                 vuint32_t PF_MASK:16;\r
6097                 vuint32_t PF:16;\r
6098             } B;\r
6099         } MPGPDO5;              /* Masked Parallel GPIO Pin Data Input Register */\r
6100 \r
6101         union {\r
6102             vuint32_t R;\r
6103             struct {\r
6104                 vuint32_t PG_MASK:16;\r
6105                 vuint32_t PG:16;\r
6106             } B;\r
6107         } MPGPDO6;              /* Masked Parallel GPIO Pin Data Input Register */\r
6108 \r
6109         union {\r
6110             vuint32_t R;\r
6111             struct {\r
6112                 vuint32_t PH_MASK:16;\r
6113                 vuint32_t PH:16;\r
6114             } B;\r
6115         } MPGPDO7;              /* Masked Parallel GPIO Pin Data Input Register */\r
6116 \r
6117         union {\r
6118             vuint32_t R;\r
6119             struct {\r
6120                 vuint32_t PJ_MASK:16;\r
6121                 vuint32_t PJ:16;\r
6122             } B;\r
6123         } MPGPDO8;              /* Masked Parallel GPIO Pin Data Input Register */\r
6124 \r
6125         union {\r
6126             vuint32_t R;\r
6127             struct {\r
6128                 vuint32_t PK_MASK:11;\r
6129                   vuint32_t:5;\r
6130                 vuint32_t PK:11;\r
6131                   vuint32_t:5;\r
6132             } B;\r
6133         } MPGPDO9;              /* Masked Parallel GPIO Pin Data Input Register */\r
6134 \r
6135         int32_t SIU_reserved12[22];\r
6136 \r
6137         union {\r
6138             vuint32_t R;\r
6139             struct {\r
6140                 vuint32_t MASK31:1;\r
6141                 vuint32_t MASK30:1;\r
6142                 vuint32_t MASK29:1;\r
6143                 vuint32_t MASK28:1;\r
6144                 vuint32_t MASK27:1;\r
6145                 vuint32_t MASK26:1;\r
6146                 vuint32_t MASK25:1;\r
6147                 vuint32_t MASK24:1;\r
6148                 vuint32_t MASK23:1;\r
6149                 vuint32_t MASK22:1;\r
6150                 vuint32_t MASK21:1;\r
6151                 vuint32_t MASK20:1;\r
6152                 vuint32_t MASK19:1;\r
6153                 vuint32_t MASK18:1;\r
6154                 vuint32_t MASK17:1;\r
6155                 vuint32_t MASK16:1;\r
6156                 vuint32_t DATA31:1;\r
6157                 vuint32_t DATA30:1;\r
6158                 vuint32_t DATA29:1;\r
6159                 vuint32_t DATA28:1;\r
6160                 vuint32_t DATA27:1;\r
6161                 vuint32_t DATA26:1;\r
6162                 vuint32_t DATA25:1;\r
6163                 vuint32_t DATA24:1;\r
6164                 vuint32_t DATA23:1;\r
6165                 vuint32_t DATA22:1;\r
6166                 vuint32_t DATA21:1;\r
6167                 vuint32_t DATA20:1;\r
6168                 vuint32_t DATA19:1;\r
6169                 vuint32_t DATA18:1;\r
6170                 vuint32_t DATA17:1;\r
6171                 vuint32_t DATA16:1;\r
6172             } B;\r
6173         } DSPIAH;               /* Masked Serial GPO for DSPI_A High Register */\r
6174 \r
6175         union {\r
6176             vuint32_t R;\r
6177             struct {\r
6178                 vuint32_t MASK15:1;\r
6179                 vuint32_t MASK14:1;\r
6180                 vuint32_t MASK13:1;\r
6181                 vuint32_t MASK12:1;\r
6182                 vuint32_t MASK11:1;\r
6183                 vuint32_t MASK10:1;\r
6184                 vuint32_t MASK9:1;\r
6185                 vuint32_t MASK8:1;\r
6186                 vuint32_t MASK7:1;\r
6187                 vuint32_t MASK6:1;\r
6188                 vuint32_t MASK5:1;\r
6189                 vuint32_t MASK4:1;\r
6190                 vuint32_t MASK3:1;\r
6191                 vuint32_t MASK2:1;\r
6192                 vuint32_t MASK1:1;\r
6193                 vuint32_t MASK0:1;\r
6194                 vuint32_t DATA15:1;\r
6195                 vuint32_t DATA14:1;\r
6196                 vuint32_t DATA13:1;\r
6197                 vuint32_t DATA12:1;\r
6198                 vuint32_t DATA11:1;\r
6199                 vuint32_t DATA10:1;\r
6200                 vuint32_t DATA9:1;\r
6201                 vuint32_t DATA8:1;\r
6202                 vuint32_t DATA7:1;\r
6203                 vuint32_t DATA6:1;\r
6204                 vuint32_t DATA5:1;\r
6205                 vuint32_t DATA4:1;\r
6206                 vuint32_t DATA3:1;\r
6207                 vuint32_t DATA2:1;\r
6208                 vuint32_t DATA1:1;\r
6209                 vuint32_t DATA0:1;\r
6210             } B;\r
6211         } DSPIAL;               /* Masked Serial GPO for DSPI_A Low Register */\r
6212 \r
6213         union {\r
6214             vuint32_t R;\r
6215             struct {\r
6216                 vuint32_t MASK31:1;\r
6217                 vuint32_t MASK30:1;\r
6218                 vuint32_t MASK29:1;\r
6219                 vuint32_t MASK28:1;\r
6220                 vuint32_t MASK27:1;\r
6221                 vuint32_t MASK26:1;\r
6222                 vuint32_t MASK25:1;\r
6223                 vuint32_t MASK24:1;\r
6224                 vuint32_t MASK23:1;\r
6225                 vuint32_t MASK22:1;\r
6226                 vuint32_t MASK21:1;\r
6227                 vuint32_t MASK20:1;\r
6228                 vuint32_t MASK19:1;\r
6229                 vuint32_t MASK18:1;\r
6230                 vuint32_t MASK17:1;\r
6231                 vuint32_t MASK16:1;\r
6232                 vuint32_t DATA31:1;\r
6233                 vuint32_t DATA30:1;\r
6234                 vuint32_t DATA29:1;\r
6235                 vuint32_t DATA28:1;\r
6236                 vuint32_t DATA27:1;\r
6237                 vuint32_t DATA26:1;\r
6238                 vuint32_t DATA25:1;\r
6239                 vuint32_t DATA24:1;\r
6240                 vuint32_t DATA23:1;\r
6241                 vuint32_t DATA22:1;\r
6242                 vuint32_t DATA21:1;\r
6243                 vuint32_t DATA20:1;\r
6244                 vuint32_t DATA19:1;\r
6245                 vuint32_t DATA18:1;\r
6246                 vuint32_t DATA17:1;\r
6247                 vuint32_t DATA16:1;\r
6248             } B;\r
6249         } DSPIBH;               /* Masked Serial GPO for DSPI_B High Register */\r
6250 \r
6251         union {\r
6252             vuint32_t R;\r
6253             struct {\r
6254                 vuint32_t MASK15:1;\r
6255                 vuint32_t MASK14:1;\r
6256                 vuint32_t MASK13:1;\r
6257                 vuint32_t MASK12:1;\r
6258                 vuint32_t MASK11:1;\r
6259                 vuint32_t MASK10:1;\r
6260                 vuint32_t MASK9:1;\r
6261                 vuint32_t MASK8:1;\r
6262                 vuint32_t MASK7:1;\r
6263                 vuint32_t MASK6:1;\r
6264                 vuint32_t MASK5:1;\r
6265                 vuint32_t MASK4:1;\r
6266                 vuint32_t MASK3:1;\r
6267                 vuint32_t MASK2:1;\r
6268                 vuint32_t MASK1:1;\r
6269                 vuint32_t MASK0:1;\r
6270                 vuint32_t DATA15:1;\r
6271                 vuint32_t DATA14:1;\r
6272                 vuint32_t DATA13:1;\r
6273                 vuint32_t DATA12:1;\r
6274                 vuint32_t DATA11:1;\r
6275                 vuint32_t DATA10:1;\r
6276                 vuint32_t DATA9:1;\r
6277                 vuint32_t DATA8:1;\r
6278                 vuint32_t DATA7:1;\r
6279                 vuint32_t DATA6:1;\r
6280                 vuint32_t DATA5:1;\r
6281                 vuint32_t DATA4:1;\r
6282                 vuint32_t DATA3:1;\r
6283                 vuint32_t DATA2:1;\r
6284                 vuint32_t DATA1:1;\r
6285                 vuint32_t DATA0:1;\r
6286             } B;\r
6287         } DSPIBL;               /* Masked Serial GPO for DSPI_B Low Register */\r
6288 \r
6289         union {\r
6290             vuint32_t R;\r
6291             struct {\r
6292                 vuint32_t MASK31:1;\r
6293                 vuint32_t MASK30:1;\r
6294                 vuint32_t MASK29:1;\r
6295                 vuint32_t MASK28:1;\r
6296                 vuint32_t MASK27:1;\r
6297                 vuint32_t MASK26:1;\r
6298                 vuint32_t MASK25:1;\r
6299                 vuint32_t MASK24:1;\r
6300                 vuint32_t MASK23:1;\r
6301                 vuint32_t MASK22:1;\r
6302                 vuint32_t MASK21:1;\r
6303                 vuint32_t MASK20:1;\r
6304                 vuint32_t MASK19:1;\r
6305                 vuint32_t MASK18:1;\r
6306                 vuint32_t MASK17:1;\r
6307                 vuint32_t MASK16:1;\r
6308                 vuint32_t DATA31:1;\r
6309                 vuint32_t DATA30:1;\r
6310                 vuint32_t DATA29:1;\r
6311                 vuint32_t DATA28:1;\r
6312                 vuint32_t DATA27:1;\r
6313                 vuint32_t DATA26:1;\r
6314                 vuint32_t DATA25:1;\r
6315                 vuint32_t DATA24:1;\r
6316                 vuint32_t DATA23:1;\r
6317                 vuint32_t DATA22:1;\r
6318                 vuint32_t DATA21:1;\r
6319                 vuint32_t DATA20:1;\r
6320                 vuint32_t DATA19:1;\r
6321                 vuint32_t DATA18:1;\r
6322                 vuint32_t DATA17:1;\r
6323                 vuint32_t DATA16:1;\r
6324             } B;\r
6325         } DSPICH;               /* Masked Serial GPO for DSPI_C High Register */\r
6326 \r
6327         union {\r
6328             vuint32_t R;\r
6329             struct {\r
6330                 vuint32_t MASK15:1;\r
6331                 vuint32_t MASK14:1;\r
6332                 vuint32_t MASK13:1;\r
6333                 vuint32_t MASK12:1;\r
6334                 vuint32_t MASK11:1;\r
6335                 vuint32_t MASK10:1;\r
6336                 vuint32_t MASK9:1;\r
6337                 vuint32_t MASK8:1;\r
6338                 vuint32_t MASK7:1;\r
6339                 vuint32_t MASK6:1;\r
6340                 vuint32_t MASK5:1;\r
6341                 vuint32_t MASK4:1;\r
6342                 vuint32_t MASK3:1;\r
6343                 vuint32_t MASK2:1;\r
6344                 vuint32_t MASK1:1;\r
6345                 vuint32_t MASK0:1;\r
6346                 vuint32_t DATA15:1;\r
6347                 vuint32_t DATA14:1;\r
6348                 vuint32_t DATA13:1;\r
6349                 vuint32_t DATA12:1;\r
6350                 vuint32_t DATA11:1;\r
6351                 vuint32_t DATA10:1;\r
6352                 vuint32_t DATA9:1;\r
6353                 vuint32_t DATA8:1;\r
6354                 vuint32_t DATA7:1;\r
6355                 vuint32_t DATA6:1;\r
6356                 vuint32_t DATA5:1;\r
6357                 vuint32_t DATA4:1;\r
6358                 vuint32_t DATA3:1;\r
6359                 vuint32_t DATA2:1;\r
6360                 vuint32_t DATA1:1;\r
6361                 vuint32_t DATA0:1;\r
6362             } B;\r
6363         } DSPICL;               /* Masked Serial GPO for DSPI_C Low Register */\r
6364 \r
6365         union {\r
6366             vuint32_t R;\r
6367             struct {\r
6368                 vuint32_t MASK31:1;\r
6369                 vuint32_t MASK30:1;\r
6370                 vuint32_t MASK29:1;\r
6371                 vuint32_t MASK28:1;\r
6372                 vuint32_t MASK27:1;\r
6373                 vuint32_t MASK26:1;\r
6374                 vuint32_t MASK25:1;\r
6375                 vuint32_t MASK24:1;\r
6376                 vuint32_t MASK23:1;\r
6377                 vuint32_t MASK22:1;\r
6378                 vuint32_t MASK21:1;\r
6379                 vuint32_t MASK20:1;\r
6380                 vuint32_t MASK19:1;\r
6381                 vuint32_t MASK18:1;\r
6382                 vuint32_t MASK17:1;\r
6383                 vuint32_t MASK16:1;\r
6384                 vuint32_t DATA31:1;\r
6385                 vuint32_t DATA30:1;\r
6386                 vuint32_t DATA29:1;\r
6387                 vuint32_t DATA28:1;\r
6388                 vuint32_t DATA27:1;\r
6389                 vuint32_t DATA26:1;\r
6390                 vuint32_t DATA25:1;\r
6391                 vuint32_t DATA24:1;\r
6392                 vuint32_t DATA23:1;\r
6393                 vuint32_t DATA22:1;\r
6394                 vuint32_t DATA21:1;\r
6395                 vuint32_t DATA20:1;\r
6396                 vuint32_t DATA19:1;\r
6397                 vuint32_t DATA18:1;\r
6398                 vuint32_t DATA17:1;\r
6399                 vuint32_t DATA16:1;\r
6400             } B;\r
6401         } DSPIDH;               /* Masked Serial GPO for DSPI_D High Register */\r
6402 \r
6403         union {\r
6404             vuint32_t R;\r
6405             struct {\r
6406                 vuint32_t MASK15:1;\r
6407                 vuint32_t MASK14:1;\r
6408                 vuint32_t MASK13:1;\r
6409                 vuint32_t MASK12:1;\r
6410                 vuint32_t MASK11:1;\r
6411                 vuint32_t MASK10:1;\r
6412                 vuint32_t MASK9:1;\r
6413                 vuint32_t MASK8:1;\r
6414                 vuint32_t MASK7:1;\r
6415                 vuint32_t MASK6:1;\r
6416                 vuint32_t MASK5:1;\r
6417                 vuint32_t MASK4:1;\r
6418                 vuint32_t MASK3:1;\r
6419                 vuint32_t MASK2:1;\r
6420                 vuint32_t MASK1:1;\r
6421                 vuint32_t MASK0:1;\r
6422                 vuint32_t DATA15:1;\r
6423                 vuint32_t DATA14:1;\r
6424                 vuint32_t DATA13:1;\r
6425                 vuint32_t DATA12:1;\r
6426                 vuint32_t DATA11:1;\r
6427                 vuint32_t DATA10:1;\r
6428                 vuint32_t DATA9:1;\r
6429                 vuint32_t DATA8:1;\r
6430                 vuint32_t DATA7:1;\r
6431                 vuint32_t DATA6:1;\r
6432                 vuint32_t DATA5:1;\r
6433                 vuint32_t DATA4:1;\r
6434                 vuint32_t DATA3:1;\r
6435                 vuint32_t DATA2:1;\r
6436                 vuint32_t DATA1:1;\r
6437                 vuint32_t DATA0:1;\r
6438             } B;\r
6439         } DSPIDL;               /* Masked Serial GPO for DSPI_D Low Register */\r
6440 \r
6441         int32_t SIU_reserved13[9];\r
6442 \r
6443         union {\r
6444             vuint32_t R;\r
6445             struct {\r
6446                 vuint32_t EMIOS31:1;\r
6447                 vuint32_t EMIOS30:1;\r
6448                 vuint32_t EMIOS29:1;\r
6449                 vuint32_t EMIOS28:1;\r
6450                 vuint32_t EMIOS27:1;\r
6451                 vuint32_t EMIOS26:1;\r
6452                 vuint32_t EMIOS25:1;\r
6453                 vuint32_t EMIOS24:1;\r
6454                 vuint32_t EMIOS23:1;\r
6455                 vuint32_t EMIOS22:1;\r
6456                 vuint32_t EMIOS21:1;\r
6457                 vuint32_t EMIOS20:1;\r
6458                 vuint32_t EMIOS19:1;\r
6459                 vuint32_t EMIOS18:1;\r
6460                 vuint32_t EMIOS17:1;\r
6461                 vuint32_t EMIOS16:1;\r
6462                 vuint32_t EMIOS15:1;\r
6463                 vuint32_t EMIOS14:1;\r
6464                 vuint32_t EMIOS13:1;\r
6465                 vuint32_t EMIOS12:1;\r
6466                 vuint32_t EMIOS11:1;\r
6467                 vuint32_t EMIOS10:1;\r
6468                 vuint32_t EMIOS9:1;\r
6469                 vuint32_t EMIOS8:1;\r
6470                 vuint32_t EMIOS7:1;\r
6471                 vuint32_t EMIOS6:1;\r
6472                 vuint32_t EMIOS5:1;\r
6473                 vuint32_t EMIOS4:1;\r
6474                 vuint32_t EMIOS3:1;\r
6475                 vuint32_t EMIOS2:1;\r
6476                 vuint32_t EMIOS1:1;\r
6477                 vuint32_t EMIOS0:1;\r
6478             } B;\r
6479         } EMIOSA;               /* EMIOS A Select Register */\r
6480 \r
6481         union {\r
6482             vuint32_t R;\r
6483             struct {\r
6484                 vuint32_t DSPIAH31:1;\r
6485                 vuint32_t DSPIAH30:1;\r
6486                 vuint32_t DSPIAH29:1;\r
6487                 vuint32_t DSPIAH28:1;\r
6488                 vuint32_t DSPIAH27:1;\r
6489                 vuint32_t DSPIAH26:1;\r
6490                 vuint32_t DSPIAH25:1;\r
6491                 vuint32_t DSPIAH24:1;\r
6492                 vuint32_t DSPIAH23:1;\r
6493                 vuint32_t DSPIAH22:1;\r
6494                 vuint32_t DSPIAH21:1;\r
6495                 vuint32_t DSPIAH20:1;\r
6496                 vuint32_t DSPIAH19:1;\r
6497                 vuint32_t DSPIAH18:1;\r
6498                 vuint32_t DSPIAH17:1;\r
6499                 vuint32_t DSPIAH16:1;\r
6500                 vuint32_t DSPIAL15:1;\r
6501                 vuint32_t DSPIAL14:1;\r
6502                 vuint32_t DSPIAL13:1;\r
6503                 vuint32_t DSPIAL12:1;\r
6504                 vuint32_t DSPIAL11:1;\r
6505                 vuint32_t DSPIAL10:1;\r
6506                 vuint32_t DSPIAL9:1;\r
6507                 vuint32_t DSPIAL8:1;\r
6508                 vuint32_t DSPIAL7:1;\r
6509                 vuint32_t DSPIAL6:1;\r
6510                 vuint32_t DSPIAL5:1;\r
6511                 vuint32_t DSPIAL4:1;\r
6512                 vuint32_t DSPIAL3:1;\r
6513                 vuint32_t DSPIAL2:1;\r
6514                 vuint32_t DSPIAL1:1;\r
6515                 vuint32_t DSPIAL0:1;\r
6516             } B;\r
6517         } DSPIAHLA;             /* DSPIAH/L Select Register for DSPI A */\r
6518 \r
6519         int32_t SIU_reserved14[2];\r
6520 \r
6521         union {\r
6522             vuint32_t R;\r
6523             struct {\r
6524                 vuint32_t EMIOS31:1;\r
6525                 vuint32_t EMIOS30:1;\r
6526                 vuint32_t EMIOS29:1;\r
6527                 vuint32_t EMIOS28:1;\r
6528                 vuint32_t EMIOS27:1;\r
6529                 vuint32_t EMIOS26:1;\r
6530                 vuint32_t EMIOS25:1;\r
6531                 vuint32_t EMIOS24:1;\r
6532                 vuint32_t EMIOS23:1;\r
6533                 vuint32_t EMIOS22:1;\r
6534                 vuint32_t EMIOS21:1;\r
6535                 vuint32_t EMIOS20:1;\r
6536                 vuint32_t EMIOS19:1;\r
6537                 vuint32_t EMIOS18:1;\r
6538                 vuint32_t EMIOS17:1;\r
6539                 vuint32_t EMIOS16:1;\r
6540                 vuint32_t EMIOS15:1;\r
6541                 vuint32_t EMIOS14:1;\r
6542                 vuint32_t EMIOS13:1;\r
6543                 vuint32_t EMIOS12:1;\r
6544                 vuint32_t EMIOS11:1;\r
6545                 vuint32_t EMIOS10:1;\r
6546                 vuint32_t EMIOS9:1;\r
6547                 vuint32_t EMIOS8:1;\r
6548                 vuint32_t EMIOS7:1;\r
6549                 vuint32_t EMIOS6:1;\r
6550                 vuint32_t EMIOS5:1;\r
6551                 vuint32_t EMIOS4:1;\r
6552                 vuint32_t EMIOS3:1;\r
6553                 vuint32_t EMIOS2:1;\r
6554                 vuint32_t EMIOS1:1;\r
6555                 vuint32_t EMIOS0:1;\r
6556             } B;\r
6557         } EMIOSB;               /* EMIOS B Select Register */\r
6558 \r
6559         union {\r
6560             vuint32_t R;\r
6561             struct {\r
6562                 vuint32_t DSPIBH31:1;\r
6563                 vuint32_t DSPIBH30:1;\r
6564                 vuint32_t DSPIBH29:1;\r
6565                 vuint32_t DSPIBH28:1;\r
6566                 vuint32_t DSPIBH27:1;\r
6567                 vuint32_t DSPIBH26:1;\r
6568                 vuint32_t DSPIBH25:1;\r
6569                 vuint32_t DSPIBH24:1;\r
6570                 vuint32_t DSPIBH23:1;\r
6571                 vuint32_t DSPIBH22:1;\r
6572                 vuint32_t DSPIBH21:1;\r
6573                 vuint32_t DSPIBH20:1;\r
6574                 vuint32_t DSPIBH19:1;\r
6575                 vuint32_t DSPIBH18:1;\r
6576                 vuint32_t DSPIBH17:1;\r
6577                 vuint32_t DSPIBH16:1;\r
6578                 vuint32_t DSPIBL15:1;\r
6579                 vuint32_t DSPIBL14:1;\r
6580                 vuint32_t DSPIBL13:1;\r
6581                 vuint32_t DSPIBL12:1;\r
6582                 vuint32_t DSPIBL11:1;\r
6583                 vuint32_t DSPIBL10:1;\r
6584                 vuint32_t DSPIBL9:1;\r
6585                 vuint32_t DSPIBL8:1;\r
6586                 vuint32_t DSPIBL7:1;\r
6587                 vuint32_t DSPIBL6:1;\r
6588                 vuint32_t DSPIBL5:1;\r
6589                 vuint32_t DSPIBL4:1;\r
6590                 vuint32_t DSPIBL3:1;\r
6591                 vuint32_t DSPIBL2:1;\r
6592                 vuint32_t DSPIBL1:1;\r
6593                 vuint32_t DSPIBL0:1;\r
6594             } B;\r
6595         } DSPIBHLB;             /* DSPIBH/L Select Register for DSPI B */\r
6596 \r
6597         int32_t SIU_reserved115[2];\r
6598 \r
6599         union {\r
6600             vuint32_t R;\r
6601             struct {\r
6602                 vuint32_t EMIOS31:1;\r
6603                 vuint32_t EMIOS30:1;\r
6604                 vuint32_t EMIOS29:1;\r
6605                 vuint32_t EMIOS28:1;\r
6606                 vuint32_t EMIOS27:1;\r
6607                 vuint32_t EMIOS26:1;\r
6608                 vuint32_t EMIOS25:1;\r
6609                 vuint32_t EMIOS24:1;\r
6610                 vuint32_t EMIOS23:1;\r
6611                 vuint32_t EMIOS22:1;\r
6612                 vuint32_t EMIOS21:1;\r
6613                 vuint32_t EMIOS20:1;\r
6614                 vuint32_t EMIOS19:1;\r
6615                 vuint32_t EMIOS18:1;\r
6616                 vuint32_t EMIOS17:1;\r
6617                 vuint32_t EMIOS16:1;\r
6618                 vuint32_t EMIOS15:1;\r
6619                 vuint32_t EMIOS14:1;\r
6620                 vuint32_t EMIOS13:1;\r
6621                 vuint32_t EMIOS12:1;\r
6622                 vuint32_t EMIOS11:1;\r
6623                 vuint32_t EMIOS10:1;\r
6624                 vuint32_t EMIOS9:1;\r
6625                 vuint32_t EMIOS8:1;\r
6626                 vuint32_t EMIOS7:1;\r
6627                 vuint32_t EMIOS6:1;\r
6628                 vuint32_t EMIOS5:1;\r
6629                 vuint32_t EMIOS4:1;\r
6630                 vuint32_t EMIOS3:1;\r
6631                 vuint32_t EMIOS2:1;\r
6632                 vuint32_t EMIOS1:1;\r
6633                 vuint32_t EMIOS0:1;\r
6634             } B;\r
6635         } EMIOSC;               /* EMIOS C Select Register */\r
6636 \r
6637         union {\r
6638             vuint32_t R;\r
6639             struct {\r
6640                 vuint32_t DSPICH31:1;\r
6641                 vuint32_t DSPICH30:1;\r
6642                 vuint32_t DSPICH29:1;\r
6643                 vuint32_t DSPICH28:1;\r
6644                 vuint32_t DSPICH27:1;\r
6645                 vuint32_t DSPICH26:1;\r
6646                 vuint32_t DSPICH25:1;\r
6647                 vuint32_t DSPICH24:1;\r
6648                 vuint32_t DSPICH23:1;\r
6649                 vuint32_t DSPICH22:1;\r
6650                 vuint32_t DSPICH21:1;\r
6651                 vuint32_t DSPICH20:1;\r
6652                 vuint32_t DSPICH19:1;\r
6653                 vuint32_t DSPICH18:1;\r
6654                 vuint32_t DSPICH17:1;\r
6655                 vuint32_t DSPICH16:1;\r
6656                 vuint32_t DSPICL15:1;\r
6657                 vuint32_t DSPICL14:1;\r
6658                 vuint32_t DSPICL13:1;\r
6659                 vuint32_t DSPICL12:1;\r
6660                 vuint32_t DSPICL11:1;\r
6661                 vuint32_t DSPICL10:1;\r
6662                 vuint32_t DSPICL9:1;\r
6663                 vuint32_t DSPICL8:1;\r
6664                 vuint32_t DSPICL7:1;\r
6665                 vuint32_t DSPICL6:1;\r
6666                 vuint32_t DSPICL5:1;\r
6667                 vuint32_t DSPICL4:1;\r
6668                 vuint32_t DSPICL3:1;\r
6669                 vuint32_t DSPICL2:1;\r
6670                 vuint32_t DSPICL1:1;\r
6671                 vuint32_t DSPICL0:1;\r
6672             } B;\r
6673         } DSPICHLC;             /* DSPIAH/L Select Register for DSPI C */\r
6674 \r
6675         int32_t SIU_reserved16[2];\r
6676 \r
6677         union {\r
6678             vuint32_t R;\r
6679             struct {\r
6680                 vuint32_t EMIOS31:1;\r
6681                 vuint32_t EMIOS30:1;\r
6682                 vuint32_t EMIOS29:1;\r
6683                 vuint32_t EMIOS28:1;\r
6684                 vuint32_t EMIOS27:1;\r
6685                 vuint32_t EMIOS26:1;\r
6686                 vuint32_t EMIOS25:1;\r
6687                 vuint32_t EMIOS24:1;\r
6688                 vuint32_t EMIOS23:1;\r
6689                 vuint32_t EMIOS22:1;\r
6690                 vuint32_t EMIOS21:1;\r
6691                 vuint32_t EMIOS20:1;\r
6692                 vuint32_t EMIOS19:1;\r
6693                 vuint32_t EMIOS18:1;\r
6694                 vuint32_t EMIOS17:1;\r
6695                 vuint32_t EMIOS16:1;\r
6696                 vuint32_t EMIOS15:1;\r
6697                 vuint32_t EMIOS14:1;\r
6698                 vuint32_t EMIOS13:1;\r
6699                 vuint32_t EMIOS12:1;\r
6700                 vuint32_t EMIOS11:1;\r
6701                 vuint32_t EMIOS10:1;\r
6702                 vuint32_t EMIOS9:1;\r
6703                 vuint32_t EMIOS8:1;\r
6704                 vuint32_t EMIOS7:1;\r
6705                 vuint32_t EMIOS6:1;\r
6706                 vuint32_t EMIOS5:1;\r
6707                 vuint32_t EMIOS4:1;\r
6708                 vuint32_t EMIOS3:1;\r
6709                 vuint32_t EMIOS2:1;\r
6710                 vuint32_t EMIOS1:1;\r
6711                 vuint32_t EMIOS0:1;\r
6712             } B;\r
6713         } EMIOSD;               /* EMIOS D Select Register */\r
6714 \r
6715         union {\r
6716             vuint32_t R;\r
6717             struct {\r
6718                 vuint32_t DSPIDH31:1;\r
6719                 vuint32_t DSPIDH30:1;\r
6720                 vuint32_t DSPIDH29:1;\r
6721                 vuint32_t DSPIDH28:1;\r
6722                 vuint32_t DSPIDH27:1;\r
6723                 vuint32_t DSPIDH26:1;\r
6724                 vuint32_t DSPIDH25:1;\r
6725                 vuint32_t DSPIDH24:1;\r
6726                 vuint32_t DSPIDH23:1;\r
6727                 vuint32_t DSPIDH22:1;\r
6728                 vuint32_t DSPIDH21:1;\r
6729                 vuint32_t DSPIDH20:1;\r
6730                 vuint32_t DSPIDH19:1;\r
6731                 vuint32_t DSPIDH18:1;\r
6732                 vuint32_t DSPIDH17:1;\r
6733                 vuint32_t DSPIDH16:1;\r
6734                 vuint32_t DSPIDL15:1;\r
6735                 vuint32_t DSPIDL14:1;\r
6736                 vuint32_t DSPIDL13:1;\r
6737                 vuint32_t DSPIDL12:1;\r
6738                 vuint32_t DSPIDL11:1;\r
6739                 vuint32_t DSPIDL10:1;\r
6740                 vuint32_t DSPIDL9:1;\r
6741                 vuint32_t DSPIDL8:1;\r
6742                 vuint32_t DSPIDL7:1;\r
6743                 vuint32_t DSPIDL6:1;\r
6744                 vuint32_t DSPIDL5:1;\r
6745                 vuint32_t DSPIDL4:1;\r
6746                 vuint32_t DSPIDL3:1;\r
6747                 vuint32_t DSPIDL2:1;\r
6748                 vuint32_t DSPIDL1:1;\r
6749                 vuint32_t DSPIDL0:1;\r
6750             } B;\r
6751         } DSPIDHLD;             /* DSPIAH/L Select Register for DSPI D */\r
6752 \r
6753     };                          /* end of SIU_tag */\r
6754 /**************************************************************************/\r
6755 /*                          MODULE : STM                                  */\r
6756 /**************************************************************************/\r
6757     struct STM_tag {\r
6758 \r
6759         union {\r
6760             vuint32_t R;\r
6761             struct {\r
6762                 vuint32_t:16;\r
6763                 vuint32_t CPS:8;\r
6764                   vuint32_t:6;\r
6765                 vuint32_t FRZ:1;\r
6766                 vuint32_t TEN:1;\r
6767             } B;\r
6768         } CR;                   /* STM Control Register */\r
6769 \r
6770         union {\r
6771             vuint32_t R;\r
6772         } CNT;                  /* STM Count Register */\r
6773 \r
6774         int32_t STM_reserved[2];\r
6775 \r
6776         union {\r
6777             vuint32_t R;\r
6778             struct {\r
6779                 vuint32_t:31;\r
6780                 vuint32_t CEN:1;\r
6781             } B;\r
6782         } CCR0;                 /* STM Channel Control Register 0 */\r
6783 \r
6784         union {\r
6785             vuint32_t R;\r
6786             struct {\r
6787                 vuint32_t:31;\r
6788                 vuint32_t CIF:1;\r
6789             } B;\r
6790         } CIR0;                 /* STM Channel Interrupt Register 0 */\r
6791 \r
6792         union {\r
6793             vuint32_t R;\r
6794         } CMP0;                 /* STM Channel Compare Register 0 */\r
6795 \r
6796         int32_t STM_reserved1;\r
6797 \r
6798         union {\r
6799             vuint32_t R;\r
6800             struct {\r
6801                 vuint32_t:31;\r
6802                 vuint32_t CEN:1;\r
6803             } B;\r
6804         } CCR1;                 /* STM Channel Control Register 1 */\r
6805 \r
6806         union {\r
6807             vuint32_t R;\r
6808             struct {\r
6809                 vuint32_t:31;\r
6810                 vuint32_t CIF:1;\r
6811             } B;\r
6812         } CIR1;                 /* STM Channel Interrupt Register 1 */\r
6813 \r
6814         union {\r
6815             vuint32_t R;\r
6816         } CMP1;                 /* STM Channel Compare Register 1 */\r
6817 \r
6818         int32_t STM_reserved2;\r
6819 \r
6820         union {\r
6821             vuint32_t R;\r
6822             struct {\r
6823                 vuint32_t:31;\r
6824                 vuint32_t CEN:1;\r
6825             } B;\r
6826         } CCR2;                 /* STM Channel Control Register 2 */\r
6827 \r
6828         union {\r
6829             vuint32_t R;\r
6830             struct {\r
6831                 vuint32_t:31;\r
6832                 vuint32_t CIF:1;\r
6833             } B;\r
6834         } CIR2;                 /* STM Channel Interrupt Register 2 */\r
6835 \r
6836         union {\r
6837             vuint32_t R;\r
6838         } CMP2;                 /* STM Channel Compare Register 2 */\r
6839 \r
6840         int32_t STM_reserved3;\r
6841 \r
6842         union {\r
6843             vuint32_t R;\r
6844             struct {\r
6845                 vuint32_t:31;\r
6846                 vuint32_t CEN:1;\r
6847             } B;\r
6848         } CCR3;                 /* STM Channel Control Register 3 */\r
6849 \r
6850         union {\r
6851             vuint32_t R;\r
6852             struct {\r
6853                 vuint32_t:31;\r
6854                 vuint32_t CIF:1;\r
6855             } B;\r
6856         } CIR3;                 /* STM Channel Interrupt Register 3 */\r
6857 \r
6858         union {\r
6859             vuint32_t R;\r
6860         } CMP3;                 /* STM Channel Compare Register 3 */\r
6861 \r
6862     };                          /* end of STM_tag */\r
6863 /**************************************************************************/\r
6864 /*                          MODULE : SWT                                  */\r
6865 /**************************************************************************/\r
6866     struct SWT_tag {\r
6867         union {\r
6868             vuint32_t R;\r
6869             struct {\r
6870                 vuint32_t MAP0:1;\r
6871                 vuint32_t MAP1:1;\r
6872                 vuint32_t MAP2:1;\r
6873                 vuint32_t MAP3:1;\r
6874                 vuint32_t MAP4:1;\r
6875                 vuint32_t MAP5:1;\r
6876                 vuint32_t MAP6:1;\r
6877                 vuint32_t MAP7:1;\r
6878                   vuint32_t:14;\r
6879                 vuint32_t KEY:1;\r
6880                 vuint32_t RIA:1;\r
6881                 vuint32_t WND:1;\r
6882                 vuint32_t ITR:1;\r
6883                 vuint32_t HLK:1;\r
6884                 vuint32_t SLK:1;\r
6885                   vuint32_t:2;\r
6886                 vuint32_t FRZ:1;\r
6887                 vuint32_t WEN:1;\r
6888             } B;\r
6889         } CR;                   /* SWT Control Register */\r
6890 \r
6891         union {\r
6892             vuint32_t R;\r
6893             struct {\r
6894                 vuint32_t:31;\r
6895                 vuint32_t TIF:1;\r
6896             } B;\r
6897         } IR;                   /* SWT Interrupt Register */\r
6898 \r
6899         union {\r
6900             vuint32_t R;\r
6901             struct {\r
6902                 vuint32_t WTO:32;\r
6903             } B;\r
6904         } TO;                   /* SWT Time-Out Register */\r
6905 \r
6906         union {\r
6907             vuint32_t R;\r
6908             struct {\r
6909                 vuint32_t WST:32;\r
6910             } B;\r
6911         } WN;                   /* SWT Window Register */\r
6912 \r
6913         union {\r
6914             vuint32_t R;\r
6915             struct {\r
6916                 vuint32_t:16;\r
6917                 vuint32_t WSC:16;\r
6918             } B;\r
6919         } SR;                   /* SWT Service Register */\r
6920 \r
6921         union {\r
6922             vuint32_t R;\r
6923             struct {\r
6924                 vuint32_t CNT:32;\r
6925             } B;\r
6926         } CO;                   /* SWT Counter Output Register */\r
6927 \r
6928         union {\r
6929             vuint32_t R;\r
6930             struct {\r
6931                 vuint32_t:16;\r
6932                 vuint32_t SK:16;\r
6933             } B;\r
6934         } SK;                   /* SWT Service Key Register */\r
6935 \r
6936     };                          /* end of SWT_tag */\r
6937 \r
6938 /* Define memories */\r
6939 \r
6940 #define SRAM0_START   0x40000000\r
6941 #define SRAM0_SIZE       0x80000\r
6942 #define SRAM0_END     0x4007FFFFUL\r
6943 \r
6944 #define SRAM1_START   0x40080000UL\r
6945 #define SRAM1_SIZE       0x14000\r
6946 #define SRAM1_END     0x40093FFFUL\r
6947 \r
6948 #define FLASH_START         0x0UL\r
6949 #define FLASH_SIZE     0x200000UL\r
6950 #define FLASH_END      0x1FFFFFUL\r
6951 \r
6952 /* Define instances of modules AIPS_A */\r
6953 #define MLB       (*(volatile struct MLB_tag *)       0xC3F84000UL)\r
6954 #define I2C_C     (*(volatile struct I2C_tag *)       0xC3F88000UL)\r
6955 #define I2C_D     (*(volatile struct I2C_tag *)       0xC3F8C000UL)\r
6956 #define DSPI_C    (*(volatile struct DSPI_tag *)      0xC3F90000UL)\r
6957 #define DSPI_D    (*(volatile struct DSPI_tag *)      0xC3F94000UL)\r
6958 #define ESCI_J    (*(volatile struct ESCI_tag *)      0xC3FA0000UL)\r
6959 #define ESCI_K    (*(volatile struct ESCI_tag *)      0xC3FA4000UL)\r
6960 #define ESCI_L    (*(volatile struct ESCI_tag *)      0xC3FA8000UL)\r
6961 #define ESCI_M    (*(volatile struct ESCI_tag *)      0xC3FAC000UL)\r
6962 #define FR        (*(volatile struct FR_tag *)        0xC3FDC000UL)\r
6963 \r
6964 /* Define instances of modules AIPS_B */\r
6965 #define XBAR      (*(volatile struct XBAR_tag *)      0xFFF04000UL)\r
6966 #define SEMA4     (*(volatile struct SEMA4_tag *)     0xFFF10000UL)\r
6967 #define MPU       (*(volatile struct MPU_tag *)       0xFFF14000UL)\r
6968 #define SWT       (*(volatile struct SWT_tag *)       0xFFF38000UL)\r
6969 #define STM       (*(volatile struct STM_tag *)       0xFFF3C000UL)\r
6970 #define ECSM      (*(volatile struct ECSM_tag *)      0xFFF40000UL)\r
6971 #define EDMA      (*(volatile struct EDMA_tag *)      0xFFF44000UL)\r
6972 #define INTC      (*(volatile struct INTC_tag *)      0xFFF48000UL)\r
6973 #define FEC       (*(volatile struct FEC_tag *)       0xFFF4C000UL)\r
6974 #define ADC       (*(volatile struct ADC_tag *)       0xFFF80000UL)\r
6975 #define I2C_A     (*(volatile struct I2C_tag *)       0xFFF88000UL)\r
6976 #define I2C_B     (*(volatile struct I2C_tag *)       0xFFF8C000UL)\r
6977 #define DSPI_A    (*(volatile struct DSPI_tag *)      0xFFF90000UL)\r
6978 #define DSPI_B    (*(volatile struct DSPI_tag *)      0xFFF94000UL)\r
6979 #define ESCI_A    (*(volatile struct ESCI_tag *)      0xFFFA0000UL)\r
6980 #define ESCI_B    (*(volatile struct ESCI_tag *)      0xFFFA4000UL)\r
6981 #define ESCI_C    (*(volatile struct ESCI_tag *)      0xFFFA8000UL)\r
6982 #define ESCI_D    (*(volatile struct ESCI_tag *)      0xFFFAC000UL)\r
6983 #define ESCI_E    (*(volatile struct ESCI_tag *)      0xFFFB0000UL)\r
6984 #define ESCI_F    (*(volatile struct ESCI_tag *)      0xFFFB4000UL)\r
6985 #define ESCI_G    (*(volatile struct ESCI_tag *)      0xFFFB8000UL)\r
6986 #define ESCI_H    (*(volatile struct ESCI_tag *)      0xFFFBC000UL)\r
6987 #define CAN_A     (*(volatile struct FLEXCAN_tag *)   0xFFFC0000UL)\r
6988 #define CAN_B     (*(volatile struct FLEXCAN_tag *)   0xFFFC4000UL)\r
6989 #define CAN_C     (*(volatile struct FLEXCAN_tag *)   0xFFFC8000UL)\r
6990 #define CAN_D     (*(volatile struct FLEXCAN_tag *)   0xFFFCC000UL)\r
6991 #define CAN_E     (*(volatile struct FLEXCAN_tag *)   0xFFFD0000UL)\r
6992 #define CAN_F     (*(volatile struct FLEXCAN_tag *)   0xFFFD4000UL)\r
6993 #define CTU       (*(volatile struct CTU_tag *)       0xFFFD8000UL)\r
6994 #define DMAMUX    (*(volatile struct DMAMUX_tag *)    0xFFFDC000UL)\r
6995 #define PIT       (*(volatile struct PIT_tag *)       0xFFFE0000UL)\r
6996 #define EMIOS     (*(volatile struct EMIOS_tag *)     0xFFFE4000UL)\r
6997 #define SIU       (*(volatile struct SIU_tag *)       0xFFFE8000UL)\r
6998 #define CRP       (*(volatile struct CRP_tag *)       0xFFFEC000UL)\r
6999 #define FMPLL     (*(volatile struct FMPLL_tag *)     0xFFFF0000UL)\r
7000 #define FLASH     (*(volatile struct FLASH_tag *)     0xFFFF8000UL)\r
7001 \r
7002 #ifdef __MWERKS__\r
7003 #pragma pop\r
7004 #endif\r
7005 \r
7006 #ifdef  __cplusplus\r
7007 }\r
7008 #endif\r
7009 #endif                          /* ifdef _MPC5668_H */\r