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