1 /** 2 * \file 3 * 4 * \brief Component description for PM 5 * 6 * Copyright (c) 2016 Atmel Corporation, 7 * a wholly owned subsidiary of Microchip Technology Inc. 8 * 9 * \asf_license_start 10 * 11 * \page License 12 * 13 * Licensed under the Apache License, Version 2.0 (the "License"); 14 * you may not use this file except in compliance with the License. 15 * You may obtain a copy of the Licence at 16 * 17 * http://www.apache.org/licenses/LICENSE-2.0 18 * 19 * Unless required by applicable law or agreed to in writing, software 20 * distributed under the License is distributed on an "AS IS" BASIS, 21 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 22 * See the License for the specific language governing permissions and 23 * limitations under the License. 24 * 25 * \asf_license_stop 26 * 27 */ 28 29 #ifndef _SAML21_PM_COMPONENT_ 30 #define _SAML21_PM_COMPONENT_ 31 32 /* ========================================================================== */ 33 /** SOFTWARE API DEFINITION FOR PM */ 34 /* ========================================================================== */ 35 /** \addtogroup SAML21_PM Power Manager */ 36 /*@{*/ 37 38 #define PM_U2240 39 #define REV_PM 0x102 40 41 /* -------- PM_CTRLA : (PM Offset: 0x00) (R/W 8) Control A -------- */ 42 #if !(defined(__ASSEMBLY__) || defined(__IAR_SYSTEMS_ASM__)) 43 typedef union { 44 struct { 45 uint8_t :2; /*!< bit: 0.. 1 Reserved */ 46 uint8_t IORET:1; /*!< bit: 2 I/O Retention */ 47 uint8_t :5; /*!< bit: 3.. 7 Reserved */ 48 } bit; /*!< Structure used for bit access */ 49 uint8_t reg; /*!< Type used for register access */ 50 } PM_CTRLA_Type; 51 #endif /* !(defined(__ASSEMBLY__) || defined(__IAR_SYSTEMS_ASM__)) */ 52 53 #define PM_CTRLA_OFFSET 0x00 /**< \brief (PM_CTRLA offset) Control A */ 54 #define PM_CTRLA_RESETVALUE _U(0x00) /**< \brief (PM_CTRLA reset_value) Control A */ 55 56 #define PM_CTRLA_IORET_Pos 2 /**< \brief (PM_CTRLA) I/O Retention */ 57 #define PM_CTRLA_IORET (_U(0x1) << PM_CTRLA_IORET_Pos) 58 #define PM_CTRLA_MASK _U(0x04) /**< \brief (PM_CTRLA) MASK Register */ 59 60 /* -------- PM_SLEEPCFG : (PM Offset: 0x01) (R/W 8) Sleep Configuration -------- */ 61 #if !(defined(__ASSEMBLY__) || defined(__IAR_SYSTEMS_ASM__)) 62 typedef union { 63 struct { 64 uint8_t SLEEPMODE:3; /*!< bit: 0.. 2 Sleep Mode */ 65 uint8_t :5; /*!< bit: 3.. 7 Reserved */ 66 } bit; /*!< Structure used for bit access */ 67 uint8_t reg; /*!< Type used for register access */ 68 } PM_SLEEPCFG_Type; 69 #endif /* !(defined(__ASSEMBLY__) || defined(__IAR_SYSTEMS_ASM__)) */ 70 71 #define PM_SLEEPCFG_OFFSET 0x01 /**< \brief (PM_SLEEPCFG offset) Sleep Configuration */ 72 #define PM_SLEEPCFG_RESETVALUE _U(0x02) /**< \brief (PM_SLEEPCFG reset_value) Sleep Configuration */ 73 74 #define PM_SLEEPCFG_SLEEPMODE_Pos 0 /**< \brief (PM_SLEEPCFG) Sleep Mode */ 75 #define PM_SLEEPCFG_SLEEPMODE_Msk (_U(0x7) << PM_SLEEPCFG_SLEEPMODE_Pos) 76 #define PM_SLEEPCFG_SLEEPMODE(value) (PM_SLEEPCFG_SLEEPMODE_Msk & ((value) << PM_SLEEPCFG_SLEEPMODE_Pos)) 77 #define PM_SLEEPCFG_SLEEPMODE_IDLE_Val _U(0x2) /**< \brief (PM_SLEEPCFG) CPU, AHBx, and APBx clocks are OFF */ 78 #define PM_SLEEPCFG_SLEEPMODE_STANDBY_Val _U(0x4) /**< \brief (PM_SLEEPCFG) All Clocks are OFF */ 79 #define PM_SLEEPCFG_SLEEPMODE_BACKUP_Val _U(0x5) /**< \brief (PM_SLEEPCFG) Only Backup domain is powered ON */ 80 #define PM_SLEEPCFG_SLEEPMODE_OFF_Val _U(0x6) /**< \brief (PM_SLEEPCFG) All power domains are powered OFF */ 81 #define PM_SLEEPCFG_SLEEPMODE_IDLE (PM_SLEEPCFG_SLEEPMODE_IDLE_Val << PM_SLEEPCFG_SLEEPMODE_Pos) 82 #define PM_SLEEPCFG_SLEEPMODE_STANDBY (PM_SLEEPCFG_SLEEPMODE_STANDBY_Val << PM_SLEEPCFG_SLEEPMODE_Pos) 83 #define PM_SLEEPCFG_SLEEPMODE_BACKUP (PM_SLEEPCFG_SLEEPMODE_BACKUP_Val << PM_SLEEPCFG_SLEEPMODE_Pos) 84 #define PM_SLEEPCFG_SLEEPMODE_OFF (PM_SLEEPCFG_SLEEPMODE_OFF_Val << PM_SLEEPCFG_SLEEPMODE_Pos) 85 #define PM_SLEEPCFG_MASK _U(0x07) /**< \brief (PM_SLEEPCFG) MASK Register */ 86 87 /* -------- PM_PLCFG : (PM Offset: 0x02) (R/W 8) Performance Level Configuration -------- */ 88 #if !(defined(__ASSEMBLY__) || defined(__IAR_SYSTEMS_ASM__)) 89 typedef union { 90 struct { 91 uint8_t PLSEL:2; /*!< bit: 0.. 1 Performance Level Select */ 92 uint8_t :5; /*!< bit: 2.. 6 Reserved */ 93 uint8_t PLDIS:1; /*!< bit: 7 Performance Level Disable */ 94 } bit; /*!< Structure used for bit access */ 95 uint8_t reg; /*!< Type used for register access */ 96 } PM_PLCFG_Type; 97 #endif /* !(defined(__ASSEMBLY__) || defined(__IAR_SYSTEMS_ASM__)) */ 98 99 #define PM_PLCFG_OFFSET 0x02 /**< \brief (PM_PLCFG offset) Performance Level Configuration */ 100 #define PM_PLCFG_RESETVALUE _U(0x00) /**< \brief (PM_PLCFG reset_value) Performance Level Configuration */ 101 102 #define PM_PLCFG_PLSEL_Pos 0 /**< \brief (PM_PLCFG) Performance Level Select */ 103 #define PM_PLCFG_PLSEL_Msk (_U(0x3) << PM_PLCFG_PLSEL_Pos) 104 #define PM_PLCFG_PLSEL(value) (PM_PLCFG_PLSEL_Msk & ((value) << PM_PLCFG_PLSEL_Pos)) 105 #define PM_PLCFG_PLSEL_PL0_Val _U(0x0) /**< \brief (PM_PLCFG) Performance Level 0 */ 106 #define PM_PLCFG_PLSEL_PL1_Val _U(0x1) /**< \brief (PM_PLCFG) Performance Level 1 */ 107 #define PM_PLCFG_PLSEL_PL2_Val _U(0x2) /**< \brief (PM_PLCFG) Performance Level 2 */ 108 #define PM_PLCFG_PLSEL_PL0 (PM_PLCFG_PLSEL_PL0_Val << PM_PLCFG_PLSEL_Pos) 109 #define PM_PLCFG_PLSEL_PL1 (PM_PLCFG_PLSEL_PL1_Val << PM_PLCFG_PLSEL_Pos) 110 #define PM_PLCFG_PLSEL_PL2 (PM_PLCFG_PLSEL_PL2_Val << PM_PLCFG_PLSEL_Pos) 111 #define PM_PLCFG_PLDIS_Pos 7 /**< \brief (PM_PLCFG) Performance Level Disable */ 112 #define PM_PLCFG_PLDIS (_U(0x1) << PM_PLCFG_PLDIS_Pos) 113 #define PM_PLCFG_MASK _U(0x83) /**< \brief (PM_PLCFG) MASK Register */ 114 115 /* -------- PM_INTENCLR : (PM Offset: 0x04) (R/W 8) Interrupt Enable Clear -------- */ 116 #if !(defined(__ASSEMBLY__) || defined(__IAR_SYSTEMS_ASM__)) 117 typedef union { 118 struct { 119 uint8_t PLRDY:1; /*!< bit: 0 Performance Level Interrupt Enable */ 120 uint8_t :7; /*!< bit: 1.. 7 Reserved */ 121 } bit; /*!< Structure used for bit access */ 122 uint8_t reg; /*!< Type used for register access */ 123 } PM_INTENCLR_Type; 124 #endif /* !(defined(__ASSEMBLY__) || defined(__IAR_SYSTEMS_ASM__)) */ 125 126 #define PM_INTENCLR_OFFSET 0x04 /**< \brief (PM_INTENCLR offset) Interrupt Enable Clear */ 127 #define PM_INTENCLR_RESETVALUE _U(0x00) /**< \brief (PM_INTENCLR reset_value) Interrupt Enable Clear */ 128 129 #define PM_INTENCLR_PLRDY_Pos 0 /**< \brief (PM_INTENCLR) Performance Level Interrupt Enable */ 130 #define PM_INTENCLR_PLRDY (_U(0x1) << PM_INTENCLR_PLRDY_Pos) 131 #define PM_INTENCLR_MASK _U(0x01) /**< \brief (PM_INTENCLR) MASK Register */ 132 133 /* -------- PM_INTENSET : (PM Offset: 0x05) (R/W 8) Interrupt Enable Set -------- */ 134 #if !(defined(__ASSEMBLY__) || defined(__IAR_SYSTEMS_ASM__)) 135 typedef union { 136 struct { 137 uint8_t PLRDY:1; /*!< bit: 0 Performance Level Ready interrupt Enable */ 138 uint8_t :7; /*!< bit: 1.. 7 Reserved */ 139 } bit; /*!< Structure used for bit access */ 140 uint8_t reg; /*!< Type used for register access */ 141 } PM_INTENSET_Type; 142 #endif /* !(defined(__ASSEMBLY__) || defined(__IAR_SYSTEMS_ASM__)) */ 143 144 #define PM_INTENSET_OFFSET 0x05 /**< \brief (PM_INTENSET offset) Interrupt Enable Set */ 145 #define PM_INTENSET_RESETVALUE _U(0x00) /**< \brief (PM_INTENSET reset_value) Interrupt Enable Set */ 146 147 #define PM_INTENSET_PLRDY_Pos 0 /**< \brief (PM_INTENSET) Performance Level Ready interrupt Enable */ 148 #define PM_INTENSET_PLRDY (_U(0x1) << PM_INTENSET_PLRDY_Pos) 149 #define PM_INTENSET_MASK _U(0x01) /**< \brief (PM_INTENSET) MASK Register */ 150 151 /* -------- PM_INTFLAG : (PM Offset: 0x06) (R/W 8) Interrupt Flag Status and Clear -------- */ 152 #if !(defined(__ASSEMBLY__) || defined(__IAR_SYSTEMS_ASM__)) 153 typedef union { // __I to avoid read-modify-write on write-to-clear register 154 struct { 155 __I uint8_t PLRDY:1; /*!< bit: 0 Performance Level Ready */ 156 __I uint8_t :7; /*!< bit: 1.. 7 Reserved */ 157 } bit; /*!< Structure used for bit access */ 158 uint8_t reg; /*!< Type used for register access */ 159 } PM_INTFLAG_Type; 160 #endif /* !(defined(__ASSEMBLY__) || defined(__IAR_SYSTEMS_ASM__)) */ 161 162 #define PM_INTFLAG_OFFSET 0x06 /**< \brief (PM_INTFLAG offset) Interrupt Flag Status and Clear */ 163 #define PM_INTFLAG_RESETVALUE _U(0x00) /**< \brief (PM_INTFLAG reset_value) Interrupt Flag Status and Clear */ 164 165 #define PM_INTFLAG_PLRDY_Pos 0 /**< \brief (PM_INTFLAG) Performance Level Ready */ 166 #define PM_INTFLAG_PLRDY (_U(0x1) << PM_INTFLAG_PLRDY_Pos) 167 #define PM_INTFLAG_MASK _U(0x01) /**< \brief (PM_INTFLAG) MASK Register */ 168 169 /* -------- PM_STDBYCFG : (PM Offset: 0x08) (R/W 16) Standby Configuration -------- */ 170 #if !(defined(__ASSEMBLY__) || defined(__IAR_SYSTEMS_ASM__)) 171 typedef union { 172 struct { 173 uint16_t PDCFG:2; /*!< bit: 0.. 1 Power Domain Configuration */ 174 uint16_t :2; /*!< bit: 2.. 3 Reserved */ 175 uint16_t DPGPD0:1; /*!< bit: 4 Dynamic Power Gating for PD0 */ 176 uint16_t DPGPD1:1; /*!< bit: 5 Dynamic Power Gating for PD1 */ 177 uint16_t VREGSMOD:2; /*!< bit: 6.. 7 Voltage Regulator Standby mode */ 178 uint16_t LINKPD:2; /*!< bit: 8.. 9 Linked Power Domain */ 179 uint16_t BBIASHS:2; /*!< bit: 10..11 Back Bias for HMCRAMCHS */ 180 uint16_t BBIASLP:2; /*!< bit: 12..13 Back Bias for HMCRAMCLP */ 181 uint16_t BBIASPP:2; /*!< bit: 14..15 Back Bias for PicoPram */ 182 } bit; /*!< Structure used for bit access */ 183 uint16_t reg; /*!< Type used for register access */ 184 } PM_STDBYCFG_Type; 185 #endif /* !(defined(__ASSEMBLY__) || defined(__IAR_SYSTEMS_ASM__)) */ 186 187 #define PM_STDBYCFG_OFFSET 0x08 /**< \brief (PM_STDBYCFG offset) Standby Configuration */ 188 #define PM_STDBYCFG_RESETVALUE _U(0x0000) /**< \brief (PM_STDBYCFG reset_value) Standby Configuration */ 189 190 #define PM_STDBYCFG_PDCFG_Pos 0 /**< \brief (PM_STDBYCFG) Power Domain Configuration */ 191 #define PM_STDBYCFG_PDCFG_Msk (_U(0x3) << PM_STDBYCFG_PDCFG_Pos) 192 #define PM_STDBYCFG_PDCFG(value) (PM_STDBYCFG_PDCFG_Msk & ((value) << PM_STDBYCFG_PDCFG_Pos)) 193 #define PM_STDBYCFG_PDCFG_DEFAULT_Val _U(0x0) /**< \brief (PM_STDBYCFG) All power domains switching is handled by hardware. */ 194 #define PM_STDBYCFG_PDCFG_PD0_Val _U(0x1) /**< \brief (PM_STDBYCFG) PD0 is forced ACTIVE. PD1 and PD2 power domains switching is handled by hardware. */ 195 #define PM_STDBYCFG_PDCFG_PD01_Val _U(0x2) /**< \brief (PM_STDBYCFG) PD0 and PD1 are forced ACTIVE. PD2 power domain switching is handled by hardware. */ 196 #define PM_STDBYCFG_PDCFG_PD012_Val _U(0x3) /**< \brief (PM_STDBYCFG) All power domains are forced ACTIVE. */ 197 #define PM_STDBYCFG_PDCFG_DEFAULT (PM_STDBYCFG_PDCFG_DEFAULT_Val << PM_STDBYCFG_PDCFG_Pos) 198 #define PM_STDBYCFG_PDCFG_PD0 (PM_STDBYCFG_PDCFG_PD0_Val << PM_STDBYCFG_PDCFG_Pos) 199 #define PM_STDBYCFG_PDCFG_PD01 (PM_STDBYCFG_PDCFG_PD01_Val << PM_STDBYCFG_PDCFG_Pos) 200 #define PM_STDBYCFG_PDCFG_PD012 (PM_STDBYCFG_PDCFG_PD012_Val << PM_STDBYCFG_PDCFG_Pos) 201 #define PM_STDBYCFG_DPGPD0_Pos 4 /**< \brief (PM_STDBYCFG) Dynamic Power Gating for PD0 */ 202 #define PM_STDBYCFG_DPGPD0 (_U(0x1) << PM_STDBYCFG_DPGPD0_Pos) 203 #define PM_STDBYCFG_DPGPD1_Pos 5 /**< \brief (PM_STDBYCFG) Dynamic Power Gating for PD1 */ 204 #define PM_STDBYCFG_DPGPD1 (_U(0x1) << PM_STDBYCFG_DPGPD1_Pos) 205 #define PM_STDBYCFG_VREGSMOD_Pos 6 /**< \brief (PM_STDBYCFG) Voltage Regulator Standby mode */ 206 #define PM_STDBYCFG_VREGSMOD_Msk (_U(0x3) << PM_STDBYCFG_VREGSMOD_Pos) 207 #define PM_STDBYCFG_VREGSMOD(value) (PM_STDBYCFG_VREGSMOD_Msk & ((value) << PM_STDBYCFG_VREGSMOD_Pos)) 208 #define PM_STDBYCFG_VREGSMOD_AUTO_Val _U(0x0) /**< \brief (PM_STDBYCFG) Automatic mode */ 209 #define PM_STDBYCFG_VREGSMOD_PERFORMANCE_Val _U(0x1) /**< \brief (PM_STDBYCFG) Performance oriented */ 210 #define PM_STDBYCFG_VREGSMOD_LP_Val _U(0x2) /**< \brief (PM_STDBYCFG) Low Power oriented */ 211 #define PM_STDBYCFG_VREGSMOD_AUTO (PM_STDBYCFG_VREGSMOD_AUTO_Val << PM_STDBYCFG_VREGSMOD_Pos) 212 #define PM_STDBYCFG_VREGSMOD_PERFORMANCE (PM_STDBYCFG_VREGSMOD_PERFORMANCE_Val << PM_STDBYCFG_VREGSMOD_Pos) 213 #define PM_STDBYCFG_VREGSMOD_LP (PM_STDBYCFG_VREGSMOD_LP_Val << PM_STDBYCFG_VREGSMOD_Pos) 214 #define PM_STDBYCFG_LINKPD_Pos 8 /**< \brief (PM_STDBYCFG) Linked Power Domain */ 215 #define PM_STDBYCFG_LINKPD_Msk (_U(0x3) << PM_STDBYCFG_LINKPD_Pos) 216 #define PM_STDBYCFG_LINKPD(value) (PM_STDBYCFG_LINKPD_Msk & ((value) << PM_STDBYCFG_LINKPD_Pos)) 217 #define PM_STDBYCFG_LINKPD_DEFAULT_Val _U(0x0) /**< \brief (PM_STDBYCFG) Power domains are not linked */ 218 #define PM_STDBYCFG_LINKPD_PD01_Val _U(0x1) /**< \brief (PM_STDBYCFG) PD0 and PD1 power domains are linked */ 219 #define PM_STDBYCFG_LINKPD_PD12_Val _U(0x2) /**< \brief (PM_STDBYCFG) PD1 and PD2 power domains are linked */ 220 #define PM_STDBYCFG_LINKPD_PD012_Val _U(0x3) /**< \brief (PM_STDBYCFG) All power domains are linked */ 221 #define PM_STDBYCFG_LINKPD_DEFAULT (PM_STDBYCFG_LINKPD_DEFAULT_Val << PM_STDBYCFG_LINKPD_Pos) 222 #define PM_STDBYCFG_LINKPD_PD01 (PM_STDBYCFG_LINKPD_PD01_Val << PM_STDBYCFG_LINKPD_Pos) 223 #define PM_STDBYCFG_LINKPD_PD12 (PM_STDBYCFG_LINKPD_PD12_Val << PM_STDBYCFG_LINKPD_Pos) 224 #define PM_STDBYCFG_LINKPD_PD012 (PM_STDBYCFG_LINKPD_PD012_Val << PM_STDBYCFG_LINKPD_Pos) 225 #define PM_STDBYCFG_BBIASHS_Pos 10 /**< \brief (PM_STDBYCFG) Back Bias for HMCRAMCHS */ 226 #define PM_STDBYCFG_BBIASHS_Msk (_U(0x3) << PM_STDBYCFG_BBIASHS_Pos) 227 #define PM_STDBYCFG_BBIASHS(value) (PM_STDBYCFG_BBIASHS_Msk & ((value) << PM_STDBYCFG_BBIASHS_Pos)) 228 #define PM_STDBYCFG_BBIASLP_Pos 12 /**< \brief (PM_STDBYCFG) Back Bias for HMCRAMCLP */ 229 #define PM_STDBYCFG_BBIASLP_Msk (_U(0x3) << PM_STDBYCFG_BBIASLP_Pos) 230 #define PM_STDBYCFG_BBIASLP(value) (PM_STDBYCFG_BBIASLP_Msk & ((value) << PM_STDBYCFG_BBIASLP_Pos)) 231 #define PM_STDBYCFG_BBIASPP_Pos 14 /**< \brief (PM_STDBYCFG) Back Bias for PicoPram */ 232 #define PM_STDBYCFG_BBIASPP_Msk (_U(0x3) << PM_STDBYCFG_BBIASPP_Pos) 233 #define PM_STDBYCFG_BBIASPP(value) (PM_STDBYCFG_BBIASPP_Msk & ((value) << PM_STDBYCFG_BBIASPP_Pos)) 234 #define PM_STDBYCFG_MASK _U(0xFFF3) /**< \brief (PM_STDBYCFG) MASK Register */ 235 236 /* -------- PM_PWSAKDLY : (PM Offset: 0x0C) (R/W 8) Power Switch Acknowledge Delay -------- */ 237 #if !(defined(__ASSEMBLY__) || defined(__IAR_SYSTEMS_ASM__)) 238 typedef union { 239 struct { 240 uint8_t DLYVAL:7; /*!< bit: 0.. 6 Delay Value */ 241 uint8_t IGNACK:1; /*!< bit: 7 Ignore Acknowledge */ 242 } bit; /*!< Structure used for bit access */ 243 uint8_t reg; /*!< Type used for register access */ 244 } PM_PWSAKDLY_Type; 245 #endif /* !(defined(__ASSEMBLY__) || defined(__IAR_SYSTEMS_ASM__)) */ 246 247 #define PM_PWSAKDLY_OFFSET 0x0C /**< \brief (PM_PWSAKDLY offset) Power Switch Acknowledge Delay */ 248 #define PM_PWSAKDLY_RESETVALUE _U(0x00) /**< \brief (PM_PWSAKDLY reset_value) Power Switch Acknowledge Delay */ 249 250 #define PM_PWSAKDLY_DLYVAL_Pos 0 /**< \brief (PM_PWSAKDLY) Delay Value */ 251 #define PM_PWSAKDLY_DLYVAL_Msk (_U(0x7F) << PM_PWSAKDLY_DLYVAL_Pos) 252 #define PM_PWSAKDLY_DLYVAL(value) (PM_PWSAKDLY_DLYVAL_Msk & ((value) << PM_PWSAKDLY_DLYVAL_Pos)) 253 #define PM_PWSAKDLY_IGNACK_Pos 7 /**< \brief (PM_PWSAKDLY) Ignore Acknowledge */ 254 #define PM_PWSAKDLY_IGNACK (_U(0x1) << PM_PWSAKDLY_IGNACK_Pos) 255 #define PM_PWSAKDLY_MASK _U(0xFF) /**< \brief (PM_PWSAKDLY) MASK Register */ 256 257 /** \brief PM hardware registers */ 258 #if !(defined(__ASSEMBLY__) || defined(__IAR_SYSTEMS_ASM__)) 259 typedef struct { 260 __IO PM_CTRLA_Type CTRLA; /**< \brief Offset: 0x00 (R/W 8) Control A */ 261 __IO PM_SLEEPCFG_Type SLEEPCFG; /**< \brief Offset: 0x01 (R/W 8) Sleep Configuration */ 262 __IO PM_PLCFG_Type PLCFG; /**< \brief Offset: 0x02 (R/W 8) Performance Level Configuration */ 263 RoReg8 Reserved1[0x1]; 264 __IO PM_INTENCLR_Type INTENCLR; /**< \brief Offset: 0x04 (R/W 8) Interrupt Enable Clear */ 265 __IO PM_INTENSET_Type INTENSET; /**< \brief Offset: 0x05 (R/W 8) Interrupt Enable Set */ 266 __IO PM_INTFLAG_Type INTFLAG; /**< \brief Offset: 0x06 (R/W 8) Interrupt Flag Status and Clear */ 267 RoReg8 Reserved2[0x1]; 268 __IO PM_STDBYCFG_Type STDBYCFG; /**< \brief Offset: 0x08 (R/W 16) Standby Configuration */ 269 RoReg8 Reserved3[0x2]; 270 __IO PM_PWSAKDLY_Type PWSAKDLY; /**< \brief Offset: 0x0C (R/W 8) Power Switch Acknowledge Delay */ 271 } Pm; 272 #endif /* !(defined(__ASSEMBLY__) || defined(__IAR_SYSTEMS_ASM__)) */ 273 274 /*@}*/ 275 276 #endif /* _SAML21_PM_COMPONENT_ */ 277