1 /* 2 * Copyright 1997-2016 Freescale Semiconductor, Inc. 3 * Copyright 2016-2021 NXP 4 * 5 * SPDX-License-Identifier: BSD-3-Clause 6 */ 7 8 /*! 9 * @file S32K148_SCB.h 10 * @version 1.0 11 * @date 2021-02-18 12 * @brief Peripheral Access Layer for S32K148_SCB 13 * 14 * This file contains register definitions and macros for easy access to their 15 * bit fields. 16 * 17 * This file assumes LITTLE endian system. 18 */ 19 20 /** 21 * @page misra_violations MISRA-C:2012 violations 22 * 23 * @section [global] 24 * Violates MISRA 2012 Advisory Rule 2.3, local typedef not referenced 25 * The SoC header defines typedef for all modules. 26 * 27 * @section [global] 28 * Violates MISRA 2012 Advisory Rule 2.5, local macro not referenced 29 * The SoC header defines macros for all modules and registers. 30 * 31 * @section [global] 32 * Violates MISRA 2012 Advisory Directive 4.9, Function-like macro 33 * These are generated macros used for accessing the bit-fields from registers. 34 * 35 * @section [global] 36 * Violates MISRA 2012 Required Rule 5.1, identifier clash 37 * The supported compilers use more than 31 significant characters for identifiers. 38 * 39 * @section [global] 40 * Violates MISRA 2012 Required Rule 5.2, identifier clash 41 * The supported compilers use more than 31 significant characters for identifiers. 42 * 43 * @section [global] 44 * Violates MISRA 2012 Required Rule 5.4, identifier clash 45 * The supported compilers use more than 31 significant characters for identifiers. 46 * 47 * @section [global] 48 * Violates MISRA 2012 Required Rule 5.5, identifier clash 49 * The supported compilers use more than 31 significant characters for identifiers. 50 * 51 * @section [global] 52 * Violates MISRA 2012 Required Rule 21.1, defined macro '__I' is reserved to the compiler 53 * This type qualifier is needed to ensure correct I/O access and addressing. 54 */ 55 56 /* Prevention from multiple including the same memory map */ 57 #if !defined(S32K148_SCB_H_) /* Check if memory map has not been already included */ 58 #define S32K148_SCB_H_ 59 60 #include "S32K148_COMMON.h" 61 62 /* ---------------------------------------------------------------------------- 63 -- S32_SCB Peripheral Access Layer 64 ---------------------------------------------------------------------------- */ 65 66 /*! 67 * @addtogroup S32_SCB_Peripheral_Access_Layer S32_SCB Peripheral Access Layer 68 * @{ 69 */ 70 71 72 /** S32_SCB - Size of Registers Arrays */ 73 74 /** S32_SCB - Register Layout Typedef */ 75 typedef struct { 76 uint8_t RESERVED_0[8]; 77 __IO uint32_t ACTLR; /**< Auxiliary Control Register,, offset: 0x8 */ 78 uint8_t RESERVED_1[3316]; 79 __I uint32_t CPUID; /**< CPUID Base Register, offset: 0xD00 */ 80 __IO uint32_t ICSR; /**< Interrupt Control and State Register, offset: 0xD04 */ 81 __IO uint32_t VTOR; /**< Vector Table Offset Register, offset: 0xD08 */ 82 __IO uint32_t AIRCR; /**< Application Interrupt and Reset Control Register, offset: 0xD0C */ 83 __IO uint32_t SCR; /**< System Control Register, offset: 0xD10 */ 84 __IO uint32_t CCR; /**< Configuration and Control Register, offset: 0xD14 */ 85 __IO uint32_t SHPR1; /**< System Handler Priority Register 1, offset: 0xD18 */ 86 __IO uint32_t SHPR2; /**< System Handler Priority Register 2, offset: 0xD1C */ 87 __IO uint32_t SHPR3; /**< System Handler Priority Register 3, offset: 0xD20 */ 88 __IO uint32_t SHCSR; /**< System Handler Control and State Register, offset: 0xD24 */ 89 __IO uint32_t CFSR; /**< Configurable Fault Status Registers, offset: 0xD28 */ 90 __IO uint32_t HFSR; /**< HardFault Status register, offset: 0xD2C */ 91 __IO uint32_t DFSR; /**< Debug Fault Status Register, offset: 0xD30 */ 92 __IO uint32_t MMFAR; /**< MemManage Address Register, offset: 0xD34 */ 93 __IO uint32_t BFAR; /**< BusFault Address Register, offset: 0xD38 */ 94 __IO uint32_t AFSR; /**< Auxiliary Fault Status Register, offset: 0xD3C */ 95 uint8_t RESERVED_2[72]; 96 __IO uint32_t CPACR; /**< Coprocessor Access Control Register, offset: 0xD88 */ 97 uint8_t RESERVED_3[424]; 98 __IO uint32_t FPCCR; /**< Floating-point Context Control Register, offset: 0xF34 */ 99 __IO uint32_t FPCAR; /**< Floating-point Context Address Register, offset: 0xF38 */ 100 __IO uint32_t FPDSCR; /**< Floating-point Default Status Control Register, offset: 0xF3C */ 101 } S32_SCB_Type, *S32_SCB_MemMapPtr; 102 103 /** Number of instances of the S32_SCB module. */ 104 #define S32_SCB_INSTANCE_COUNT (1u) 105 106 107 /* S32_SCB - Peripheral instance base addresses */ 108 /** Peripheral S32_SCB base address */ 109 #define S32_SCB_BASE (0xE000E000u) 110 /** Peripheral S32_SCB base pointer */ 111 #define S32_SCB ((S32_SCB_Type *)S32_SCB_BASE) 112 /** Array initializer of S32_SCB peripheral base addresses */ 113 #define S32_SCB_BASE_ADDRS { S32_SCB_BASE } 114 /** Array initializer of S32_SCB peripheral base pointers */ 115 #define S32_SCB_BASE_PTRS { S32_SCB } 116 117 /* ---------------------------------------------------------------------------- 118 -- S32_SCB Register Masks 119 ---------------------------------------------------------------------------- */ 120 121 /*! 122 * @addtogroup S32_SCB_Register_Masks S32_SCB Register Masks 123 * @{ 124 */ 125 126 /* ACTLR Bit Fields */ 127 #define S32_SCB_ACTLR_DISMCYCINT_MASK 0x1u 128 #define S32_SCB_ACTLR_DISMCYCINT_SHIFT 0u 129 #define S32_SCB_ACTLR_DISMCYCINT_WIDTH 1u 130 #define S32_SCB_ACTLR_DISMCYCINT(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_ACTLR_DISMCYCINT_SHIFT))&S32_SCB_ACTLR_DISMCYCINT_MASK) 131 #define S32_SCB_ACTLR_DISDEFWBUF_MASK 0x2u 132 #define S32_SCB_ACTLR_DISDEFWBUF_SHIFT 1u 133 #define S32_SCB_ACTLR_DISDEFWBUF_WIDTH 1u 134 #define S32_SCB_ACTLR_DISDEFWBUF(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_ACTLR_DISDEFWBUF_SHIFT))&S32_SCB_ACTLR_DISDEFWBUF_MASK) 135 #define S32_SCB_ACTLR_DISFOLD_MASK 0x4u 136 #define S32_SCB_ACTLR_DISFOLD_SHIFT 2u 137 #define S32_SCB_ACTLR_DISFOLD_WIDTH 1u 138 #define S32_SCB_ACTLR_DISFOLD(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_ACTLR_DISFOLD_SHIFT))&S32_SCB_ACTLR_DISFOLD_MASK) 139 #define S32_SCB_ACTLR_DISFPCA_MASK 0x100u 140 #define S32_SCB_ACTLR_DISFPCA_SHIFT 8u 141 #define S32_SCB_ACTLR_DISFPCA_WIDTH 1u 142 #define S32_SCB_ACTLR_DISFPCA(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_ACTLR_DISFPCA_SHIFT))&S32_SCB_ACTLR_DISFPCA_MASK) 143 #define S32_SCB_ACTLR_DISOOFP_MASK 0x200u 144 #define S32_SCB_ACTLR_DISOOFP_SHIFT 9u 145 #define S32_SCB_ACTLR_DISOOFP_WIDTH 1u 146 #define S32_SCB_ACTLR_DISOOFP(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_ACTLR_DISOOFP_SHIFT))&S32_SCB_ACTLR_DISOOFP_MASK) 147 /* CPUID Bit Fields */ 148 #define S32_SCB_CPUID_REVISION_MASK 0xFu 149 #define S32_SCB_CPUID_REVISION_SHIFT 0u 150 #define S32_SCB_CPUID_REVISION_WIDTH 4u 151 #define S32_SCB_CPUID_REVISION(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CPUID_REVISION_SHIFT))&S32_SCB_CPUID_REVISION_MASK) 152 #define S32_SCB_CPUID_PARTNO_MASK 0xFFF0u 153 #define S32_SCB_CPUID_PARTNO_SHIFT 4u 154 #define S32_SCB_CPUID_PARTNO_WIDTH 12u 155 #define S32_SCB_CPUID_PARTNO(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CPUID_PARTNO_SHIFT))&S32_SCB_CPUID_PARTNO_MASK) 156 #define S32_SCB_CPUID_VARIANT_MASK 0xF00000u 157 #define S32_SCB_CPUID_VARIANT_SHIFT 20u 158 #define S32_SCB_CPUID_VARIANT_WIDTH 4u 159 #define S32_SCB_CPUID_VARIANT(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CPUID_VARIANT_SHIFT))&S32_SCB_CPUID_VARIANT_MASK) 160 #define S32_SCB_CPUID_IMPLEMENTER_MASK 0xFF000000u 161 #define S32_SCB_CPUID_IMPLEMENTER_SHIFT 24u 162 #define S32_SCB_CPUID_IMPLEMENTER_WIDTH 8u 163 #define S32_SCB_CPUID_IMPLEMENTER(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CPUID_IMPLEMENTER_SHIFT))&S32_SCB_CPUID_IMPLEMENTER_MASK) 164 /* ICSR Bit Fields */ 165 #define S32_SCB_ICSR_VECTACTIVE_MASK 0x1FFu 166 #define S32_SCB_ICSR_VECTACTIVE_SHIFT 0u 167 #define S32_SCB_ICSR_VECTACTIVE_WIDTH 9u 168 #define S32_SCB_ICSR_VECTACTIVE(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_ICSR_VECTACTIVE_SHIFT))&S32_SCB_ICSR_VECTACTIVE_MASK) 169 #define S32_SCB_ICSR_RETTOBASE_MASK 0x800u 170 #define S32_SCB_ICSR_RETTOBASE_SHIFT 11u 171 #define S32_SCB_ICSR_RETTOBASE_WIDTH 1u 172 #define S32_SCB_ICSR_RETTOBASE(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_ICSR_RETTOBASE_SHIFT))&S32_SCB_ICSR_RETTOBASE_MASK) 173 #define S32_SCB_ICSR_VECTPENDING_MASK 0x3F000u 174 #define S32_SCB_ICSR_VECTPENDING_SHIFT 12u 175 #define S32_SCB_ICSR_VECTPENDING_WIDTH 6u 176 #define S32_SCB_ICSR_VECTPENDING(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_ICSR_VECTPENDING_SHIFT))&S32_SCB_ICSR_VECTPENDING_MASK) 177 #define S32_SCB_ICSR_ISRPENDING_MASK 0x400000u 178 #define S32_SCB_ICSR_ISRPENDING_SHIFT 22u 179 #define S32_SCB_ICSR_ISRPENDING_WIDTH 1u 180 #define S32_SCB_ICSR_ISRPENDING(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_ICSR_ISRPENDING_SHIFT))&S32_SCB_ICSR_ISRPENDING_MASK) 181 #define S32_SCB_ICSR_ISRPREEMPT_MASK 0x800000u 182 #define S32_SCB_ICSR_ISRPREEMPT_SHIFT 23u 183 #define S32_SCB_ICSR_ISRPREEMPT_WIDTH 1u 184 #define S32_SCB_ICSR_ISRPREEMPT(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_ICSR_ISRPREEMPT_SHIFT))&S32_SCB_ICSR_ISRPREEMPT_MASK) 185 #define S32_SCB_ICSR_PENDSTCLR_MASK 0x2000000u 186 #define S32_SCB_ICSR_PENDSTCLR_SHIFT 25u 187 #define S32_SCB_ICSR_PENDSTCLR_WIDTH 1u 188 #define S32_SCB_ICSR_PENDSTCLR(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_ICSR_PENDSTCLR_SHIFT))&S32_SCB_ICSR_PENDSTCLR_MASK) 189 #define S32_SCB_ICSR_PENDSTSET_MASK 0x4000000u 190 #define S32_SCB_ICSR_PENDSTSET_SHIFT 26u 191 #define S32_SCB_ICSR_PENDSTSET_WIDTH 1u 192 #define S32_SCB_ICSR_PENDSTSET(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_ICSR_PENDSTSET_SHIFT))&S32_SCB_ICSR_PENDSTSET_MASK) 193 #define S32_SCB_ICSR_PENDSVCLR_MASK 0x8000000u 194 #define S32_SCB_ICSR_PENDSVCLR_SHIFT 27u 195 #define S32_SCB_ICSR_PENDSVCLR_WIDTH 1u 196 #define S32_SCB_ICSR_PENDSVCLR(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_ICSR_PENDSVCLR_SHIFT))&S32_SCB_ICSR_PENDSVCLR_MASK) 197 #define S32_SCB_ICSR_PENDSVSET_MASK 0x10000000u 198 #define S32_SCB_ICSR_PENDSVSET_SHIFT 28u 199 #define S32_SCB_ICSR_PENDSVSET_WIDTH 1u 200 #define S32_SCB_ICSR_PENDSVSET(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_ICSR_PENDSVSET_SHIFT))&S32_SCB_ICSR_PENDSVSET_MASK) 201 #define S32_SCB_ICSR_NMIPENDSET_MASK 0x80000000u 202 #define S32_SCB_ICSR_NMIPENDSET_SHIFT 31u 203 #define S32_SCB_ICSR_NMIPENDSET_WIDTH 1u 204 #define S32_SCB_ICSR_NMIPENDSET(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_ICSR_NMIPENDSET_SHIFT))&S32_SCB_ICSR_NMIPENDSET_MASK) 205 /* VTOR Bit Fields */ 206 #define S32_SCB_VTOR_TBLOFF_MASK 0xFFFFFF80u 207 #define S32_SCB_VTOR_TBLOFF_SHIFT 7u 208 #define S32_SCB_VTOR_TBLOFF_WIDTH 25u 209 #define S32_SCB_VTOR_TBLOFF(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_VTOR_TBLOFF_SHIFT))&S32_SCB_VTOR_TBLOFF_MASK) 210 /* AIRCR Bit Fields */ 211 #define S32_SCB_AIRCR_VECTRESET_MASK 0x1u 212 #define S32_SCB_AIRCR_VECTRESET_SHIFT 0u 213 #define S32_SCB_AIRCR_VECTRESET_WIDTH 1u 214 #define S32_SCB_AIRCR_VECTRESET(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_AIRCR_VECTRESET_SHIFT))&S32_SCB_AIRCR_VECTRESET_MASK) 215 #define S32_SCB_AIRCR_VECTCLRACTIVE_MASK 0x2u 216 #define S32_SCB_AIRCR_VECTCLRACTIVE_SHIFT 1u 217 #define S32_SCB_AIRCR_VECTCLRACTIVE_WIDTH 1u 218 #define S32_SCB_AIRCR_VECTCLRACTIVE(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_AIRCR_VECTCLRACTIVE_SHIFT))&S32_SCB_AIRCR_VECTCLRACTIVE_MASK) 219 #define S32_SCB_AIRCR_SYSRESETREQ_MASK 0x4u 220 #define S32_SCB_AIRCR_SYSRESETREQ_SHIFT 2u 221 #define S32_SCB_AIRCR_SYSRESETREQ_WIDTH 1u 222 #define S32_SCB_AIRCR_SYSRESETREQ(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_AIRCR_SYSRESETREQ_SHIFT))&S32_SCB_AIRCR_SYSRESETREQ_MASK) 223 #define S32_SCB_AIRCR_PRIGROUP_MASK 0x700u 224 #define S32_SCB_AIRCR_PRIGROUP_SHIFT 8u 225 #define S32_SCB_AIRCR_PRIGROUP_WIDTH 3u 226 #define S32_SCB_AIRCR_PRIGROUP(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_AIRCR_PRIGROUP_SHIFT))&S32_SCB_AIRCR_PRIGROUP_MASK) 227 #define S32_SCB_AIRCR_ENDIANNESS_MASK 0x8000u 228 #define S32_SCB_AIRCR_ENDIANNESS_SHIFT 15u 229 #define S32_SCB_AIRCR_ENDIANNESS_WIDTH 1u 230 #define S32_SCB_AIRCR_ENDIANNESS(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_AIRCR_ENDIANNESS_SHIFT))&S32_SCB_AIRCR_ENDIANNESS_MASK) 231 #define S32_SCB_AIRCR_VECTKEY_MASK 0xFFFF0000u 232 #define S32_SCB_AIRCR_VECTKEY_SHIFT 16u 233 #define S32_SCB_AIRCR_VECTKEY_WIDTH 16u 234 #define S32_SCB_AIRCR_VECTKEY(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_AIRCR_VECTKEY_SHIFT))&S32_SCB_AIRCR_VECTKEY_MASK) 235 /* SCR Bit Fields */ 236 #define S32_SCB_SCR_SLEEPONEXIT_MASK 0x2u 237 #define S32_SCB_SCR_SLEEPONEXIT_SHIFT 1u 238 #define S32_SCB_SCR_SLEEPONEXIT_WIDTH 1u 239 #define S32_SCB_SCR_SLEEPONEXIT(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_SCR_SLEEPONEXIT_SHIFT))&S32_SCB_SCR_SLEEPONEXIT_MASK) 240 #define S32_SCB_SCR_SLEEPDEEP_MASK 0x4u 241 #define S32_SCB_SCR_SLEEPDEEP_SHIFT 2u 242 #define S32_SCB_SCR_SLEEPDEEP_WIDTH 1u 243 #define S32_SCB_SCR_SLEEPDEEP(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_SCR_SLEEPDEEP_SHIFT))&S32_SCB_SCR_SLEEPDEEP_MASK) 244 #define S32_SCB_SCR_SEVONPEND_MASK 0x10u 245 #define S32_SCB_SCR_SEVONPEND_SHIFT 4u 246 #define S32_SCB_SCR_SEVONPEND_WIDTH 1u 247 #define S32_SCB_SCR_SEVONPEND(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_SCR_SEVONPEND_SHIFT))&S32_SCB_SCR_SEVONPEND_MASK) 248 /* CCR Bit Fields */ 249 #define S32_SCB_CCR_NONBASETHRDENA_MASK 0x1u 250 #define S32_SCB_CCR_NONBASETHRDENA_SHIFT 0u 251 #define S32_SCB_CCR_NONBASETHRDENA_WIDTH 1u 252 #define S32_SCB_CCR_NONBASETHRDENA(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CCR_NONBASETHRDENA_SHIFT))&S32_SCB_CCR_NONBASETHRDENA_MASK) 253 #define S32_SCB_CCR_USERSETMPEND_MASK 0x2u 254 #define S32_SCB_CCR_USERSETMPEND_SHIFT 1u 255 #define S32_SCB_CCR_USERSETMPEND_WIDTH 1u 256 #define S32_SCB_CCR_USERSETMPEND(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CCR_USERSETMPEND_SHIFT))&S32_SCB_CCR_USERSETMPEND_MASK) 257 #define S32_SCB_CCR_UNALIGN_TRP_MASK 0x8u 258 #define S32_SCB_CCR_UNALIGN_TRP_SHIFT 3u 259 #define S32_SCB_CCR_UNALIGN_TRP_WIDTH 1u 260 #define S32_SCB_CCR_UNALIGN_TRP(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CCR_UNALIGN_TRP_SHIFT))&S32_SCB_CCR_UNALIGN_TRP_MASK) 261 #define S32_SCB_CCR_DIV_0_TRP_MASK 0x10u 262 #define S32_SCB_CCR_DIV_0_TRP_SHIFT 4u 263 #define S32_SCB_CCR_DIV_0_TRP_WIDTH 1u 264 #define S32_SCB_CCR_DIV_0_TRP(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CCR_DIV_0_TRP_SHIFT))&S32_SCB_CCR_DIV_0_TRP_MASK) 265 #define S32_SCB_CCR_BFHFNMIGN_MASK 0x100u 266 #define S32_SCB_CCR_BFHFNMIGN_SHIFT 8u 267 #define S32_SCB_CCR_BFHFNMIGN_WIDTH 1u 268 #define S32_SCB_CCR_BFHFNMIGN(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CCR_BFHFNMIGN_SHIFT))&S32_SCB_CCR_BFHFNMIGN_MASK) 269 #define S32_SCB_CCR_STKALIGN_MASK 0x200u 270 #define S32_SCB_CCR_STKALIGN_SHIFT 9u 271 #define S32_SCB_CCR_STKALIGN_WIDTH 1u 272 #define S32_SCB_CCR_STKALIGN(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CCR_STKALIGN_SHIFT))&S32_SCB_CCR_STKALIGN_MASK) 273 /* SHPR1 Bit Fields */ 274 #define S32_SCB_SHPR1_PRI_4_MASK 0xFFu 275 #define S32_SCB_SHPR1_PRI_4_SHIFT 0u 276 #define S32_SCB_SHPR1_PRI_4_WIDTH 8u 277 #define S32_SCB_SHPR1_PRI_4(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_SHPR1_PRI_4_SHIFT))&S32_SCB_SHPR1_PRI_4_MASK) 278 #define S32_SCB_SHPR1_PRI_5_MASK 0xFF00u 279 #define S32_SCB_SHPR1_PRI_5_SHIFT 8u 280 #define S32_SCB_SHPR1_PRI_5_WIDTH 8u 281 #define S32_SCB_SHPR1_PRI_5(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_SHPR1_PRI_5_SHIFT))&S32_SCB_SHPR1_PRI_5_MASK) 282 #define S32_SCB_SHPR1_PRI_6_MASK 0xFF0000u 283 #define S32_SCB_SHPR1_PRI_6_SHIFT 16u 284 #define S32_SCB_SHPR1_PRI_6_WIDTH 8u 285 #define S32_SCB_SHPR1_PRI_6(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_SHPR1_PRI_6_SHIFT))&S32_SCB_SHPR1_PRI_6_MASK) 286 /* SHPR2 Bit Fields */ 287 #define S32_SCB_SHPR2_PRI_11_MASK 0xFF000000u 288 #define S32_SCB_SHPR2_PRI_11_SHIFT 24u 289 #define S32_SCB_SHPR2_PRI_11_WIDTH 8u 290 #define S32_SCB_SHPR2_PRI_11(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_SHPR2_PRI_11_SHIFT))&S32_SCB_SHPR2_PRI_11_MASK) 291 /* SHPR3 Bit Fields */ 292 #define S32_SCB_SHPR3_PRI_12_MASK 0xFFu 293 #define S32_SCB_SHPR3_PRI_12_SHIFT 0u 294 #define S32_SCB_SHPR3_PRI_12_WIDTH 8u 295 #define S32_SCB_SHPR3_PRI_12(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_SHPR3_PRI_12_SHIFT))&S32_SCB_SHPR3_PRI_12_MASK) 296 #define S32_SCB_SHPR3_PRI_14_MASK 0xFF0000u 297 #define S32_SCB_SHPR3_PRI_14_SHIFT 16u 298 #define S32_SCB_SHPR3_PRI_14_WIDTH 8u 299 #define S32_SCB_SHPR3_PRI_14(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_SHPR3_PRI_14_SHIFT))&S32_SCB_SHPR3_PRI_14_MASK) 300 #define S32_SCB_SHPR3_PRI_15_MASK 0xFF000000u 301 #define S32_SCB_SHPR3_PRI_15_SHIFT 24u 302 #define S32_SCB_SHPR3_PRI_15_WIDTH 8u 303 #define S32_SCB_SHPR3_PRI_15(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_SHPR3_PRI_15_SHIFT))&S32_SCB_SHPR3_PRI_15_MASK) 304 /* SHCSR Bit Fields */ 305 #define S32_SCB_SHCSR_MEMFAULTACT_MASK 0x1u 306 #define S32_SCB_SHCSR_MEMFAULTACT_SHIFT 0u 307 #define S32_SCB_SHCSR_MEMFAULTACT_WIDTH 1u 308 #define S32_SCB_SHCSR_MEMFAULTACT(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_SHCSR_MEMFAULTACT_SHIFT))&S32_SCB_SHCSR_MEMFAULTACT_MASK) 309 #define S32_SCB_SHCSR_BUSFAULTACT_MASK 0x2u 310 #define S32_SCB_SHCSR_BUSFAULTACT_SHIFT 1u 311 #define S32_SCB_SHCSR_BUSFAULTACT_WIDTH 1u 312 #define S32_SCB_SHCSR_BUSFAULTACT(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_SHCSR_BUSFAULTACT_SHIFT))&S32_SCB_SHCSR_BUSFAULTACT_MASK) 313 #define S32_SCB_SHCSR_USGFAULTACT_MASK 0x8u 314 #define S32_SCB_SHCSR_USGFAULTACT_SHIFT 3u 315 #define S32_SCB_SHCSR_USGFAULTACT_WIDTH 1u 316 #define S32_SCB_SHCSR_USGFAULTACT(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_SHCSR_USGFAULTACT_SHIFT))&S32_SCB_SHCSR_USGFAULTACT_MASK) 317 #define S32_SCB_SHCSR_SVCALLACT_MASK 0x80u 318 #define S32_SCB_SHCSR_SVCALLACT_SHIFT 7u 319 #define S32_SCB_SHCSR_SVCALLACT_WIDTH 1u 320 #define S32_SCB_SHCSR_SVCALLACT(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_SHCSR_SVCALLACT_SHIFT))&S32_SCB_SHCSR_SVCALLACT_MASK) 321 #define S32_SCB_SHCSR_MONITORACT_MASK 0x100u 322 #define S32_SCB_SHCSR_MONITORACT_SHIFT 8u 323 #define S32_SCB_SHCSR_MONITORACT_WIDTH 1u 324 #define S32_SCB_SHCSR_MONITORACT(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_SHCSR_MONITORACT_SHIFT))&S32_SCB_SHCSR_MONITORACT_MASK) 325 #define S32_SCB_SHCSR_PENDSVACT_MASK 0x400u 326 #define S32_SCB_SHCSR_PENDSVACT_SHIFT 10u 327 #define S32_SCB_SHCSR_PENDSVACT_WIDTH 1u 328 #define S32_SCB_SHCSR_PENDSVACT(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_SHCSR_PENDSVACT_SHIFT))&S32_SCB_SHCSR_PENDSVACT_MASK) 329 #define S32_SCB_SHCSR_SYSTICKACT_MASK 0x800u 330 #define S32_SCB_SHCSR_SYSTICKACT_SHIFT 11u 331 #define S32_SCB_SHCSR_SYSTICKACT_WIDTH 1u 332 #define S32_SCB_SHCSR_SYSTICKACT(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_SHCSR_SYSTICKACT_SHIFT))&S32_SCB_SHCSR_SYSTICKACT_MASK) 333 #define S32_SCB_SHCSR_USGFAULTPENDED_MASK 0x1000u 334 #define S32_SCB_SHCSR_USGFAULTPENDED_SHIFT 12u 335 #define S32_SCB_SHCSR_USGFAULTPENDED_WIDTH 1u 336 #define S32_SCB_SHCSR_USGFAULTPENDED(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_SHCSR_USGFAULTPENDED_SHIFT))&S32_SCB_SHCSR_USGFAULTPENDED_MASK) 337 #define S32_SCB_SHCSR_MEMFAULTPENDED_MASK 0x2000u 338 #define S32_SCB_SHCSR_MEMFAULTPENDED_SHIFT 13u 339 #define S32_SCB_SHCSR_MEMFAULTPENDED_WIDTH 1u 340 #define S32_SCB_SHCSR_MEMFAULTPENDED(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_SHCSR_MEMFAULTPENDED_SHIFT))&S32_SCB_SHCSR_MEMFAULTPENDED_MASK) 341 #define S32_SCB_SHCSR_BUSFAULTPENDED_MASK 0x4000u 342 #define S32_SCB_SHCSR_BUSFAULTPENDED_SHIFT 14u 343 #define S32_SCB_SHCSR_BUSFAULTPENDED_WIDTH 1u 344 #define S32_SCB_SHCSR_BUSFAULTPENDED(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_SHCSR_BUSFAULTPENDED_SHIFT))&S32_SCB_SHCSR_BUSFAULTPENDED_MASK) 345 #define S32_SCB_SHCSR_SVCALLPENDED_MASK 0x8000u 346 #define S32_SCB_SHCSR_SVCALLPENDED_SHIFT 15u 347 #define S32_SCB_SHCSR_SVCALLPENDED_WIDTH 1u 348 #define S32_SCB_SHCSR_SVCALLPENDED(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_SHCSR_SVCALLPENDED_SHIFT))&S32_SCB_SHCSR_SVCALLPENDED_MASK) 349 #define S32_SCB_SHCSR_MEMFAULTENA_MASK 0x10000u 350 #define S32_SCB_SHCSR_MEMFAULTENA_SHIFT 16u 351 #define S32_SCB_SHCSR_MEMFAULTENA_WIDTH 1u 352 #define S32_SCB_SHCSR_MEMFAULTENA(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_SHCSR_MEMFAULTENA_SHIFT))&S32_SCB_SHCSR_MEMFAULTENA_MASK) 353 #define S32_SCB_SHCSR_BUSFAULTENA_MASK 0x20000u 354 #define S32_SCB_SHCSR_BUSFAULTENA_SHIFT 17u 355 #define S32_SCB_SHCSR_BUSFAULTENA_WIDTH 1u 356 #define S32_SCB_SHCSR_BUSFAULTENA(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_SHCSR_BUSFAULTENA_SHIFT))&S32_SCB_SHCSR_BUSFAULTENA_MASK) 357 #define S32_SCB_SHCSR_USGFAULTENA_MASK 0x40000u 358 #define S32_SCB_SHCSR_USGFAULTENA_SHIFT 18u 359 #define S32_SCB_SHCSR_USGFAULTENA_WIDTH 1u 360 #define S32_SCB_SHCSR_USGFAULTENA(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_SHCSR_USGFAULTENA_SHIFT))&S32_SCB_SHCSR_USGFAULTENA_MASK) 361 /* CFSR Bit Fields */ 362 #define S32_SCB_CFSR_IACCVIOL_MASK 0x1u 363 #define S32_SCB_CFSR_IACCVIOL_SHIFT 0u 364 #define S32_SCB_CFSR_IACCVIOL_WIDTH 1u 365 #define S32_SCB_CFSR_IACCVIOL(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CFSR_IACCVIOL_SHIFT))&S32_SCB_CFSR_IACCVIOL_MASK) 366 #define S32_SCB_CFSR_DACCVIOL_MASK 0x2u 367 #define S32_SCB_CFSR_DACCVIOL_SHIFT 1u 368 #define S32_SCB_CFSR_DACCVIOL_WIDTH 1u 369 #define S32_SCB_CFSR_DACCVIOL(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CFSR_DACCVIOL_SHIFT))&S32_SCB_CFSR_DACCVIOL_MASK) 370 #define S32_SCB_CFSR_MUNSTKERR_MASK 0x8u 371 #define S32_SCB_CFSR_MUNSTKERR_SHIFT 3u 372 #define S32_SCB_CFSR_MUNSTKERR_WIDTH 1u 373 #define S32_SCB_CFSR_MUNSTKERR(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CFSR_MUNSTKERR_SHIFT))&S32_SCB_CFSR_MUNSTKERR_MASK) 374 #define S32_SCB_CFSR_MSTKERR_MASK 0x10u 375 #define S32_SCB_CFSR_MSTKERR_SHIFT 4u 376 #define S32_SCB_CFSR_MSTKERR_WIDTH 1u 377 #define S32_SCB_CFSR_MSTKERR(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CFSR_MSTKERR_SHIFT))&S32_SCB_CFSR_MSTKERR_MASK) 378 #define S32_SCB_CFSR_MLSPERR_MASK 0x20u 379 #define S32_SCB_CFSR_MLSPERR_SHIFT 5u 380 #define S32_SCB_CFSR_MLSPERR_WIDTH 1u 381 #define S32_SCB_CFSR_MLSPERR(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CFSR_MLSPERR_SHIFT))&S32_SCB_CFSR_MLSPERR_MASK) 382 #define S32_SCB_CFSR_MMARVALID_MASK 0x80u 383 #define S32_SCB_CFSR_MMARVALID_SHIFT 7u 384 #define S32_SCB_CFSR_MMARVALID_WIDTH 1u 385 #define S32_SCB_CFSR_MMARVALID(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CFSR_MMARVALID_SHIFT))&S32_SCB_CFSR_MMARVALID_MASK) 386 #define S32_SCB_CFSR_IBUSERR_MASK 0x100u 387 #define S32_SCB_CFSR_IBUSERR_SHIFT 8u 388 #define S32_SCB_CFSR_IBUSERR_WIDTH 1u 389 #define S32_SCB_CFSR_IBUSERR(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CFSR_IBUSERR_SHIFT))&S32_SCB_CFSR_IBUSERR_MASK) 390 #define S32_SCB_CFSR_PRECISERR_MASK 0x200u 391 #define S32_SCB_CFSR_PRECISERR_SHIFT 9u 392 #define S32_SCB_CFSR_PRECISERR_WIDTH 1u 393 #define S32_SCB_CFSR_PRECISERR(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CFSR_PRECISERR_SHIFT))&S32_SCB_CFSR_PRECISERR_MASK) 394 #define S32_SCB_CFSR_IMPRECISERR_MASK 0x400u 395 #define S32_SCB_CFSR_IMPRECISERR_SHIFT 10u 396 #define S32_SCB_CFSR_IMPRECISERR_WIDTH 1u 397 #define S32_SCB_CFSR_IMPRECISERR(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CFSR_IMPRECISERR_SHIFT))&S32_SCB_CFSR_IMPRECISERR_MASK) 398 #define S32_SCB_CFSR_UNSTKERR_MASK 0x800u 399 #define S32_SCB_CFSR_UNSTKERR_SHIFT 11u 400 #define S32_SCB_CFSR_UNSTKERR_WIDTH 1u 401 #define S32_SCB_CFSR_UNSTKERR(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CFSR_UNSTKERR_SHIFT))&S32_SCB_CFSR_UNSTKERR_MASK) 402 #define S32_SCB_CFSR_STKERR_MASK 0x1000u 403 #define S32_SCB_CFSR_STKERR_SHIFT 12u 404 #define S32_SCB_CFSR_STKERR_WIDTH 1u 405 #define S32_SCB_CFSR_STKERR(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CFSR_STKERR_SHIFT))&S32_SCB_CFSR_STKERR_MASK) 406 #define S32_SCB_CFSR_LSPERR_MASK 0x2000u 407 #define S32_SCB_CFSR_LSPERR_SHIFT 13u 408 #define S32_SCB_CFSR_LSPERR_WIDTH 1u 409 #define S32_SCB_CFSR_LSPERR(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CFSR_LSPERR_SHIFT))&S32_SCB_CFSR_LSPERR_MASK) 410 #define S32_SCB_CFSR_BFARVALID_MASK 0x8000u 411 #define S32_SCB_CFSR_BFARVALID_SHIFT 15u 412 #define S32_SCB_CFSR_BFARVALID_WIDTH 1u 413 #define S32_SCB_CFSR_BFARVALID(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CFSR_BFARVALID_SHIFT))&S32_SCB_CFSR_BFARVALID_MASK) 414 #define S32_SCB_CFSR_UNDEFINSTR_MASK 0x10000u 415 #define S32_SCB_CFSR_UNDEFINSTR_SHIFT 16u 416 #define S32_SCB_CFSR_UNDEFINSTR_WIDTH 1u 417 #define S32_SCB_CFSR_UNDEFINSTR(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CFSR_UNDEFINSTR_SHIFT))&S32_SCB_CFSR_UNDEFINSTR_MASK) 418 #define S32_SCB_CFSR_INVSTATE_MASK 0x20000u 419 #define S32_SCB_CFSR_INVSTATE_SHIFT 17u 420 #define S32_SCB_CFSR_INVSTATE_WIDTH 1u 421 #define S32_SCB_CFSR_INVSTATE(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CFSR_INVSTATE_SHIFT))&S32_SCB_CFSR_INVSTATE_MASK) 422 #define S32_SCB_CFSR_INVPC_MASK 0x40000u 423 #define S32_SCB_CFSR_INVPC_SHIFT 18u 424 #define S32_SCB_CFSR_INVPC_WIDTH 1u 425 #define S32_SCB_CFSR_INVPC(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CFSR_INVPC_SHIFT))&S32_SCB_CFSR_INVPC_MASK) 426 #define S32_SCB_CFSR_NOCP_MASK 0x80000u 427 #define S32_SCB_CFSR_NOCP_SHIFT 19u 428 #define S32_SCB_CFSR_NOCP_WIDTH 1u 429 #define S32_SCB_CFSR_NOCP(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CFSR_NOCP_SHIFT))&S32_SCB_CFSR_NOCP_MASK) 430 #define S32_SCB_CFSR_UNALIGNED_MASK 0x1000000u 431 #define S32_SCB_CFSR_UNALIGNED_SHIFT 24u 432 #define S32_SCB_CFSR_UNALIGNED_WIDTH 1u 433 #define S32_SCB_CFSR_UNALIGNED(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CFSR_UNALIGNED_SHIFT))&S32_SCB_CFSR_UNALIGNED_MASK) 434 #define S32_SCB_CFSR_DIVBYZERO_MASK 0x2000000u 435 #define S32_SCB_CFSR_DIVBYZERO_SHIFT 25u 436 #define S32_SCB_CFSR_DIVBYZERO_WIDTH 1u 437 #define S32_SCB_CFSR_DIVBYZERO(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CFSR_DIVBYZERO_SHIFT))&S32_SCB_CFSR_DIVBYZERO_MASK) 438 /* HFSR Bit Fields */ 439 #define S32_SCB_HFSR_VECTTBL_MASK 0x2u 440 #define S32_SCB_HFSR_VECTTBL_SHIFT 1u 441 #define S32_SCB_HFSR_VECTTBL_WIDTH 1u 442 #define S32_SCB_HFSR_VECTTBL(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_HFSR_VECTTBL_SHIFT))&S32_SCB_HFSR_VECTTBL_MASK) 443 #define S32_SCB_HFSR_FORCED_MASK 0x40000000u 444 #define S32_SCB_HFSR_FORCED_SHIFT 30u 445 #define S32_SCB_HFSR_FORCED_WIDTH 1u 446 #define S32_SCB_HFSR_FORCED(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_HFSR_FORCED_SHIFT))&S32_SCB_HFSR_FORCED_MASK) 447 #define S32_SCB_HFSR_DEBUGEVT_MASK 0x80000000u 448 #define S32_SCB_HFSR_DEBUGEVT_SHIFT 31u 449 #define S32_SCB_HFSR_DEBUGEVT_WIDTH 1u 450 #define S32_SCB_HFSR_DEBUGEVT(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_HFSR_DEBUGEVT_SHIFT))&S32_SCB_HFSR_DEBUGEVT_MASK) 451 /* DFSR Bit Fields */ 452 #define S32_SCB_DFSR_HALTED_MASK 0x1u 453 #define S32_SCB_DFSR_HALTED_SHIFT 0u 454 #define S32_SCB_DFSR_HALTED_WIDTH 1u 455 #define S32_SCB_DFSR_HALTED(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_DFSR_HALTED_SHIFT))&S32_SCB_DFSR_HALTED_MASK) 456 #define S32_SCB_DFSR_BKPT_MASK 0x2u 457 #define S32_SCB_DFSR_BKPT_SHIFT 1u 458 #define S32_SCB_DFSR_BKPT_WIDTH 1u 459 #define S32_SCB_DFSR_BKPT(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_DFSR_BKPT_SHIFT))&S32_SCB_DFSR_BKPT_MASK) 460 #define S32_SCB_DFSR_DWTTRAP_MASK 0x4u 461 #define S32_SCB_DFSR_DWTTRAP_SHIFT 2u 462 #define S32_SCB_DFSR_DWTTRAP_WIDTH 1u 463 #define S32_SCB_DFSR_DWTTRAP(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_DFSR_DWTTRAP_SHIFT))&S32_SCB_DFSR_DWTTRAP_MASK) 464 #define S32_SCB_DFSR_VCATCH_MASK 0x8u 465 #define S32_SCB_DFSR_VCATCH_SHIFT 3u 466 #define S32_SCB_DFSR_VCATCH_WIDTH 1u 467 #define S32_SCB_DFSR_VCATCH(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_DFSR_VCATCH_SHIFT))&S32_SCB_DFSR_VCATCH_MASK) 468 #define S32_SCB_DFSR_EXTERNAL_MASK 0x10u 469 #define S32_SCB_DFSR_EXTERNAL_SHIFT 4u 470 #define S32_SCB_DFSR_EXTERNAL_WIDTH 1u 471 #define S32_SCB_DFSR_EXTERNAL(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_DFSR_EXTERNAL_SHIFT))&S32_SCB_DFSR_EXTERNAL_MASK) 472 /* MMFAR Bit Fields */ 473 #define S32_SCB_MMFAR_ADDRESS_MASK 0xFFFFFFFFu 474 #define S32_SCB_MMFAR_ADDRESS_SHIFT 0u 475 #define S32_SCB_MMFAR_ADDRESS_WIDTH 32u 476 #define S32_SCB_MMFAR_ADDRESS(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_MMFAR_ADDRESS_SHIFT))&S32_SCB_MMFAR_ADDRESS_MASK) 477 /* BFAR Bit Fields */ 478 #define S32_SCB_BFAR_ADDRESS_MASK 0xFFFFFFFFu 479 #define S32_SCB_BFAR_ADDRESS_SHIFT 0u 480 #define S32_SCB_BFAR_ADDRESS_WIDTH 32u 481 #define S32_SCB_BFAR_ADDRESS(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_BFAR_ADDRESS_SHIFT))&S32_SCB_BFAR_ADDRESS_MASK) 482 /* AFSR Bit Fields */ 483 #define S32_SCB_AFSR_AUXFAULT_MASK 0xFFFFFFFFu 484 #define S32_SCB_AFSR_AUXFAULT_SHIFT 0u 485 #define S32_SCB_AFSR_AUXFAULT_WIDTH 32u 486 #define S32_SCB_AFSR_AUXFAULT(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_AFSR_AUXFAULT_SHIFT))&S32_SCB_AFSR_AUXFAULT_MASK) 487 /* CPACR Bit Fields */ 488 #define S32_SCB_CPACR_CP10_MASK 0x300000u 489 #define S32_SCB_CPACR_CP10_SHIFT 20u 490 #define S32_SCB_CPACR_CP10_WIDTH 2u 491 #define S32_SCB_CPACR_CP10(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CPACR_CP10_SHIFT))&S32_SCB_CPACR_CP10_MASK) 492 #define S32_SCB_CPACR_CP11_MASK 0xC00000u 493 #define S32_SCB_CPACR_CP11_SHIFT 22u 494 #define S32_SCB_CPACR_CP11_WIDTH 2u 495 #define S32_SCB_CPACR_CP11(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_CPACR_CP11_SHIFT))&S32_SCB_CPACR_CP11_MASK) 496 /* FPCCR Bit Fields */ 497 #define S32_SCB_FPCCR_LSPACT_MASK 0x1u 498 #define S32_SCB_FPCCR_LSPACT_SHIFT 0u 499 #define S32_SCB_FPCCR_LSPACT_WIDTH 1u 500 #define S32_SCB_FPCCR_LSPACT(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_FPCCR_LSPACT_SHIFT))&S32_SCB_FPCCR_LSPACT_MASK) 501 #define S32_SCB_FPCCR_USER_MASK 0x2u 502 #define S32_SCB_FPCCR_USER_SHIFT 1u 503 #define S32_SCB_FPCCR_USER_WIDTH 1u 504 #define S32_SCB_FPCCR_USER(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_FPCCR_USER_SHIFT))&S32_SCB_FPCCR_USER_MASK) 505 #define S32_SCB_FPCCR_THREAD_MASK 0x8u 506 #define S32_SCB_FPCCR_THREAD_SHIFT 3u 507 #define S32_SCB_FPCCR_THREAD_WIDTH 1u 508 #define S32_SCB_FPCCR_THREAD(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_FPCCR_THREAD_SHIFT))&S32_SCB_FPCCR_THREAD_MASK) 509 #define S32_SCB_FPCCR_HFRDY_MASK 0x10u 510 #define S32_SCB_FPCCR_HFRDY_SHIFT 4u 511 #define S32_SCB_FPCCR_HFRDY_WIDTH 1u 512 #define S32_SCB_FPCCR_HFRDY(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_FPCCR_HFRDY_SHIFT))&S32_SCB_FPCCR_HFRDY_MASK) 513 #define S32_SCB_FPCCR_MMRDY_MASK 0x20u 514 #define S32_SCB_FPCCR_MMRDY_SHIFT 5u 515 #define S32_SCB_FPCCR_MMRDY_WIDTH 1u 516 #define S32_SCB_FPCCR_MMRDY(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_FPCCR_MMRDY_SHIFT))&S32_SCB_FPCCR_MMRDY_MASK) 517 #define S32_SCB_FPCCR_BFRDY_MASK 0x40u 518 #define S32_SCB_FPCCR_BFRDY_SHIFT 6u 519 #define S32_SCB_FPCCR_BFRDY_WIDTH 1u 520 #define S32_SCB_FPCCR_BFRDY(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_FPCCR_BFRDY_SHIFT))&S32_SCB_FPCCR_BFRDY_MASK) 521 #define S32_SCB_FPCCR_MONRDY_MASK 0x100u 522 #define S32_SCB_FPCCR_MONRDY_SHIFT 8u 523 #define S32_SCB_FPCCR_MONRDY_WIDTH 1u 524 #define S32_SCB_FPCCR_MONRDY(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_FPCCR_MONRDY_SHIFT))&S32_SCB_FPCCR_MONRDY_MASK) 525 #define S32_SCB_FPCCR_LSPEN_MASK 0x40000000u 526 #define S32_SCB_FPCCR_LSPEN_SHIFT 30u 527 #define S32_SCB_FPCCR_LSPEN_WIDTH 1u 528 #define S32_SCB_FPCCR_LSPEN(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_FPCCR_LSPEN_SHIFT))&S32_SCB_FPCCR_LSPEN_MASK) 529 #define S32_SCB_FPCCR_ASPEN_MASK 0x80000000u 530 #define S32_SCB_FPCCR_ASPEN_SHIFT 31u 531 #define S32_SCB_FPCCR_ASPEN_WIDTH 1u 532 #define S32_SCB_FPCCR_ASPEN(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_FPCCR_ASPEN_SHIFT))&S32_SCB_FPCCR_ASPEN_MASK) 533 /* FPCAR Bit Fields */ 534 #define S32_SCB_FPCAR_ADDRESS_MASK 0xFFFFFFF8u 535 #define S32_SCB_FPCAR_ADDRESS_SHIFT 3u 536 #define S32_SCB_FPCAR_ADDRESS_WIDTH 29u 537 #define S32_SCB_FPCAR_ADDRESS(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_FPCAR_ADDRESS_SHIFT))&S32_SCB_FPCAR_ADDRESS_MASK) 538 /* FPDSCR Bit Fields */ 539 #define S32_SCB_FPDSCR_RMode_MASK 0xC00000u 540 #define S32_SCB_FPDSCR_RMode_SHIFT 22u 541 #define S32_SCB_FPDSCR_RMode_WIDTH 2u 542 #define S32_SCB_FPDSCR_RMode(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_FPDSCR_RMode_SHIFT))&S32_SCB_FPDSCR_RMode_MASK) 543 #define S32_SCB_FPDSCR_FZ_MASK 0x1000000u 544 #define S32_SCB_FPDSCR_FZ_SHIFT 24u 545 #define S32_SCB_FPDSCR_FZ_WIDTH 1u 546 #define S32_SCB_FPDSCR_FZ(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_FPDSCR_FZ_SHIFT))&S32_SCB_FPDSCR_FZ_MASK) 547 #define S32_SCB_FPDSCR_DN_MASK 0x2000000u 548 #define S32_SCB_FPDSCR_DN_SHIFT 25u 549 #define S32_SCB_FPDSCR_DN_WIDTH 1u 550 #define S32_SCB_FPDSCR_DN(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_FPDSCR_DN_SHIFT))&S32_SCB_FPDSCR_DN_MASK) 551 #define S32_SCB_FPDSCR_AHP_MASK 0x4000000u 552 #define S32_SCB_FPDSCR_AHP_SHIFT 26u 553 #define S32_SCB_FPDSCR_AHP_WIDTH 1u 554 #define S32_SCB_FPDSCR_AHP(x) (((uint32_t)(((uint32_t)(x))<<S32_SCB_FPDSCR_AHP_SHIFT))&S32_SCB_FPDSCR_AHP_MASK) 555 556 /*! 557 * @} 558 */ /* end of group S32_SCB_Register_Masks */ 559 560 561 /*! 562 * @} 563 */ /* end of group S32_SCB_Peripheral_Access_Layer */ 564 565 #endif /* #if !defined(S32K148_SCB_H_) */ 566