1 // Copyright 2020 Espressif Systems (Shanghai) PTE LTD
2 //
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
6 //
7 //     http://www.apache.org/licenses/LICENSE-2.0
8 //
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
14 #ifndef _SOC_SYSTEM_STRUCT_H_
15 #define _SOC_SYSTEM_STRUCT_H_
16 
17 
18 #ifdef __cplusplus
19 extern "C" {
20 #endif
21 #include "soc.h"
22 
23 typedef volatile struct system_dev_s {
24     union {
25         struct {
26             uint32_t reserved0                     :    6;  /*reserved*/
27             uint32_t reg_clk_en_assist_debug       :    1;  /*reg_clk_en_assist_debug*/
28             uint32_t reg_clk_en_dedicated_gpio     :    1;  /*reg_clk_en_dedicated_gpio*/
29             uint32_t reserved8                     :    24;  /*reserved*/
30         };
31         uint32_t val;
32     } cpu_peri_clk_en;
33     union {
34         struct {
35             uint32_t reserved0                     :    6;  /*reserved*/
36             uint32_t reg_rst_en_assist_debug       :    1;  /*reg_rst_en_assist_debug*/
37             uint32_t reg_rst_en_dedicated_gpio     :    1;  /*reg_rst_en_dedicated_gpio*/
38             uint32_t reserved8                     :    24;  /*reserved*/
39         };
40         uint32_t val;
41     } cpu_peri_rst_en;
42     union {
43         struct {
44             uint32_t reg_cpuperiod_sel             :    2;  /*reg_cpuperiod_sel*/
45             uint32_t reg_pll_freq_sel              :    1;  /*reg_pll_freq_sel*/
46             uint32_t reg_cpu_wait_mode_force_on    :    1;  /*reg_cpu_wait_mode_force_on*/
47             uint32_t reg_cpu_waiti_delay_num       :    4;  /*reg_cpu_waiti_delay_num*/
48             uint32_t reserved8                     :    24;  /*reserved*/
49         };
50         uint32_t val;
51     } cpu_per_conf;
52     union {
53         struct {
54             uint32_t reg_lslp_mem_pd_mask          :    1;  /*reg_lslp_mem_pd_mask*/
55             uint32_t reserved1                     :    31;  /*reserved*/
56         };
57         uint32_t val;
58     } mem_pd_mask;
59     union {
60         struct {
61             uint32_t reg_cpu_intr_from_cpu_0       :    1;  /*reg_cpu_intr_from_cpu_0*/
62             uint32_t reserved1                     :    31;  /*reserved*/
63         };
64         uint32_t val;
65     } cpu_intr_from_cpu_0;
66     union {
67         struct {
68             uint32_t reg_cpu_intr_from_cpu_1       :    1;  /*reg_cpu_intr_from_cpu_1*/
69             uint32_t reserved1                     :    31;  /*reserved*/
70         };
71         uint32_t val;
72     } cpu_intr_from_cpu_1;
73     union {
74         struct {
75             uint32_t reg_cpu_intr_from_cpu_2       :    1;  /*reg_cpu_intr_from_cpu_2*/
76             uint32_t reserved1                     :    31;  /*reserved*/
77         };
78         uint32_t val;
79     } cpu_intr_from_cpu_2;
80     union {
81         struct {
82             uint32_t reg_cpu_intr_from_cpu_3       :    1;  /*reg_cpu_intr_from_cpu_3*/
83             uint32_t reserved1                     :    31;  /*reserved*/
84         };
85         uint32_t val;
86     } cpu_intr_from_cpu_3;
87     union {
88         struct {
89             uint32_t reg_rsa_mem_pd                :    1;  /*reg_rsa_mem_pd*/
90             uint32_t reg_rsa_mem_force_pu          :    1;  /*reg_rsa_mem_force_pu*/
91             uint32_t reg_rsa_mem_force_pd          :    1;  /*reg_rsa_mem_force_pd*/
92             uint32_t reserved3                     :    29;  /*reserved*/
93         };
94         uint32_t val;
95     } rsa_pd_ctrl;
96     union {
97         struct {
98             uint32_t reg_edma_clk_on               :    1;  /*reg_edma_clk_on*/
99             uint32_t reg_edma_reset                :    1;  /*reg_edma_reset*/
100             uint32_t reserved2                     :    30;  /*reserved*/
101         };
102         uint32_t val;
103     } edma_ctrl;
104     union {
105         struct {
106             uint32_t reg_icache_clk_on             :    1;  /*reg_icache_clk_on*/
107             uint32_t reg_icache_reset              :    1;  /*reg_icache_reset*/
108             uint32_t reg_dcache_clk_on             :    1;  /*reg_dcache_clk_on*/
109             uint32_t reg_dcache_reset              :    1;  /*reg_dcache_reset*/
110             uint32_t reserved4                     :    28;  /*reserved*/
111         };
112         uint32_t val;
113     } cache_control;
114     union {
115         struct {
116             uint32_t reg_enable_spi_manual_encrypt :    1;  /*reg_enable_spi_manual_encrypt*/
117             uint32_t reg_enable_download_db_encrypt:    1;  /*reg_enable_download_db_encrypt*/
118             uint32_t reg_enable_download_g0cb_decrypt:    1;  /*reg_enable_download_g0cb_decrypt*/
119             uint32_t reg_enable_download_manual_encrypt:    1;  /*reg_enable_download_manual_encrypt*/
120             uint32_t reserved4                     :    28;  /*reserved*/
121         };
122         uint32_t val;
123     } external_device_encrypt_decrypt_control;
124     union {
125         struct {
126             uint32_t reserved0                     :    8;  /*fast memory crc register*/
127             uint32_t reg_rtc_mem_crc_start         :    1;  /*reg_rtc_mem_crc_start*/
128             uint32_t reg_rtc_mem_crc_addr          :    11;  /*reg_rtc_mem_crc_addr*/
129             uint32_t reg_rtc_mem_crc_len           :    11;  /*reg_rtc_mem_crc_len*/
130             uint32_t reg_rtc_mem_crc_finish        :    1;  /*reg_rtc_mem_crc_finish*/
131         };
132         uint32_t val;
133     } rtc_fastmem_config;
134     uint32_t rtc_fastmem_crc;
135     union {
136         struct {
137             uint32_t reg_redundant_eco_drive       :    1;  /*reg_redundant_eco_drive*/
138             uint32_t reg_redundant_eco_result      :    1;  /*reg_redundant_eco_result*/
139             uint32_t reserved2                     :    30;  /*reserved*/
140         };
141         uint32_t val;
142     } redundant_eco_ctrl;
143     union {
144         struct {
145             uint32_t reg_clk_en                    :    1;  /*reg_clk_en*/
146             uint32_t reserved1                     :    31;  /*reserved*/
147         };
148         uint32_t val;
149     } clock_gate;
150     union {
151         struct {
152             uint32_t reg_mem_path_len              :    4;  /*reg_mem_path_len*/
153             uint32_t reg_mem_err_cnt_clr           :    1;  /*reg_mem_err_cnt_clr*/
154             uint32_t reg_mem_pvt_monitor_en        :    1;  /*reg_mem_pvt_monitor_en*/
155             uint32_t reg_mem_timing_err_cnt        :    16;  /*reg_mem_timing_err_cnt*/
156             uint32_t reg_mem_vt_sel                :    2;  /*reg_mem_vt_sel*/
157             uint32_t reserved24                    :    8;  /*reserved*/
158         };
159         uint32_t val;
160     } mem_pvt;
161     uint32_t reserved_44;
162     uint32_t reserved_48;
163     uint32_t reserved_4c;
164     uint32_t reserved_50;
165     uint32_t reserved_54;
166     uint32_t reserved_58;
167     uint32_t reserved_5c;
168     uint32_t reserved_60;
169     uint32_t reserved_64;
170     uint32_t reserved_68;
171     uint32_t reserved_6c;
172     uint32_t reserved_70;
173     uint32_t reserved_74;
174     uint32_t reserved_78;
175     uint32_t reserved_7c;
176     uint32_t reserved_80;
177     uint32_t reserved_84;
178     uint32_t reserved_88;
179     uint32_t reserved_8c;
180     uint32_t reserved_90;
181     uint32_t reserved_94;
182     uint32_t reserved_98;
183     uint32_t reserved_9c;
184     uint32_t reserved_a0;
185     uint32_t reserved_a4;
186     uint32_t reserved_a8;
187     uint32_t reserved_ac;
188     uint32_t reserved_b0;
189     uint32_t reserved_b4;
190     uint32_t reserved_b8;
191     uint32_t reserved_bc;
192     uint32_t reserved_c0;
193     uint32_t reserved_c4;
194     uint32_t reserved_c8;
195     uint32_t reserved_cc;
196     uint32_t reserved_d0;
197     uint32_t reserved_d4;
198     uint32_t reserved_d8;
199     uint32_t reserved_dc;
200     uint32_t reserved_e0;
201     uint32_t reserved_e4;
202     uint32_t reserved_e8;
203     uint32_t reserved_ec;
204     uint32_t reserved_f0;
205     uint32_t reserved_f4;
206     uint32_t reserved_f8;
207     uint32_t reserved_fc;
208     uint32_t reserved_100;
209     uint32_t reserved_104;
210     uint32_t reserved_108;
211     uint32_t reserved_10c;
212     uint32_t reserved_110;
213     uint32_t reserved_114;
214     uint32_t reserved_118;
215     uint32_t reserved_11c;
216     uint32_t reserved_120;
217     uint32_t reserved_124;
218     uint32_t reserved_128;
219     uint32_t reserved_12c;
220     uint32_t reserved_130;
221     uint32_t reserved_134;
222     uint32_t reserved_138;
223     uint32_t reserved_13c;
224     uint32_t reserved_140;
225     uint32_t reserved_144;
226     uint32_t reserved_148;
227     uint32_t reserved_14c;
228     uint32_t reserved_150;
229     uint32_t reserved_154;
230     uint32_t reserved_158;
231     uint32_t reserved_15c;
232     uint32_t reserved_160;
233     uint32_t reserved_164;
234     uint32_t reserved_168;
235     uint32_t reserved_16c;
236     uint32_t reserved_170;
237     uint32_t reserved_174;
238     uint32_t reserved_178;
239     uint32_t reserved_17c;
240     uint32_t reserved_180;
241     uint32_t reserved_184;
242     uint32_t reserved_188;
243     uint32_t reserved_18c;
244     uint32_t reserved_190;
245     uint32_t reserved_194;
246     uint32_t reserved_198;
247     uint32_t reserved_19c;
248     uint32_t reserved_1a0;
249     uint32_t reserved_1a4;
250     uint32_t reserved_1a8;
251     uint32_t reserved_1ac;
252     uint32_t reserved_1b0;
253     uint32_t reserved_1b4;
254     uint32_t reserved_1b8;
255     uint32_t reserved_1bc;
256     uint32_t reserved_1c0;
257     uint32_t reserved_1c4;
258     uint32_t reserved_1c8;
259     uint32_t reserved_1cc;
260     uint32_t reserved_1d0;
261     uint32_t reserved_1d4;
262     uint32_t reserved_1d8;
263     uint32_t reserved_1dc;
264     uint32_t reserved_1e0;
265     uint32_t reserved_1e4;
266     uint32_t reserved_1e8;
267     uint32_t reserved_1ec;
268     uint32_t reserved_1f0;
269     uint32_t reserved_1f4;
270     uint32_t reserved_1f8;
271     uint32_t reserved_1fc;
272     uint32_t reserved_200;
273     uint32_t reserved_204;
274     uint32_t reserved_208;
275     uint32_t reserved_20c;
276     uint32_t reserved_210;
277     uint32_t reserved_214;
278     uint32_t reserved_218;
279     uint32_t reserved_21c;
280     uint32_t reserved_220;
281     uint32_t reserved_224;
282     uint32_t reserved_228;
283     uint32_t reserved_22c;
284     uint32_t reserved_230;
285     uint32_t reserved_234;
286     uint32_t reserved_238;
287     uint32_t reserved_23c;
288     uint32_t reserved_240;
289     uint32_t reserved_244;
290     uint32_t reserved_248;
291     uint32_t reserved_24c;
292     uint32_t reserved_250;
293     uint32_t reserved_254;
294     uint32_t reserved_258;
295     uint32_t reserved_25c;
296     uint32_t reserved_260;
297     uint32_t reserved_264;
298     uint32_t reserved_268;
299     uint32_t reserved_26c;
300     uint32_t reserved_270;
301     uint32_t reserved_274;
302     uint32_t reserved_278;
303     uint32_t reserved_27c;
304     uint32_t reserved_280;
305     uint32_t reserved_284;
306     uint32_t reserved_288;
307     uint32_t reserved_28c;
308     uint32_t reserved_290;
309     uint32_t reserved_294;
310     uint32_t reserved_298;
311     uint32_t reserved_29c;
312     uint32_t reserved_2a0;
313     uint32_t reserved_2a4;
314     uint32_t reserved_2a8;
315     uint32_t reserved_2ac;
316     uint32_t reserved_2b0;
317     uint32_t reserved_2b4;
318     uint32_t reserved_2b8;
319     uint32_t reserved_2bc;
320     uint32_t reserved_2c0;
321     uint32_t reserved_2c4;
322     uint32_t reserved_2c8;
323     uint32_t reserved_2cc;
324     uint32_t reserved_2d0;
325     uint32_t reserved_2d4;
326     uint32_t reserved_2d8;
327     uint32_t reserved_2dc;
328     uint32_t reserved_2e0;
329     uint32_t reserved_2e4;
330     uint32_t reserved_2e8;
331     uint32_t reserved_2ec;
332     uint32_t reserved_2f0;
333     uint32_t reserved_2f4;
334     uint32_t reserved_2f8;
335     uint32_t reserved_2fc;
336     uint32_t reserved_300;
337     uint32_t reserved_304;
338     uint32_t reserved_308;
339     uint32_t reserved_30c;
340     uint32_t reserved_310;
341     uint32_t reserved_314;
342     uint32_t reserved_318;
343     uint32_t reserved_31c;
344     uint32_t reserved_320;
345     uint32_t reserved_324;
346     uint32_t reserved_328;
347     uint32_t reserved_32c;
348     uint32_t reserved_330;
349     uint32_t reserved_334;
350     uint32_t reserved_338;
351     uint32_t reserved_33c;
352     uint32_t reserved_340;
353     uint32_t reserved_344;
354     uint32_t reserved_348;
355     uint32_t reserved_34c;
356     uint32_t reserved_350;
357     uint32_t reserved_354;
358     uint32_t reserved_358;
359     uint32_t reserved_35c;
360     uint32_t reserved_360;
361     uint32_t reserved_364;
362     uint32_t reserved_368;
363     uint32_t reserved_36c;
364     uint32_t reserved_370;
365     uint32_t reserved_374;
366     uint32_t reserved_378;
367     uint32_t reserved_37c;
368     uint32_t reserved_380;
369     uint32_t reserved_384;
370     uint32_t reserved_388;
371     uint32_t reserved_38c;
372     uint32_t reserved_390;
373     uint32_t reserved_394;
374     uint32_t reserved_398;
375     uint32_t reserved_39c;
376     uint32_t reserved_3a0;
377     uint32_t reserved_3a4;
378     uint32_t reserved_3a8;
379     uint32_t reserved_3ac;
380     uint32_t reserved_3b0;
381     uint32_t reserved_3b4;
382     uint32_t reserved_3b8;
383     uint32_t reserved_3bc;
384     uint32_t reserved_3c0;
385     uint32_t reserved_3c4;
386     uint32_t reserved_3c8;
387     uint32_t reserved_3cc;
388     uint32_t reserved_3d0;
389     uint32_t reserved_3d4;
390     uint32_t reserved_3d8;
391     uint32_t reserved_3dc;
392     uint32_t reserved_3e0;
393     uint32_t reserved_3e4;
394     uint32_t reserved_3e8;
395     uint32_t reserved_3ec;
396     uint32_t reserved_3f0;
397     uint32_t reserved_3f4;
398     uint32_t reserved_3f8;
399     uint32_t reserved_3fc;
400     uint32_t reserved_400;
401     uint32_t reserved_404;
402     uint32_t reserved_408;
403     uint32_t reserved_40c;
404     uint32_t reserved_410;
405     uint32_t reserved_414;
406     uint32_t reserved_418;
407     uint32_t reserved_41c;
408     uint32_t reserved_420;
409     uint32_t reserved_424;
410     uint32_t reserved_428;
411     uint32_t reserved_42c;
412     uint32_t reserved_430;
413     uint32_t reserved_434;
414     uint32_t reserved_438;
415     uint32_t reserved_43c;
416     uint32_t reserved_440;
417     uint32_t reserved_444;
418     uint32_t reserved_448;
419     uint32_t reserved_44c;
420     uint32_t reserved_450;
421     uint32_t reserved_454;
422     uint32_t reserved_458;
423     uint32_t reserved_45c;
424     uint32_t reserved_460;
425     uint32_t reserved_464;
426     uint32_t reserved_468;
427     uint32_t reserved_46c;
428     uint32_t reserved_470;
429     uint32_t reserved_474;
430     uint32_t reserved_478;
431     uint32_t reserved_47c;
432     uint32_t reserved_480;
433     uint32_t reserved_484;
434     uint32_t reserved_488;
435     uint32_t reserved_48c;
436     uint32_t reserved_490;
437     uint32_t reserved_494;
438     uint32_t reserved_498;
439     uint32_t reserved_49c;
440     uint32_t reserved_4a0;
441     uint32_t reserved_4a4;
442     uint32_t reserved_4a8;
443     uint32_t reserved_4ac;
444     uint32_t reserved_4b0;
445     uint32_t reserved_4b4;
446     uint32_t reserved_4b8;
447     uint32_t reserved_4bc;
448     uint32_t reserved_4c0;
449     uint32_t reserved_4c4;
450     uint32_t reserved_4c8;
451     uint32_t reserved_4cc;
452     uint32_t reserved_4d0;
453     uint32_t reserved_4d4;
454     uint32_t reserved_4d8;
455     uint32_t reserved_4dc;
456     uint32_t reserved_4e0;
457     uint32_t reserved_4e4;
458     uint32_t reserved_4e8;
459     uint32_t reserved_4ec;
460     uint32_t reserved_4f0;
461     uint32_t reserved_4f4;
462     uint32_t reserved_4f8;
463     uint32_t reserved_4fc;
464     uint32_t reserved_500;
465     uint32_t reserved_504;
466     uint32_t reserved_508;
467     uint32_t reserved_50c;
468     uint32_t reserved_510;
469     uint32_t reserved_514;
470     uint32_t reserved_518;
471     uint32_t reserved_51c;
472     uint32_t reserved_520;
473     uint32_t reserved_524;
474     uint32_t reserved_528;
475     uint32_t reserved_52c;
476     uint32_t reserved_530;
477     uint32_t reserved_534;
478     uint32_t reserved_538;
479     uint32_t reserved_53c;
480     uint32_t reserved_540;
481     uint32_t reserved_544;
482     uint32_t reserved_548;
483     uint32_t reserved_54c;
484     uint32_t reserved_550;
485     uint32_t reserved_554;
486     uint32_t reserved_558;
487     uint32_t reserved_55c;
488     uint32_t reserved_560;
489     uint32_t reserved_564;
490     uint32_t reserved_568;
491     uint32_t reserved_56c;
492     uint32_t reserved_570;
493     uint32_t reserved_574;
494     uint32_t reserved_578;
495     uint32_t reserved_57c;
496     uint32_t reserved_580;
497     uint32_t reserved_584;
498     uint32_t reserved_588;
499     uint32_t reserved_58c;
500     uint32_t reserved_590;
501     uint32_t reserved_594;
502     uint32_t reserved_598;
503     uint32_t reserved_59c;
504     uint32_t reserved_5a0;
505     uint32_t reserved_5a4;
506     uint32_t reserved_5a8;
507     uint32_t reserved_5ac;
508     uint32_t reserved_5b0;
509     uint32_t reserved_5b4;
510     uint32_t reserved_5b8;
511     uint32_t reserved_5bc;
512     uint32_t reserved_5c0;
513     uint32_t reserved_5c4;
514     uint32_t reserved_5c8;
515     uint32_t reserved_5cc;
516     uint32_t reserved_5d0;
517     uint32_t reserved_5d4;
518     uint32_t reserved_5d8;
519     uint32_t reserved_5dc;
520     uint32_t reserved_5e0;
521     uint32_t reserved_5e4;
522     uint32_t reserved_5e8;
523     uint32_t reserved_5ec;
524     uint32_t reserved_5f0;
525     uint32_t reserved_5f4;
526     uint32_t reserved_5f8;
527     uint32_t reserved_5fc;
528     uint32_t reserved_600;
529     uint32_t reserved_604;
530     uint32_t reserved_608;
531     uint32_t reserved_60c;
532     uint32_t reserved_610;
533     uint32_t reserved_614;
534     uint32_t reserved_618;
535     uint32_t reserved_61c;
536     uint32_t reserved_620;
537     uint32_t reserved_624;
538     uint32_t reserved_628;
539     uint32_t reserved_62c;
540     uint32_t reserved_630;
541     uint32_t reserved_634;
542     uint32_t reserved_638;
543     uint32_t reserved_63c;
544     uint32_t reserved_640;
545     uint32_t reserved_644;
546     uint32_t reserved_648;
547     uint32_t reserved_64c;
548     uint32_t reserved_650;
549     uint32_t reserved_654;
550     uint32_t reserved_658;
551     uint32_t reserved_65c;
552     uint32_t reserved_660;
553     uint32_t reserved_664;
554     uint32_t reserved_668;
555     uint32_t reserved_66c;
556     uint32_t reserved_670;
557     uint32_t reserved_674;
558     uint32_t reserved_678;
559     uint32_t reserved_67c;
560     uint32_t reserved_680;
561     uint32_t reserved_684;
562     uint32_t reserved_688;
563     uint32_t reserved_68c;
564     uint32_t reserved_690;
565     uint32_t reserved_694;
566     uint32_t reserved_698;
567     uint32_t reserved_69c;
568     uint32_t reserved_6a0;
569     uint32_t reserved_6a4;
570     uint32_t reserved_6a8;
571     uint32_t reserved_6ac;
572     uint32_t reserved_6b0;
573     uint32_t reserved_6b4;
574     uint32_t reserved_6b8;
575     uint32_t reserved_6bc;
576     uint32_t reserved_6c0;
577     uint32_t reserved_6c4;
578     uint32_t reserved_6c8;
579     uint32_t reserved_6cc;
580     uint32_t reserved_6d0;
581     uint32_t reserved_6d4;
582     uint32_t reserved_6d8;
583     uint32_t reserved_6dc;
584     uint32_t reserved_6e0;
585     uint32_t reserved_6e4;
586     uint32_t reserved_6e8;
587     uint32_t reserved_6ec;
588     uint32_t reserved_6f0;
589     uint32_t reserved_6f4;
590     uint32_t reserved_6f8;
591     uint32_t reserved_6fc;
592     uint32_t reserved_700;
593     uint32_t reserved_704;
594     uint32_t reserved_708;
595     uint32_t reserved_70c;
596     uint32_t reserved_710;
597     uint32_t reserved_714;
598     uint32_t reserved_718;
599     uint32_t reserved_71c;
600     uint32_t reserved_720;
601     uint32_t reserved_724;
602     uint32_t reserved_728;
603     uint32_t reserved_72c;
604     uint32_t reserved_730;
605     uint32_t reserved_734;
606     uint32_t reserved_738;
607     uint32_t reserved_73c;
608     uint32_t reserved_740;
609     uint32_t reserved_744;
610     uint32_t reserved_748;
611     uint32_t reserved_74c;
612     uint32_t reserved_750;
613     uint32_t reserved_754;
614     uint32_t reserved_758;
615     uint32_t reserved_75c;
616     uint32_t reserved_760;
617     uint32_t reserved_764;
618     uint32_t reserved_768;
619     uint32_t reserved_76c;
620     uint32_t reserved_770;
621     uint32_t reserved_774;
622     uint32_t reserved_778;
623     uint32_t reserved_77c;
624     uint32_t reserved_780;
625     uint32_t reserved_784;
626     uint32_t reserved_788;
627     uint32_t reserved_78c;
628     uint32_t reserved_790;
629     uint32_t reserved_794;
630     uint32_t reserved_798;
631     uint32_t reserved_79c;
632     uint32_t reserved_7a0;
633     uint32_t reserved_7a4;
634     uint32_t reserved_7a8;
635     uint32_t reserved_7ac;
636     uint32_t reserved_7b0;
637     uint32_t reserved_7b4;
638     uint32_t reserved_7b8;
639     uint32_t reserved_7bc;
640     uint32_t reserved_7c0;
641     uint32_t reserved_7c4;
642     uint32_t reserved_7c8;
643     uint32_t reserved_7cc;
644     uint32_t reserved_7d0;
645     uint32_t reserved_7d4;
646     uint32_t reserved_7d8;
647     uint32_t reserved_7dc;
648     uint32_t reserved_7e0;
649     uint32_t reserved_7e4;
650     uint32_t reserved_7e8;
651     uint32_t reserved_7ec;
652     uint32_t reserved_7f0;
653     uint32_t reserved_7f4;
654     uint32_t reserved_7f8;
655     uint32_t reserved_7fc;
656     uint32_t reserved_800;
657     uint32_t reserved_804;
658     uint32_t reserved_808;
659     uint32_t reserved_80c;
660     uint32_t reserved_810;
661     uint32_t reserved_814;
662     uint32_t reserved_818;
663     uint32_t reserved_81c;
664     uint32_t reserved_820;
665     uint32_t reserved_824;
666     uint32_t reserved_828;
667     uint32_t reserved_82c;
668     uint32_t reserved_830;
669     uint32_t reserved_834;
670     uint32_t reserved_838;
671     uint32_t reserved_83c;
672     uint32_t reserved_840;
673     uint32_t reserved_844;
674     uint32_t reserved_848;
675     uint32_t reserved_84c;
676     uint32_t reserved_850;
677     uint32_t reserved_854;
678     uint32_t reserved_858;
679     uint32_t reserved_85c;
680     uint32_t reserved_860;
681     uint32_t reserved_864;
682     uint32_t reserved_868;
683     uint32_t reserved_86c;
684     uint32_t reserved_870;
685     uint32_t reserved_874;
686     uint32_t reserved_878;
687     uint32_t reserved_87c;
688     uint32_t reserved_880;
689     uint32_t reserved_884;
690     uint32_t reserved_888;
691     uint32_t reserved_88c;
692     uint32_t reserved_890;
693     uint32_t reserved_894;
694     uint32_t reserved_898;
695     uint32_t reserved_89c;
696     uint32_t reserved_8a0;
697     uint32_t reserved_8a4;
698     uint32_t reserved_8a8;
699     uint32_t reserved_8ac;
700     uint32_t reserved_8b0;
701     uint32_t reserved_8b4;
702     uint32_t reserved_8b8;
703     uint32_t reserved_8bc;
704     uint32_t reserved_8c0;
705     uint32_t reserved_8c4;
706     uint32_t reserved_8c8;
707     uint32_t reserved_8cc;
708     uint32_t reserved_8d0;
709     uint32_t reserved_8d4;
710     uint32_t reserved_8d8;
711     uint32_t reserved_8dc;
712     uint32_t reserved_8e0;
713     uint32_t reserved_8e4;
714     uint32_t reserved_8e8;
715     uint32_t reserved_8ec;
716     uint32_t reserved_8f0;
717     uint32_t reserved_8f4;
718     uint32_t reserved_8f8;
719     uint32_t reserved_8fc;
720     uint32_t reserved_900;
721     uint32_t reserved_904;
722     uint32_t reserved_908;
723     uint32_t reserved_90c;
724     uint32_t reserved_910;
725     uint32_t reserved_914;
726     uint32_t reserved_918;
727     uint32_t reserved_91c;
728     uint32_t reserved_920;
729     uint32_t reserved_924;
730     uint32_t reserved_928;
731     uint32_t reserved_92c;
732     uint32_t reserved_930;
733     uint32_t reserved_934;
734     uint32_t reserved_938;
735     uint32_t reserved_93c;
736     uint32_t reserved_940;
737     uint32_t reserved_944;
738     uint32_t reserved_948;
739     uint32_t reserved_94c;
740     uint32_t reserved_950;
741     uint32_t reserved_954;
742     uint32_t reserved_958;
743     uint32_t reserved_95c;
744     uint32_t reserved_960;
745     uint32_t reserved_964;
746     uint32_t reserved_968;
747     uint32_t reserved_96c;
748     uint32_t reserved_970;
749     uint32_t reserved_974;
750     uint32_t reserved_978;
751     uint32_t reserved_97c;
752     uint32_t reserved_980;
753     uint32_t reserved_984;
754     uint32_t reserved_988;
755     uint32_t reserved_98c;
756     uint32_t reserved_990;
757     uint32_t reserved_994;
758     uint32_t reserved_998;
759     uint32_t reserved_99c;
760     uint32_t reserved_9a0;
761     uint32_t reserved_9a4;
762     uint32_t reserved_9a8;
763     uint32_t reserved_9ac;
764     uint32_t reserved_9b0;
765     uint32_t reserved_9b4;
766     uint32_t reserved_9b8;
767     uint32_t reserved_9bc;
768     uint32_t reserved_9c0;
769     uint32_t reserved_9c4;
770     uint32_t reserved_9c8;
771     uint32_t reserved_9cc;
772     uint32_t reserved_9d0;
773     uint32_t reserved_9d4;
774     uint32_t reserved_9d8;
775     uint32_t reserved_9dc;
776     uint32_t reserved_9e0;
777     uint32_t reserved_9e4;
778     uint32_t reserved_9e8;
779     uint32_t reserved_9ec;
780     uint32_t reserved_9f0;
781     uint32_t reserved_9f4;
782     uint32_t reserved_9f8;
783     uint32_t reserved_9fc;
784     uint32_t reserved_a00;
785     uint32_t reserved_a04;
786     uint32_t reserved_a08;
787     uint32_t reserved_a0c;
788     uint32_t reserved_a10;
789     uint32_t reserved_a14;
790     uint32_t reserved_a18;
791     uint32_t reserved_a1c;
792     uint32_t reserved_a20;
793     uint32_t reserved_a24;
794     uint32_t reserved_a28;
795     uint32_t reserved_a2c;
796     uint32_t reserved_a30;
797     uint32_t reserved_a34;
798     uint32_t reserved_a38;
799     uint32_t reserved_a3c;
800     uint32_t reserved_a40;
801     uint32_t reserved_a44;
802     uint32_t reserved_a48;
803     uint32_t reserved_a4c;
804     uint32_t reserved_a50;
805     uint32_t reserved_a54;
806     uint32_t reserved_a58;
807     uint32_t reserved_a5c;
808     uint32_t reserved_a60;
809     uint32_t reserved_a64;
810     uint32_t reserved_a68;
811     uint32_t reserved_a6c;
812     uint32_t reserved_a70;
813     uint32_t reserved_a74;
814     uint32_t reserved_a78;
815     uint32_t reserved_a7c;
816     uint32_t reserved_a80;
817     uint32_t reserved_a84;
818     uint32_t reserved_a88;
819     uint32_t reserved_a8c;
820     uint32_t reserved_a90;
821     uint32_t reserved_a94;
822     uint32_t reserved_a98;
823     uint32_t reserved_a9c;
824     uint32_t reserved_aa0;
825     uint32_t reserved_aa4;
826     uint32_t reserved_aa8;
827     uint32_t reserved_aac;
828     uint32_t reserved_ab0;
829     uint32_t reserved_ab4;
830     uint32_t reserved_ab8;
831     uint32_t reserved_abc;
832     uint32_t reserved_ac0;
833     uint32_t reserved_ac4;
834     uint32_t reserved_ac8;
835     uint32_t reserved_acc;
836     uint32_t reserved_ad0;
837     uint32_t reserved_ad4;
838     uint32_t reserved_ad8;
839     uint32_t reserved_adc;
840     uint32_t reserved_ae0;
841     uint32_t reserved_ae4;
842     uint32_t reserved_ae8;
843     uint32_t reserved_aec;
844     uint32_t reserved_af0;
845     uint32_t reserved_af4;
846     uint32_t reserved_af8;
847     uint32_t reserved_afc;
848     uint32_t reserved_b00;
849     uint32_t reserved_b04;
850     uint32_t reserved_b08;
851     uint32_t reserved_b0c;
852     uint32_t reserved_b10;
853     uint32_t reserved_b14;
854     uint32_t reserved_b18;
855     uint32_t reserved_b1c;
856     uint32_t reserved_b20;
857     uint32_t reserved_b24;
858     uint32_t reserved_b28;
859     uint32_t reserved_b2c;
860     uint32_t reserved_b30;
861     uint32_t reserved_b34;
862     uint32_t reserved_b38;
863     uint32_t reserved_b3c;
864     uint32_t reserved_b40;
865     uint32_t reserved_b44;
866     uint32_t reserved_b48;
867     uint32_t reserved_b4c;
868     uint32_t reserved_b50;
869     uint32_t reserved_b54;
870     uint32_t reserved_b58;
871     uint32_t reserved_b5c;
872     uint32_t reserved_b60;
873     uint32_t reserved_b64;
874     uint32_t reserved_b68;
875     uint32_t reserved_b6c;
876     uint32_t reserved_b70;
877     uint32_t reserved_b74;
878     uint32_t reserved_b78;
879     uint32_t reserved_b7c;
880     uint32_t reserved_b80;
881     uint32_t reserved_b84;
882     uint32_t reserved_b88;
883     uint32_t reserved_b8c;
884     uint32_t reserved_b90;
885     uint32_t reserved_b94;
886     uint32_t reserved_b98;
887     uint32_t reserved_b9c;
888     uint32_t reserved_ba0;
889     uint32_t reserved_ba4;
890     uint32_t reserved_ba8;
891     uint32_t reserved_bac;
892     uint32_t reserved_bb0;
893     uint32_t reserved_bb4;
894     uint32_t reserved_bb8;
895     uint32_t reserved_bbc;
896     uint32_t reserved_bc0;
897     uint32_t reserved_bc4;
898     uint32_t reserved_bc8;
899     uint32_t reserved_bcc;
900     uint32_t reserved_bd0;
901     uint32_t reserved_bd4;
902     uint32_t reserved_bd8;
903     uint32_t reserved_bdc;
904     uint32_t reserved_be0;
905     uint32_t reserved_be4;
906     uint32_t reserved_be8;
907     uint32_t reserved_bec;
908     uint32_t reserved_bf0;
909     uint32_t reserved_bf4;
910     uint32_t reserved_bf8;
911     uint32_t reserved_bfc;
912     uint32_t reserved_c00;
913     uint32_t reserved_c04;
914     uint32_t reserved_c08;
915     uint32_t reserved_c0c;
916     uint32_t reserved_c10;
917     uint32_t reserved_c14;
918     uint32_t reserved_c18;
919     uint32_t reserved_c1c;
920     uint32_t reserved_c20;
921     uint32_t reserved_c24;
922     uint32_t reserved_c28;
923     uint32_t reserved_c2c;
924     uint32_t reserved_c30;
925     uint32_t reserved_c34;
926     uint32_t reserved_c38;
927     uint32_t reserved_c3c;
928     uint32_t reserved_c40;
929     uint32_t reserved_c44;
930     uint32_t reserved_c48;
931     uint32_t reserved_c4c;
932     uint32_t reserved_c50;
933     uint32_t reserved_c54;
934     uint32_t reserved_c58;
935     uint32_t reserved_c5c;
936     uint32_t reserved_c60;
937     uint32_t reserved_c64;
938     uint32_t reserved_c68;
939     uint32_t reserved_c6c;
940     uint32_t reserved_c70;
941     uint32_t reserved_c74;
942     uint32_t reserved_c78;
943     uint32_t reserved_c7c;
944     uint32_t reserved_c80;
945     uint32_t reserved_c84;
946     uint32_t reserved_c88;
947     uint32_t reserved_c8c;
948     uint32_t reserved_c90;
949     uint32_t reserved_c94;
950     uint32_t reserved_c98;
951     uint32_t reserved_c9c;
952     uint32_t reserved_ca0;
953     uint32_t reserved_ca4;
954     uint32_t reserved_ca8;
955     uint32_t reserved_cac;
956     uint32_t reserved_cb0;
957     uint32_t reserved_cb4;
958     uint32_t reserved_cb8;
959     uint32_t reserved_cbc;
960     uint32_t reserved_cc0;
961     uint32_t reserved_cc4;
962     uint32_t reserved_cc8;
963     uint32_t reserved_ccc;
964     uint32_t reserved_cd0;
965     uint32_t reserved_cd4;
966     uint32_t reserved_cd8;
967     uint32_t reserved_cdc;
968     uint32_t reserved_ce0;
969     uint32_t reserved_ce4;
970     uint32_t reserved_ce8;
971     uint32_t reserved_cec;
972     uint32_t reserved_cf0;
973     uint32_t reserved_cf4;
974     uint32_t reserved_cf8;
975     uint32_t reserved_cfc;
976     uint32_t reserved_d00;
977     uint32_t reserved_d04;
978     uint32_t reserved_d08;
979     uint32_t reserved_d0c;
980     uint32_t reserved_d10;
981     uint32_t reserved_d14;
982     uint32_t reserved_d18;
983     uint32_t reserved_d1c;
984     uint32_t reserved_d20;
985     uint32_t reserved_d24;
986     uint32_t reserved_d28;
987     uint32_t reserved_d2c;
988     uint32_t reserved_d30;
989     uint32_t reserved_d34;
990     uint32_t reserved_d38;
991     uint32_t reserved_d3c;
992     uint32_t reserved_d40;
993     uint32_t reserved_d44;
994     uint32_t reserved_d48;
995     uint32_t reserved_d4c;
996     uint32_t reserved_d50;
997     uint32_t reserved_d54;
998     uint32_t reserved_d58;
999     uint32_t reserved_d5c;
1000     uint32_t reserved_d60;
1001     uint32_t reserved_d64;
1002     uint32_t reserved_d68;
1003     uint32_t reserved_d6c;
1004     uint32_t reserved_d70;
1005     uint32_t reserved_d74;
1006     uint32_t reserved_d78;
1007     uint32_t reserved_d7c;
1008     uint32_t reserved_d80;
1009     uint32_t reserved_d84;
1010     uint32_t reserved_d88;
1011     uint32_t reserved_d8c;
1012     uint32_t reserved_d90;
1013     uint32_t reserved_d94;
1014     uint32_t reserved_d98;
1015     uint32_t reserved_d9c;
1016     uint32_t reserved_da0;
1017     uint32_t reserved_da4;
1018     uint32_t reserved_da8;
1019     uint32_t reserved_dac;
1020     uint32_t reserved_db0;
1021     uint32_t reserved_db4;
1022     uint32_t reserved_db8;
1023     uint32_t reserved_dbc;
1024     uint32_t reserved_dc0;
1025     uint32_t reserved_dc4;
1026     uint32_t reserved_dc8;
1027     uint32_t reserved_dcc;
1028     uint32_t reserved_dd0;
1029     uint32_t reserved_dd4;
1030     uint32_t reserved_dd8;
1031     uint32_t reserved_ddc;
1032     uint32_t reserved_de0;
1033     uint32_t reserved_de4;
1034     uint32_t reserved_de8;
1035     uint32_t reserved_dec;
1036     uint32_t reserved_df0;
1037     uint32_t reserved_df4;
1038     uint32_t reserved_df8;
1039     uint32_t reserved_dfc;
1040     uint32_t reserved_e00;
1041     uint32_t reserved_e04;
1042     uint32_t reserved_e08;
1043     uint32_t reserved_e0c;
1044     uint32_t reserved_e10;
1045     uint32_t reserved_e14;
1046     uint32_t reserved_e18;
1047     uint32_t reserved_e1c;
1048     uint32_t reserved_e20;
1049     uint32_t reserved_e24;
1050     uint32_t reserved_e28;
1051     uint32_t reserved_e2c;
1052     uint32_t reserved_e30;
1053     uint32_t reserved_e34;
1054     uint32_t reserved_e38;
1055     uint32_t reserved_e3c;
1056     uint32_t reserved_e40;
1057     uint32_t reserved_e44;
1058     uint32_t reserved_e48;
1059     uint32_t reserved_e4c;
1060     uint32_t reserved_e50;
1061     uint32_t reserved_e54;
1062     uint32_t reserved_e58;
1063     uint32_t reserved_e5c;
1064     uint32_t reserved_e60;
1065     uint32_t reserved_e64;
1066     uint32_t reserved_e68;
1067     uint32_t reserved_e6c;
1068     uint32_t reserved_e70;
1069     uint32_t reserved_e74;
1070     uint32_t reserved_e78;
1071     uint32_t reserved_e7c;
1072     uint32_t reserved_e80;
1073     uint32_t reserved_e84;
1074     uint32_t reserved_e88;
1075     uint32_t reserved_e8c;
1076     uint32_t reserved_e90;
1077     uint32_t reserved_e94;
1078     uint32_t reserved_e98;
1079     uint32_t reserved_e9c;
1080     uint32_t reserved_ea0;
1081     uint32_t reserved_ea4;
1082     uint32_t reserved_ea8;
1083     uint32_t reserved_eac;
1084     uint32_t reserved_eb0;
1085     uint32_t reserved_eb4;
1086     uint32_t reserved_eb8;
1087     uint32_t reserved_ebc;
1088     uint32_t reserved_ec0;
1089     uint32_t reserved_ec4;
1090     uint32_t reserved_ec8;
1091     uint32_t reserved_ecc;
1092     uint32_t reserved_ed0;
1093     uint32_t reserved_ed4;
1094     uint32_t reserved_ed8;
1095     uint32_t reserved_edc;
1096     uint32_t reserved_ee0;
1097     uint32_t reserved_ee4;
1098     uint32_t reserved_ee8;
1099     uint32_t reserved_eec;
1100     uint32_t reserved_ef0;
1101     uint32_t reserved_ef4;
1102     uint32_t reserved_ef8;
1103     uint32_t reserved_efc;
1104     uint32_t reserved_f00;
1105     uint32_t reserved_f04;
1106     uint32_t reserved_f08;
1107     uint32_t reserved_f0c;
1108     uint32_t reserved_f10;
1109     uint32_t reserved_f14;
1110     uint32_t reserved_f18;
1111     uint32_t reserved_f1c;
1112     uint32_t reserved_f20;
1113     uint32_t reserved_f24;
1114     uint32_t reserved_f28;
1115     uint32_t reserved_f2c;
1116     uint32_t reserved_f30;
1117     uint32_t reserved_f34;
1118     uint32_t reserved_f38;
1119     uint32_t reserved_f3c;
1120     uint32_t reserved_f40;
1121     uint32_t reserved_f44;
1122     uint32_t reserved_f48;
1123     uint32_t reserved_f4c;
1124     uint32_t reserved_f50;
1125     uint32_t reserved_f54;
1126     uint32_t reserved_f58;
1127     uint32_t reserved_f5c;
1128     uint32_t reserved_f60;
1129     uint32_t reserved_f64;
1130     uint32_t reserved_f68;
1131     uint32_t reserved_f6c;
1132     uint32_t reserved_f70;
1133     uint32_t reserved_f74;
1134     uint32_t reserved_f78;
1135     uint32_t reserved_f7c;
1136     uint32_t reserved_f80;
1137     uint32_t reserved_f84;
1138     uint32_t reserved_f88;
1139     uint32_t reserved_f8c;
1140     uint32_t reserved_f90;
1141     uint32_t reserved_f94;
1142     uint32_t reserved_f98;
1143     uint32_t reserved_f9c;
1144     uint32_t reserved_fa0;
1145     uint32_t reserved_fa4;
1146     uint32_t reserved_fa8;
1147     uint32_t reserved_fac;
1148     uint32_t reserved_fb0;
1149     uint32_t reserved_fb4;
1150     uint32_t reserved_fb8;
1151     uint32_t reserved_fbc;
1152     uint32_t reserved_fc0;
1153     uint32_t reserved_fc4;
1154     uint32_t reserved_fc8;
1155     uint32_t reserved_fcc;
1156     uint32_t reserved_fd0;
1157     uint32_t reserved_fd4;
1158     uint32_t reserved_fd8;
1159     uint32_t reserved_fdc;
1160     uint32_t reserved_fe0;
1161     uint32_t reserved_fe4;
1162     uint32_t reserved_fe8;
1163     uint32_t reserved_fec;
1164     uint32_t reserved_ff0;
1165     uint32_t reserved_ff4;
1166     uint32_t reserved_ff8;
1167     union {
1168         struct {
1169             uint32_t reg_system_reg_date           :    28;  /*reg_system_reg_date*/
1170             uint32_t reserved28                    :    4;  /*reserved*/
1171         };
1172         uint32_t val;
1173     } date;
1174 } system_dev_t;
1175 extern system_dev_t SYSTEM;
1176 #ifdef __cplusplus
1177 }
1178 #endif
1179 
1180 
1181 
1182 #endif /*_SOC_SYSTEM_STRUCT_H_ */
1183