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