1 //-----------------------------------------------------------------------------
2 // Copyright 2012 (c) Silicon Laboratories Inc.
3 //
4 // SPDX-License-Identifier: Zlib
5 //
6 // This siHAL software is provided 'as-is', without any express or implied
7 // warranty. In no event will the authors be held liable for any damages
8 // arising from the use of this software.
9 //
10 // Permission is granted to anyone to use this software for any purpose,
11 // including commercial applications, and to alter it and redistribute it
12 // freely, subject to the following restrictions:
13 //
14 // 1. The origin of this software must not be misrepresented; you must not
15 //    claim that you wrote the original software. If you use this software
16 //    in a product, an acknowledgment in the product documentation would be
17 //    appreciated but is not required.
18 // 2. Altered source versions must be plainly marked as such, and must not be
19 //    misrepresented as being the original software.
20 // 3. This notice may not be removed or altered from any source distribution.
21 //-----------------------------------------------------------------------------
22 //
23 // This file applies to the SIM3L1XX_RSTSRC_A module
24 //
25 // Script: 0.61
26 // Version: 1
27 
28 #ifndef __SI32_RSTSRC_A_REGISTERS_H__
29 #define __SI32_RSTSRC_A_REGISTERS_H__
30 
31 #include <stdint.h>
32 
33 #ifdef __cplusplus
34 extern "C" {
35 #endif
36 
37 struct SI32_RSTSRC_A_RESETEN_Struct
38 {
39    union
40    {
41       struct
42       {
43                   uint32_t reserved0: 2;
44          // Voltage Supply Monitor VBAT Reset Enable
45          volatile uint32_t VMONREN: 1;
46                   uint32_t reserved1: 1;
47          // Missing Clock Detector Reset Enable
48          volatile uint32_t MCDREN: 1;
49          // Watchdog Timer Reset Enable
50          volatile uint32_t WDTREN: 1;
51          // Software Reset
52          volatile uint32_t SWREN: 1;
53          // Comparator 0 Reset Enable
54          volatile uint32_t CMP0REN: 1;
55          // Comparator 1 Reset Enable
56          volatile uint32_t CMP1REN: 1;
57          // Low Power Mode Charge Pump Supply Fail Reset Enable
58          volatile uint32_t CPFREN: 1;
59          // RTC0 Reset Enable
60          volatile uint32_t RTC0REN: 1;
61                   uint32_t reserved2: 16;
62          // Low Power Mode Charge Pump Module Reset Enable
63          volatile uint32_t CPMREN: 1;
64          // UART0 Module Reset Enable
65          volatile uint32_t UART0MREN: 1;
66          // LCD0 Module Reset Enable
67          volatile uint32_t LCD0MREN: 1;
68          // ACCTR0 Module Reset Enable
69          volatile uint32_t ACC0MREN: 1;
70          // RTC0 Module Reset Enable
71          volatile uint32_t RTC0MREN: 1;
72       };
73       volatile uint32_t U32;
74    };
75 };
76 
77 #define SI32_RSTSRC_A_RESETEN_VMONREN_MASK  0x00000004
78 #define SI32_RSTSRC_A_RESETEN_VMONREN_SHIFT  2
79 // Disable the Voltage Supply Monitor VBAT event as a reset source.
80 #define SI32_RSTSRC_A_RESETEN_VMONREN_DISABLED_VALUE  0
81 #define SI32_RSTSRC_A_RESETEN_VMONREN_DISABLED_U32 \
82    (SI32_RSTSRC_A_RESETEN_VMONREN_DISABLED_VALUE << SI32_RSTSRC_A_RESETEN_VMONREN_SHIFT)
83 // Enable the Voltage Supply Monitor VBAT event as a reset source.
84 #define SI32_RSTSRC_A_RESETEN_VMONREN_ENABLED_VALUE  1
85 #define SI32_RSTSRC_A_RESETEN_VMONREN_ENABLED_U32 \
86    (SI32_RSTSRC_A_RESETEN_VMONREN_ENABLED_VALUE << SI32_RSTSRC_A_RESETEN_VMONREN_SHIFT)
87 
88 #define SI32_RSTSRC_A_RESETEN_MCDREN_MASK  0x00000010
89 #define SI32_RSTSRC_A_RESETEN_MCDREN_SHIFT  4
90 // Disable the Missing Clock Detector event as a reset source.
91 #define SI32_RSTSRC_A_RESETEN_MCDREN_DISABLED_VALUE  0
92 #define SI32_RSTSRC_A_RESETEN_MCDREN_DISABLED_U32 \
93    (SI32_RSTSRC_A_RESETEN_MCDREN_DISABLED_VALUE << SI32_RSTSRC_A_RESETEN_MCDREN_SHIFT)
94 // Enable the Missing Clock Detector event as a reset source.
95 #define SI32_RSTSRC_A_RESETEN_MCDREN_ENABLED_VALUE  1
96 #define SI32_RSTSRC_A_RESETEN_MCDREN_ENABLED_U32 \
97    (SI32_RSTSRC_A_RESETEN_MCDREN_ENABLED_VALUE << SI32_RSTSRC_A_RESETEN_MCDREN_SHIFT)
98 
99 #define SI32_RSTSRC_A_RESETEN_WDTREN_MASK  0x00000020
100 #define SI32_RSTSRC_A_RESETEN_WDTREN_SHIFT  5
101 // Disable the Watchdog Timer event as a reset source.
102 #define SI32_RSTSRC_A_RESETEN_WDTREN_DISABLED_VALUE  0
103 #define SI32_RSTSRC_A_RESETEN_WDTREN_DISABLED_U32 \
104    (SI32_RSTSRC_A_RESETEN_WDTREN_DISABLED_VALUE << SI32_RSTSRC_A_RESETEN_WDTREN_SHIFT)
105 // Enable the Watchdog Timer event as a reset source.
106 #define SI32_RSTSRC_A_RESETEN_WDTREN_ENABLED_VALUE  1
107 #define SI32_RSTSRC_A_RESETEN_WDTREN_ENABLED_U32 \
108    (SI32_RSTSRC_A_RESETEN_WDTREN_ENABLED_VALUE << SI32_RSTSRC_A_RESETEN_WDTREN_SHIFT)
109 
110 #define SI32_RSTSRC_A_RESETEN_SWREN_MASK  0x00000040
111 #define SI32_RSTSRC_A_RESETEN_SWREN_SHIFT  6
112 // Do not generate a Software Reset.
113 #define SI32_RSTSRC_A_RESETEN_SWREN_DISABLED_VALUE  0
114 #define SI32_RSTSRC_A_RESETEN_SWREN_DISABLED_U32 \
115    (SI32_RSTSRC_A_RESETEN_SWREN_DISABLED_VALUE << SI32_RSTSRC_A_RESETEN_SWREN_SHIFT)
116 // Generate a Software Reset.
117 #define SI32_RSTSRC_A_RESETEN_SWREN_ENABLED_VALUE  1
118 #define SI32_RSTSRC_A_RESETEN_SWREN_ENABLED_U32 \
119    (SI32_RSTSRC_A_RESETEN_SWREN_ENABLED_VALUE << SI32_RSTSRC_A_RESETEN_SWREN_SHIFT)
120 
121 #define SI32_RSTSRC_A_RESETEN_CMP0REN_MASK  0x00000080
122 #define SI32_RSTSRC_A_RESETEN_CMP0REN_SHIFT  7
123 // Disable the Comparator 0 event as a reset source.
124 #define SI32_RSTSRC_A_RESETEN_CMP0REN_DISABLED_VALUE  0
125 #define SI32_RSTSRC_A_RESETEN_CMP0REN_DISABLED_U32 \
126    (SI32_RSTSRC_A_RESETEN_CMP0REN_DISABLED_VALUE << SI32_RSTSRC_A_RESETEN_CMP0REN_SHIFT)
127 // Enable the Comparator 0 event as a reset source.
128 #define SI32_RSTSRC_A_RESETEN_CMP0REN_ENABLED_VALUE  1
129 #define SI32_RSTSRC_A_RESETEN_CMP0REN_ENABLED_U32 \
130    (SI32_RSTSRC_A_RESETEN_CMP0REN_ENABLED_VALUE << SI32_RSTSRC_A_RESETEN_CMP0REN_SHIFT)
131 
132 #define SI32_RSTSRC_A_RESETEN_CMP1REN_MASK  0x00000100
133 #define SI32_RSTSRC_A_RESETEN_CMP1REN_SHIFT  8
134 // Disable the Comparator 1 event as a reset source.
135 #define SI32_RSTSRC_A_RESETEN_CMP1REN_DISABLED_VALUE  0
136 #define SI32_RSTSRC_A_RESETEN_CMP1REN_DISABLED_U32 \
137    (SI32_RSTSRC_A_RESETEN_CMP1REN_DISABLED_VALUE << SI32_RSTSRC_A_RESETEN_CMP1REN_SHIFT)
138 // Enable the Comparator 1 event as a reset source.
139 #define SI32_RSTSRC_A_RESETEN_CMP1REN_ENABLED_VALUE  1
140 #define SI32_RSTSRC_A_RESETEN_CMP1REN_ENABLED_U32 \
141    (SI32_RSTSRC_A_RESETEN_CMP1REN_ENABLED_VALUE << SI32_RSTSRC_A_RESETEN_CMP1REN_SHIFT)
142 
143 #define SI32_RSTSRC_A_RESETEN_CPFREN_MASK  0x00000200
144 #define SI32_RSTSRC_A_RESETEN_CPFREN_SHIFT  9
145 // Disable the low power mode charge pump supply fail event as a reset source.
146 #define SI32_RSTSRC_A_RESETEN_CPFREN_DISABLED_VALUE  0
147 #define SI32_RSTSRC_A_RESETEN_CPFREN_DISABLED_U32 \
148    (SI32_RSTSRC_A_RESETEN_CPFREN_DISABLED_VALUE << SI32_RSTSRC_A_RESETEN_CPFREN_SHIFT)
149 // Enable the low power mode charge pump supply fail event as a reset source.
150 #define SI32_RSTSRC_A_RESETEN_CPFREN_ENABLED_VALUE  1
151 #define SI32_RSTSRC_A_RESETEN_CPFREN_ENABLED_U32 \
152    (SI32_RSTSRC_A_RESETEN_CPFREN_ENABLED_VALUE << SI32_RSTSRC_A_RESETEN_CPFREN_SHIFT)
153 
154 #define SI32_RSTSRC_A_RESETEN_RTC0REN_MASK  0x00000400
155 #define SI32_RSTSRC_A_RESETEN_RTC0REN_SHIFT  10
156 // Disable the RTC0 event as a reset source.
157 #define SI32_RSTSRC_A_RESETEN_RTC0REN_DISABLED_VALUE  0
158 #define SI32_RSTSRC_A_RESETEN_RTC0REN_DISABLED_U32 \
159    (SI32_RSTSRC_A_RESETEN_RTC0REN_DISABLED_VALUE << SI32_RSTSRC_A_RESETEN_RTC0REN_SHIFT)
160 // Enable the RTC0 event as a reset source.
161 #define SI32_RSTSRC_A_RESETEN_RTC0REN_ENABLED_VALUE  1
162 #define SI32_RSTSRC_A_RESETEN_RTC0REN_ENABLED_U32 \
163    (SI32_RSTSRC_A_RESETEN_RTC0REN_ENABLED_VALUE << SI32_RSTSRC_A_RESETEN_RTC0REN_SHIFT)
164 
165 #define SI32_RSTSRC_A_RESETEN_CPMREN_MASK  0x08000000
166 #define SI32_RSTSRC_A_RESETEN_CPMREN_SHIFT  27
167 // Disable low power mode charge pump module resets.
168 #define SI32_RSTSRC_A_RESETEN_CPMREN_DISABLED_VALUE  0
169 #define SI32_RSTSRC_A_RESETEN_CPMREN_DISABLED_U32 \
170    (SI32_RSTSRC_A_RESETEN_CPMREN_DISABLED_VALUE << SI32_RSTSRC_A_RESETEN_CPMREN_SHIFT)
171 // Enable low power mode charge pump module resets.
172 #define SI32_RSTSRC_A_RESETEN_CPMREN_ENABLED_VALUE  1
173 #define SI32_RSTSRC_A_RESETEN_CPMREN_ENABLED_U32 \
174    (SI32_RSTSRC_A_RESETEN_CPMREN_ENABLED_VALUE << SI32_RSTSRC_A_RESETEN_CPMREN_SHIFT)
175 
176 #define SI32_RSTSRC_A_RESETEN_UART0MREN_MASK  0x10000000
177 #define SI32_RSTSRC_A_RESETEN_UART0MREN_SHIFT  28
178 // Disable UART0 module resets.
179 #define SI32_RSTSRC_A_RESETEN_UART0MREN_DISABLED_VALUE  0
180 #define SI32_RSTSRC_A_RESETEN_UART0MREN_DISABLED_U32 \
181    (SI32_RSTSRC_A_RESETEN_UART0MREN_DISABLED_VALUE << SI32_RSTSRC_A_RESETEN_UART0MREN_SHIFT)
182 // Enable UART0 module resets.
183 #define SI32_RSTSRC_A_RESETEN_UART0MREN_ENABLED_VALUE  1
184 #define SI32_RSTSRC_A_RESETEN_UART0MREN_ENABLED_U32 \
185    (SI32_RSTSRC_A_RESETEN_UART0MREN_ENABLED_VALUE << SI32_RSTSRC_A_RESETEN_UART0MREN_SHIFT)
186 
187 #define SI32_RSTSRC_A_RESETEN_LCD0MREN_MASK  0x20000000
188 #define SI32_RSTSRC_A_RESETEN_LCD0MREN_SHIFT  29
189 // Disable LCD0 module resets.
190 #define SI32_RSTSRC_A_RESETEN_LCD0MREN_DISABLED_VALUE  0
191 #define SI32_RSTSRC_A_RESETEN_LCD0MREN_DISABLED_U32 \
192    (SI32_RSTSRC_A_RESETEN_LCD0MREN_DISABLED_VALUE << SI32_RSTSRC_A_RESETEN_LCD0MREN_SHIFT)
193 // Enable LCD0 module resets.
194 #define SI32_RSTSRC_A_RESETEN_LCD0MREN_ENABLED_VALUE  1
195 #define SI32_RSTSRC_A_RESETEN_LCD0MREN_ENABLED_U32 \
196    (SI32_RSTSRC_A_RESETEN_LCD0MREN_ENABLED_VALUE << SI32_RSTSRC_A_RESETEN_LCD0MREN_SHIFT)
197 
198 #define SI32_RSTSRC_A_RESETEN_ACC0MREN_MASK  0x40000000
199 #define SI32_RSTSRC_A_RESETEN_ACC0MREN_SHIFT  30
200 // Disable ACCTR0 module resets.
201 #define SI32_RSTSRC_A_RESETEN_ACC0MREN_DISABLED_VALUE  0
202 #define SI32_RSTSRC_A_RESETEN_ACC0MREN_DISABLED_U32 \
203    (SI32_RSTSRC_A_RESETEN_ACC0MREN_DISABLED_VALUE << SI32_RSTSRC_A_RESETEN_ACC0MREN_SHIFT)
204 // Enable ACCTR0 module resets.
205 #define SI32_RSTSRC_A_RESETEN_ACC0MREN_ENABLED_VALUE  1
206 #define SI32_RSTSRC_A_RESETEN_ACC0MREN_ENABLED_U32 \
207    (SI32_RSTSRC_A_RESETEN_ACC0MREN_ENABLED_VALUE << SI32_RSTSRC_A_RESETEN_ACC0MREN_SHIFT)
208 
209 #define SI32_RSTSRC_A_RESETEN_RTC0MREN_MASK  0x80000000
210 #define SI32_RSTSRC_A_RESETEN_RTC0MREN_SHIFT  31
211 // Disable RTC0 module resets.
212 #define SI32_RSTSRC_A_RESETEN_RTC0MREN_DISABLED_VALUE  0U
213 #define SI32_RSTSRC_A_RESETEN_RTC0MREN_DISABLED_U32 \
214    (SI32_RSTSRC_A_RESETEN_RTC0MREN_DISABLED_VALUE << SI32_RSTSRC_A_RESETEN_RTC0MREN_SHIFT)
215 // Enable RTC0 module resets.
216 #define SI32_RSTSRC_A_RESETEN_RTC0MREN_ENABLED_VALUE  1U
217 #define SI32_RSTSRC_A_RESETEN_RTC0MREN_ENABLED_U32 \
218    (SI32_RSTSRC_A_RESETEN_RTC0MREN_ENABLED_VALUE << SI32_RSTSRC_A_RESETEN_RTC0MREN_SHIFT)
219 
220 
221 
222 struct SI32_RSTSRC_A_RESETFLAG_Struct
223 {
224    union
225    {
226       struct
227       {
228          // Pin Reset Flag
229          volatile uint32_t PINRF: 1;
230          // Power-On Reset Flag
231          volatile uint32_t PORRF: 1;
232          // Voltage Supply Monitor VBAT Reset Flag
233          volatile uint32_t VMONRF: 1;
234          // Core Reset Flag
235          volatile uint32_t CORERF: 1;
236          // Missing Clock Detector Reset Flag
237          volatile uint32_t MCDRF: 1;
238          // Watchdog Timer Reset Flag
239          volatile uint32_t WDTRF: 1;
240          // Software Reset Flag
241          volatile uint32_t SWRF: 1;
242          // Comparator 0 Reset Flag
243          volatile uint32_t CMP0RF: 1;
244          // Comparator 1 Reset Flag
245          volatile uint32_t CMP1RF: 1;
246          // Low Power Mode Charge Pump Supply Fail Reset Flag
247          volatile uint32_t CPFRF: 1;
248          // RTC0 Reset Flag
249          volatile uint32_t RTC0RF: 1;
250          // PMU Wakeup Reset Flag
251          volatile uint32_t WAKERF: 1;
252                   uint32_t reserved0: 20;
253       };
254       volatile uint32_t U32;
255    };
256 };
257 
258 #define SI32_RSTSRC_A_RESETFLAG_PINRF_MASK  0x00000001
259 #define SI32_RSTSRC_A_RESETFLAG_PINRF_SHIFT  0
260 // A /RESET pin event did not cause the last system reset.
261 #define SI32_RSTSRC_A_RESETFLAG_PINRF_NOT_SET_VALUE  0
262 #define SI32_RSTSRC_A_RESETFLAG_PINRF_NOT_SET_U32 \
263    (SI32_RSTSRC_A_RESETFLAG_PINRF_NOT_SET_VALUE << SI32_RSTSRC_A_RESETFLAG_PINRF_SHIFT)
264 // A /RESET pin event caused the last system reset.
265 #define SI32_RSTSRC_A_RESETFLAG_PINRF_SET_VALUE  1
266 #define SI32_RSTSRC_A_RESETFLAG_PINRF_SET_U32 \
267    (SI32_RSTSRC_A_RESETFLAG_PINRF_SET_VALUE << SI32_RSTSRC_A_RESETFLAG_PINRF_SHIFT)
268 
269 #define SI32_RSTSRC_A_RESETFLAG_PORRF_MASK  0x00000002
270 #define SI32_RSTSRC_A_RESETFLAG_PORRF_SHIFT  1
271 // A Power-On Reset event did not cause the last system reset.
272 #define SI32_RSTSRC_A_RESETFLAG_PORRF_NOT_SET_VALUE  0
273 #define SI32_RSTSRC_A_RESETFLAG_PORRF_NOT_SET_U32 \
274    (SI32_RSTSRC_A_RESETFLAG_PORRF_NOT_SET_VALUE << SI32_RSTSRC_A_RESETFLAG_PORRF_SHIFT)
275 // A Power-On Reset event caused the last system reset.
276 #define SI32_RSTSRC_A_RESETFLAG_PORRF_SET_VALUE  1
277 #define SI32_RSTSRC_A_RESETFLAG_PORRF_SET_U32 \
278    (SI32_RSTSRC_A_RESETFLAG_PORRF_SET_VALUE << SI32_RSTSRC_A_RESETFLAG_PORRF_SHIFT)
279 
280 #define SI32_RSTSRC_A_RESETFLAG_VMONRF_MASK  0x00000004
281 #define SI32_RSTSRC_A_RESETFLAG_VMONRF_SHIFT  2
282 // A Voltage Supply Monitor VBAT Reset event did not cause the last system reset.
283 #define SI32_RSTSRC_A_RESETFLAG_VMONRF_NOT_SET_VALUE  0
284 #define SI32_RSTSRC_A_RESETFLAG_VMONRF_NOT_SET_U32 \
285    (SI32_RSTSRC_A_RESETFLAG_VMONRF_NOT_SET_VALUE << SI32_RSTSRC_A_RESETFLAG_VMONRF_SHIFT)
286 // A Voltage Supply Monitor VBAT Reset event caused the last system reset.
287 #define SI32_RSTSRC_A_RESETFLAG_VMONRF_SET_VALUE  1
288 #define SI32_RSTSRC_A_RESETFLAG_VMONRF_SET_U32 \
289    (SI32_RSTSRC_A_RESETFLAG_VMONRF_SET_VALUE << SI32_RSTSRC_A_RESETFLAG_VMONRF_SHIFT)
290 
291 #define SI32_RSTSRC_A_RESETFLAG_CORERF_MASK  0x00000008
292 #define SI32_RSTSRC_A_RESETFLAG_CORERF_SHIFT  3
293 // A Core Reset event did not cause the last system reset.
294 #define SI32_RSTSRC_A_RESETFLAG_CORERF_NOT_SET_VALUE  0
295 #define SI32_RSTSRC_A_RESETFLAG_CORERF_NOT_SET_U32 \
296    (SI32_RSTSRC_A_RESETFLAG_CORERF_NOT_SET_VALUE << SI32_RSTSRC_A_RESETFLAG_CORERF_SHIFT)
297 // A Core Reset event caused the last system reset.
298 #define SI32_RSTSRC_A_RESETFLAG_CORERF_SET_VALUE  1
299 #define SI32_RSTSRC_A_RESETFLAG_CORERF_SET_U32 \
300    (SI32_RSTSRC_A_RESETFLAG_CORERF_SET_VALUE << SI32_RSTSRC_A_RESETFLAG_CORERF_SHIFT)
301 
302 #define SI32_RSTSRC_A_RESETFLAG_MCDRF_MASK  0x00000010
303 #define SI32_RSTSRC_A_RESETFLAG_MCDRF_SHIFT  4
304 // A Missing Clock Detector event did not cause the last system reset.
305 #define SI32_RSTSRC_A_RESETFLAG_MCDRF_NOT_SET_VALUE  0
306 #define SI32_RSTSRC_A_RESETFLAG_MCDRF_NOT_SET_U32 \
307    (SI32_RSTSRC_A_RESETFLAG_MCDRF_NOT_SET_VALUE << SI32_RSTSRC_A_RESETFLAG_MCDRF_SHIFT)
308 // A Missing Clock Detector event caused the last system reset.
309 #define SI32_RSTSRC_A_RESETFLAG_MCDRF_SET_VALUE  1
310 #define SI32_RSTSRC_A_RESETFLAG_MCDRF_SET_U32 \
311    (SI32_RSTSRC_A_RESETFLAG_MCDRF_SET_VALUE << SI32_RSTSRC_A_RESETFLAG_MCDRF_SHIFT)
312 
313 #define SI32_RSTSRC_A_RESETFLAG_WDTRF_MASK  0x00000020
314 #define SI32_RSTSRC_A_RESETFLAG_WDTRF_SHIFT  5
315 // A Watchdog Timer event did not cause the last system reset.
316 #define SI32_RSTSRC_A_RESETFLAG_WDTRF_NOT_SET_VALUE  0
317 #define SI32_RSTSRC_A_RESETFLAG_WDTRF_NOT_SET_U32 \
318    (SI32_RSTSRC_A_RESETFLAG_WDTRF_NOT_SET_VALUE << SI32_RSTSRC_A_RESETFLAG_WDTRF_SHIFT)
319 // A Watchdog Timer event caused the last system reset.
320 #define SI32_RSTSRC_A_RESETFLAG_WDTRF_SET_VALUE  1
321 #define SI32_RSTSRC_A_RESETFLAG_WDTRF_SET_U32 \
322    (SI32_RSTSRC_A_RESETFLAG_WDTRF_SET_VALUE << SI32_RSTSRC_A_RESETFLAG_WDTRF_SHIFT)
323 
324 #define SI32_RSTSRC_A_RESETFLAG_SWRF_MASK  0x00000040
325 #define SI32_RSTSRC_A_RESETFLAG_SWRF_SHIFT  6
326 // A Software Reset event did not cause the last system reset.
327 #define SI32_RSTSRC_A_RESETFLAG_SWRF_NOT_SET_VALUE  0
328 #define SI32_RSTSRC_A_RESETFLAG_SWRF_NOT_SET_U32 \
329    (SI32_RSTSRC_A_RESETFLAG_SWRF_NOT_SET_VALUE << SI32_RSTSRC_A_RESETFLAG_SWRF_SHIFT)
330 // A Software Reset event caused the last system reset.
331 #define SI32_RSTSRC_A_RESETFLAG_SWRF_SET_VALUE  1
332 #define SI32_RSTSRC_A_RESETFLAG_SWRF_SET_U32 \
333    (SI32_RSTSRC_A_RESETFLAG_SWRF_SET_VALUE << SI32_RSTSRC_A_RESETFLAG_SWRF_SHIFT)
334 
335 #define SI32_RSTSRC_A_RESETFLAG_CMP0RF_MASK  0x00000080
336 #define SI32_RSTSRC_A_RESETFLAG_CMP0RF_SHIFT  7
337 // A Comparator 0 event did not cause the last system reset.
338 #define SI32_RSTSRC_A_RESETFLAG_CMP0RF_NOT_SET_VALUE  0
339 #define SI32_RSTSRC_A_RESETFLAG_CMP0RF_NOT_SET_U32 \
340    (SI32_RSTSRC_A_RESETFLAG_CMP0RF_NOT_SET_VALUE << SI32_RSTSRC_A_RESETFLAG_CMP0RF_SHIFT)
341 // A Comparator 0 event caused the last system reset.
342 #define SI32_RSTSRC_A_RESETFLAG_CMP0RF_SET_VALUE  1
343 #define SI32_RSTSRC_A_RESETFLAG_CMP0RF_SET_U32 \
344    (SI32_RSTSRC_A_RESETFLAG_CMP0RF_SET_VALUE << SI32_RSTSRC_A_RESETFLAG_CMP0RF_SHIFT)
345 
346 #define SI32_RSTSRC_A_RESETFLAG_CMP1RF_MASK  0x00000100
347 #define SI32_RSTSRC_A_RESETFLAG_CMP1RF_SHIFT  8
348 // A Comparator 1 event did not cause the last system reset.
349 #define SI32_RSTSRC_A_RESETFLAG_CMP1RF_NOT_SET_VALUE  0
350 #define SI32_RSTSRC_A_RESETFLAG_CMP1RF_NOT_SET_U32 \
351    (SI32_RSTSRC_A_RESETFLAG_CMP1RF_NOT_SET_VALUE << SI32_RSTSRC_A_RESETFLAG_CMP1RF_SHIFT)
352 // A Comparator 1 event caused the last system reset.
353 #define SI32_RSTSRC_A_RESETFLAG_CMP1RF_SET_VALUE  1
354 #define SI32_RSTSRC_A_RESETFLAG_CMP1RF_SET_U32 \
355    (SI32_RSTSRC_A_RESETFLAG_CMP1RF_SET_VALUE << SI32_RSTSRC_A_RESETFLAG_CMP1RF_SHIFT)
356 
357 #define SI32_RSTSRC_A_RESETFLAG_CPFRF_MASK  0x00000200
358 #define SI32_RSTSRC_A_RESETFLAG_CPFRF_SHIFT  9
359 // A low power mode charge pump supply fail event did not cause the last system
360 // reset.
361 #define SI32_RSTSRC_A_RESETFLAG_CPFRF_NOT_SET_VALUE  0
362 #define SI32_RSTSRC_A_RESETFLAG_CPFRF_NOT_SET_U32 \
363    (SI32_RSTSRC_A_RESETFLAG_CPFRF_NOT_SET_VALUE << SI32_RSTSRC_A_RESETFLAG_CPFRF_SHIFT)
364 // A low power mode charge pump supply fail event caused the last system reset.
365 #define SI32_RSTSRC_A_RESETFLAG_CPFRF_SET_VALUE  1
366 #define SI32_RSTSRC_A_RESETFLAG_CPFRF_SET_U32 \
367    (SI32_RSTSRC_A_RESETFLAG_CPFRF_SET_VALUE << SI32_RSTSRC_A_RESETFLAG_CPFRF_SHIFT)
368 
369 #define SI32_RSTSRC_A_RESETFLAG_RTC0RF_MASK  0x00000400
370 #define SI32_RSTSRC_A_RESETFLAG_RTC0RF_SHIFT  10
371 // An RTC0 event did not cause the last system reset.
372 #define SI32_RSTSRC_A_RESETFLAG_RTC0RF_NOT_SET_VALUE  0
373 #define SI32_RSTSRC_A_RESETFLAG_RTC0RF_NOT_SET_U32 \
374    (SI32_RSTSRC_A_RESETFLAG_RTC0RF_NOT_SET_VALUE << SI32_RSTSRC_A_RESETFLAG_RTC0RF_SHIFT)
375 // An RTC0 event caused the last system reset.
376 #define SI32_RSTSRC_A_RESETFLAG_RTC0RF_SET_VALUE  1
377 #define SI32_RSTSRC_A_RESETFLAG_RTC0RF_SET_U32 \
378    (SI32_RSTSRC_A_RESETFLAG_RTC0RF_SET_VALUE << SI32_RSTSRC_A_RESETFLAG_RTC0RF_SHIFT)
379 
380 #define SI32_RSTSRC_A_RESETFLAG_WAKERF_MASK  0x00000800
381 #define SI32_RSTSRC_A_RESETFLAG_WAKERF_SHIFT  11
382 // A PMU Wakeup event did not cause the last system reset.
383 #define SI32_RSTSRC_A_RESETFLAG_WAKERF_NOT_SET_VALUE  0
384 #define SI32_RSTSRC_A_RESETFLAG_WAKERF_NOT_SET_U32 \
385    (SI32_RSTSRC_A_RESETFLAG_WAKERF_NOT_SET_VALUE << SI32_RSTSRC_A_RESETFLAG_WAKERF_SHIFT)
386 // A PMU Wakeup event caused the last system reset.
387 #define SI32_RSTSRC_A_RESETFLAG_WAKERF_SET_VALUE  1
388 #define SI32_RSTSRC_A_RESETFLAG_WAKERF_SET_U32 \
389    (SI32_RSTSRC_A_RESETFLAG_WAKERF_SET_VALUE << SI32_RSTSRC_A_RESETFLAG_WAKERF_SHIFT)
390 
391 
392 
393 typedef struct SI32_RSTSRC_A_Struct
394 {
395    struct SI32_RSTSRC_A_RESETEN_Struct             RESETEN        ; // Base Address + 0x0
396    volatile uint32_t                               RESETEN_SET;
397    volatile uint32_t                               RESETEN_CLR;
398    uint32_t                                        reserved0;
399    struct SI32_RSTSRC_A_RESETFLAG_Struct           RESETFLAG      ; // Base Address + 0x10
400    uint32_t                                        reserved1;
401    uint32_t                                        reserved2;
402    uint32_t                                        reserved3;
403 } SI32_RSTSRC_A_Type;
404 
405 #ifdef __cplusplus
406 }
407 #endif
408 
409 #endif // __SI32_RSTSRC_A_REGISTERS_H__
410 
411 //-eof--------------------------------------------------------------------------
412 
413