25#if defined ( __ICCARM__ )
26 #pragma system_include
27#elif defined (__clang__)
28 #pragma clang system_header
29#elif defined ( __GNUC__ )
30 #pragma GCC diagnostic ignored "-Wpedantic"
33#ifndef __CORE_ARMV8MML_H_GENERIC
34#define __CORE_ARMV8MML_H_GENERIC
68#define __ARMv8MML_CMSIS_VERSION_MAIN (__CM_CMSIS_VERSION_MAIN)
69#define __ARMv8MML_CMSIS_VERSION_SUB (__CM_CMSIS_VERSION_SUB)
70#define __ARMv8MML_CMSIS_VERSION ((__ARMv8MML_CMSIS_VERSION_MAIN << 16U) | \
71 __ARMv8MML_CMSIS_VERSION_SUB )
73#define __CORTEX_M (80U)
78#if defined ( __CC_ARM )
79 #if defined __TARGET_FPU_VFP
80 #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)
83 #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)"
90 #if defined(__ARM_FEATURE_DSP)
91 #if defined(__DSP_PRESENT) && (__DSP_PRESENT == 1U)
94 #error "Compiler generates DSP (SIMD) instructions for a devices without DSP extensions (check __DSP_PRESENT)"
101#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050)
103 #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)
104 #define __FPU_USED 1U
106 #warning "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)"
107 #define __FPU_USED 0U
110 #define __FPU_USED 0U
113 #if defined(__ARM_FEATURE_DSP)
114 #if defined(__DSP_PRESENT) && (__DSP_PRESENT == 1U)
115 #define __DSP_USED 1U
117 #error "Compiler generates DSP (SIMD) instructions for a devices without DSP extensions (check __DSP_PRESENT)"
118 #define __DSP_USED 0U
121 #define __DSP_USED 0U
124#elif defined ( __GNUC__ )
125 #if defined (__VFP_FP__) && !defined(__SOFTFP__)
126 #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)
127 #define __FPU_USED 1U
129 #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)"
130 #define __FPU_USED 0U
133 #define __FPU_USED 0U
136 #if defined(__ARM_FEATURE_DSP)
137 #if defined(__DSP_PRESENT) && (__DSP_PRESENT == 1U)
138 #define __DSP_USED 1U
140 #error "Compiler generates DSP (SIMD) instructions for a devices without DSP extensions (check __DSP_PRESENT)"
141 #define __DSP_USED 0U
144 #define __DSP_USED 0U
147#elif defined ( __ICCARM__ )
148 #if defined __ARMVFP__
149 #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)
150 #define __FPU_USED 1U
152 #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)"
153 #define __FPU_USED 0U
156 #define __FPU_USED 0U
159 #if defined(__ARM_FEATURE_DSP)
160 #if defined(__DSP_PRESENT) && (__DSP_PRESENT == 1U)
161 #define __DSP_USED 1U
163 #error "Compiler generates DSP (SIMD) instructions for a devices without DSP extensions (check __DSP_PRESENT)"
164 #define __DSP_USED 0U
167 #define __DSP_USED 0U
170#elif defined ( __TI_ARM__ )
171 #if defined __TI_VFP_SUPPORT__
172 #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)
173 #define __FPU_USED 1U
175 #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)"
176 #define __FPU_USED 0U
179 #define __FPU_USED 0U
182#elif defined ( __TASKING__ )
183 #if defined __FPU_VFP__
184 #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)
185 #define __FPU_USED 1U
187 #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)"
188 #define __FPU_USED 0U
191 #define __FPU_USED 0U
194#elif defined ( __CSMC__ )
195 #if ( __CSMC__ & 0x400U)
196 #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)
197 #define __FPU_USED 1U
199 #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)"
200 #define __FPU_USED 0U
203 #define __FPU_USED 0U
217#ifndef __CMSIS_GENERIC
219#ifndef __CORE_ARMV8MML_H_DEPENDANT
220#define __CORE_ARMV8MML_H_DEPENDANT
227#if defined __CHECK_DEVICE_DEFINES
228 #ifndef __ARMv8MML_REV
229 #define __ARMv8MML_REV 0x0000U
230 #warning "__ARMv8MML_REV not defined in device header file; using default!"
233 #ifndef __FPU_PRESENT
234 #define __FPU_PRESENT 0U
235 #warning "__FPU_PRESENT not defined in device header file; using default!"
238 #ifndef __MPU_PRESENT
239 #define __MPU_PRESENT 0U
240 #warning "__MPU_PRESENT not defined in device header file; using default!"
243 #ifndef __SAUREGION_PRESENT
244 #define __SAUREGION_PRESENT 0U
245 #warning "__SAUREGION_PRESENT not defined in device header file; using default!"
248 #ifndef __DSP_PRESENT
249 #define __DSP_PRESENT 0U
250 #warning "__DSP_PRESENT not defined in device header file; using default!"
253 #ifndef __VTOR_PRESENT
254 #define __VTOR_PRESENT 1U
255 #warning "__VTOR_PRESENT not defined in device header file; using default!"
258 #ifndef __NVIC_PRIO_BITS
259 #define __NVIC_PRIO_BITS 3U
260 #warning "__NVIC_PRIO_BITS not defined in device header file; using default!"
263 #ifndef __Vendor_SysTickConfig
264 #define __Vendor_SysTickConfig 0U
265 #warning "__Vendor_SysTickConfig not defined in device header file; using default!"
280 #define __I volatile const
286#define __IM volatile const
288#define __IOM volatile
338#define APSR_N_Pos 31U
339#define APSR_N_Msk (1UL << APSR_N_Pos)
341#define APSR_Z_Pos 30U
342#define APSR_Z_Msk (1UL << APSR_Z_Pos)
344#define APSR_C_Pos 29U
345#define APSR_C_Msk (1UL << APSR_C_Pos)
347#define APSR_V_Pos 28U
348#define APSR_V_Msk (1UL << APSR_V_Pos)
350#define APSR_Q_Pos 27U
351#define APSR_Q_Msk (1UL << APSR_Q_Pos)
353#define APSR_GE_Pos 16U
354#define APSR_GE_Msk (0xFUL << APSR_GE_Pos)
371#define IPSR_ISR_Pos 0U
372#define IPSR_ISR_Msk (0x1FFUL )
398#define xPSR_N_Pos 31U
399#define xPSR_N_Msk (1UL << xPSR_N_Pos)
401#define xPSR_Z_Pos 30U
402#define xPSR_Z_Msk (1UL << xPSR_Z_Pos)
404#define xPSR_C_Pos 29U
405#define xPSR_C_Msk (1UL << xPSR_C_Pos)
407#define xPSR_V_Pos 28U
408#define xPSR_V_Msk (1UL << xPSR_V_Pos)
410#define xPSR_Q_Pos 27U
411#define xPSR_Q_Msk (1UL << xPSR_Q_Pos)
413#define xPSR_IT_Pos 25U
414#define xPSR_IT_Msk (3UL << xPSR_IT_Pos)
416#define xPSR_T_Pos 24U
417#define xPSR_T_Msk (1UL << xPSR_T_Pos)
419#define xPSR_GE_Pos 16U
420#define xPSR_GE_Msk (0xFUL << xPSR_GE_Pos)
422#define xPSR_ISR_Pos 0U
423#define xPSR_ISR_Msk (0x1FFUL )
443#define CONTROL_SFPA_Pos 3U
444#define CONTROL_SFPA_Msk (1UL << CONTROL_SFPA_Pos)
446#define CONTROL_FPCA_Pos 2U
447#define CONTROL_FPCA_Msk (1UL << CONTROL_FPCA_Pos)
449#define CONTROL_SPSEL_Pos 1U
450#define CONTROL_SPSEL_Msk (1UL << CONTROL_SPSEL_Pos)
452#define CONTROL_nPRIV_Pos 0U
453#define CONTROL_nPRIV_Msk (1UL )
470 __IOM uint32_t ISER[16U];
471 uint32_t RESERVED0[16U];
472 __IOM uint32_t ICER[16U];
473 uint32_t RSERVED1[16U];
474 __IOM uint32_t ISPR[16U];
475 uint32_t RESERVED2[16U];
476 __IOM uint32_t ICPR[16U];
477 uint32_t RESERVED3[16U];
478 __IOM uint32_t IABR[16U];
479 uint32_t RESERVED4[16U];
480 __IOM uint32_t ITNS[16U];
481 uint32_t RESERVED5[16U];
482 __IOM uint8_t IPR[496U];
483 uint32_t RESERVED6[580U];
488#define NVIC_STIR_INTID_Pos 0U
489#define NVIC_STIR_INTID_Msk (0x1FFUL )
509 __IOM uint32_t AIRCR;
512 __IOM uint8_t SHPR[12U];
513 __IOM uint32_t SHCSR;
517 __IOM uint32_t MMFAR;
520 __IM uint32_t ID_PFR[2U];
521 __IM uint32_t ID_DFR;
522 __IM uint32_t ID_AFR;
523 __IM uint32_t ID_MMFR[4U];
524 __IM uint32_t ID_ISAR[6U];
527 __IM uint32_t CCSIDR;
528 __IOM uint32_t CSSELR;
529 __IOM uint32_t CPACR;
530 __IOM uint32_t NSACR;
531 uint32_t RESERVED7[21U];
534 uint32_t RESERVED3[69U];
536 uint32_t RESERVED4[15U];
540 uint32_t RESERVED5[1U];
541 __OM uint32_t ICIALLU;
542 uint32_t RESERVED6[1U];
543 __OM uint32_t ICIMVAU;
544 __OM uint32_t DCIMVAC;
546 __OM uint32_t DCCMVAU;
547 __OM uint32_t DCCMVAC;
549 __OM uint32_t DCCIMVAC;
550 __OM uint32_t DCCISW;
551 __OM uint32_t BPIALL;
555#define SCB_CPUID_IMPLEMENTER_Pos 24U
556#define SCB_CPUID_IMPLEMENTER_Msk (0xFFUL << SCB_CPUID_IMPLEMENTER_Pos)
558#define SCB_CPUID_VARIANT_Pos 20U
559#define SCB_CPUID_VARIANT_Msk (0xFUL << SCB_CPUID_VARIANT_Pos)
561#define SCB_CPUID_ARCHITECTURE_Pos 16U
562#define SCB_CPUID_ARCHITECTURE_Msk (0xFUL << SCB_CPUID_ARCHITECTURE_Pos)
564#define SCB_CPUID_PARTNO_Pos 4U
565#define SCB_CPUID_PARTNO_Msk (0xFFFUL << SCB_CPUID_PARTNO_Pos)
567#define SCB_CPUID_REVISION_Pos 0U
568#define SCB_CPUID_REVISION_Msk (0xFUL )
571#define SCB_ICSR_PENDNMISET_Pos 31U
572#define SCB_ICSR_PENDNMISET_Msk (1UL << SCB_ICSR_PENDNMISET_Pos)
574#define SCB_ICSR_NMIPENDSET_Pos SCB_ICSR_PENDNMISET_Pos
575#define SCB_ICSR_NMIPENDSET_Msk SCB_ICSR_PENDNMISET_Msk
577#define SCB_ICSR_PENDNMICLR_Pos 30U
578#define SCB_ICSR_PENDNMICLR_Msk (1UL << SCB_ICSR_PENDNMICLR_Pos)
580#define SCB_ICSR_PENDSVSET_Pos 28U
581#define SCB_ICSR_PENDSVSET_Msk (1UL << SCB_ICSR_PENDSVSET_Pos)
583#define SCB_ICSR_PENDSVCLR_Pos 27U
584#define SCB_ICSR_PENDSVCLR_Msk (1UL << SCB_ICSR_PENDSVCLR_Pos)
586#define SCB_ICSR_PENDSTSET_Pos 26U
587#define SCB_ICSR_PENDSTSET_Msk (1UL << SCB_ICSR_PENDSTSET_Pos)
589#define SCB_ICSR_PENDSTCLR_Pos 25U
590#define SCB_ICSR_PENDSTCLR_Msk (1UL << SCB_ICSR_PENDSTCLR_Pos)
592#define SCB_ICSR_STTNS_Pos 24U
593#define SCB_ICSR_STTNS_Msk (1UL << SCB_ICSR_STTNS_Pos)
595#define SCB_ICSR_ISRPREEMPT_Pos 23U
596#define SCB_ICSR_ISRPREEMPT_Msk (1UL << SCB_ICSR_ISRPREEMPT_Pos)
598#define SCB_ICSR_ISRPENDING_Pos 22U
599#define SCB_ICSR_ISRPENDING_Msk (1UL << SCB_ICSR_ISRPENDING_Pos)
601#define SCB_ICSR_VECTPENDING_Pos 12U
602#define SCB_ICSR_VECTPENDING_Msk (0x1FFUL << SCB_ICSR_VECTPENDING_Pos)
604#define SCB_ICSR_RETTOBASE_Pos 11U
605#define SCB_ICSR_RETTOBASE_Msk (1UL << SCB_ICSR_RETTOBASE_Pos)
607#define SCB_ICSR_VECTACTIVE_Pos 0U
608#define SCB_ICSR_VECTACTIVE_Msk (0x1FFUL )
611#define SCB_VTOR_TBLOFF_Pos 7U
612#define SCB_VTOR_TBLOFF_Msk (0x1FFFFFFUL << SCB_VTOR_TBLOFF_Pos)
615#define SCB_AIRCR_VECTKEY_Pos 16U
616#define SCB_AIRCR_VECTKEY_Msk (0xFFFFUL << SCB_AIRCR_VECTKEY_Pos)
618#define SCB_AIRCR_VECTKEYSTAT_Pos 16U
619#define SCB_AIRCR_VECTKEYSTAT_Msk (0xFFFFUL << SCB_AIRCR_VECTKEYSTAT_Pos)
621#define SCB_AIRCR_ENDIANESS_Pos 15U
622#define SCB_AIRCR_ENDIANESS_Msk (1UL << SCB_AIRCR_ENDIANESS_Pos)
624#define SCB_AIRCR_PRIS_Pos 14U
625#define SCB_AIRCR_PRIS_Msk (1UL << SCB_AIRCR_PRIS_Pos)
627#define SCB_AIRCR_BFHFNMINS_Pos 13U
628#define SCB_AIRCR_BFHFNMINS_Msk (1UL << SCB_AIRCR_BFHFNMINS_Pos)
630#define SCB_AIRCR_PRIGROUP_Pos 8U
631#define SCB_AIRCR_PRIGROUP_Msk (7UL << SCB_AIRCR_PRIGROUP_Pos)
633#define SCB_AIRCR_SYSRESETREQS_Pos 3U
634#define SCB_AIRCR_SYSRESETREQS_Msk (1UL << SCB_AIRCR_SYSRESETREQS_Pos)
636#define SCB_AIRCR_SYSRESETREQ_Pos 2U
637#define SCB_AIRCR_SYSRESETREQ_Msk (1UL << SCB_AIRCR_SYSRESETREQ_Pos)
639#define SCB_AIRCR_VECTCLRACTIVE_Pos 1U
640#define SCB_AIRCR_VECTCLRACTIVE_Msk (1UL << SCB_AIRCR_VECTCLRACTIVE_Pos)
643#define SCB_SCR_SEVONPEND_Pos 4U
644#define SCB_SCR_SEVONPEND_Msk (1UL << SCB_SCR_SEVONPEND_Pos)
646#define SCB_SCR_SLEEPDEEPS_Pos 3U
647#define SCB_SCR_SLEEPDEEPS_Msk (1UL << SCB_SCR_SLEEPDEEPS_Pos)
649#define SCB_SCR_SLEEPDEEP_Pos 2U
650#define SCB_SCR_SLEEPDEEP_Msk (1UL << SCB_SCR_SLEEPDEEP_Pos)
652#define SCB_SCR_SLEEPONEXIT_Pos 1U
653#define SCB_SCR_SLEEPONEXIT_Msk (1UL << SCB_SCR_SLEEPONEXIT_Pos)
656#define SCB_CCR_BP_Pos 18U
657#define SCB_CCR_BP_Msk (1UL << SCB_CCR_BP_Pos)
659#define SCB_CCR_IC_Pos 17U
660#define SCB_CCR_IC_Msk (1UL << SCB_CCR_IC_Pos)
662#define SCB_CCR_DC_Pos 16U
663#define SCB_CCR_DC_Msk (1UL << SCB_CCR_DC_Pos)
665#define SCB_CCR_STKOFHFNMIGN_Pos 10U
666#define SCB_CCR_STKOFHFNMIGN_Msk (1UL << SCB_CCR_STKOFHFNMIGN_Pos)
668#define SCB_CCR_BFHFNMIGN_Pos 8U
669#define SCB_CCR_BFHFNMIGN_Msk (1UL << SCB_CCR_BFHFNMIGN_Pos)
671#define SCB_CCR_DIV_0_TRP_Pos 4U
672#define SCB_CCR_DIV_0_TRP_Msk (1UL << SCB_CCR_DIV_0_TRP_Pos)
674#define SCB_CCR_UNALIGN_TRP_Pos 3U
675#define SCB_CCR_UNALIGN_TRP_Msk (1UL << SCB_CCR_UNALIGN_TRP_Pos)
677#define SCB_CCR_USERSETMPEND_Pos 1U
678#define SCB_CCR_USERSETMPEND_Msk (1UL << SCB_CCR_USERSETMPEND_Pos)
681#define SCB_SHCSR_HARDFAULTPENDED_Pos 21U
682#define SCB_SHCSR_HARDFAULTPENDED_Msk (1UL << SCB_SHCSR_HARDFAULTPENDED_Pos)
684#define SCB_SHCSR_SECUREFAULTPENDED_Pos 20U
685#define SCB_SHCSR_SECUREFAULTPENDED_Msk (1UL << SCB_SHCSR_SECUREFAULTPENDED_Pos)
687#define SCB_SHCSR_SECUREFAULTENA_Pos 19U
688#define SCB_SHCSR_SECUREFAULTENA_Msk (1UL << SCB_SHCSR_SECUREFAULTENA_Pos)
690#define SCB_SHCSR_USGFAULTENA_Pos 18U
691#define SCB_SHCSR_USGFAULTENA_Msk (1UL << SCB_SHCSR_USGFAULTENA_Pos)
693#define SCB_SHCSR_BUSFAULTENA_Pos 17U
694#define SCB_SHCSR_BUSFAULTENA_Msk (1UL << SCB_SHCSR_BUSFAULTENA_Pos)
696#define SCB_SHCSR_MEMFAULTENA_Pos 16U
697#define SCB_SHCSR_MEMFAULTENA_Msk (1UL << SCB_SHCSR_MEMFAULTENA_Pos)
699#define SCB_SHCSR_SVCALLPENDED_Pos 15U
700#define SCB_SHCSR_SVCALLPENDED_Msk (1UL << SCB_SHCSR_SVCALLPENDED_Pos)
702#define SCB_SHCSR_BUSFAULTPENDED_Pos 14U
703#define SCB_SHCSR_BUSFAULTPENDED_Msk (1UL << SCB_SHCSR_BUSFAULTPENDED_Pos)
705#define SCB_SHCSR_MEMFAULTPENDED_Pos 13U
706#define SCB_SHCSR_MEMFAULTPENDED_Msk (1UL << SCB_SHCSR_MEMFAULTPENDED_Pos)
708#define SCB_SHCSR_USGFAULTPENDED_Pos 12U
709#define SCB_SHCSR_USGFAULTPENDED_Msk (1UL << SCB_SHCSR_USGFAULTPENDED_Pos)
711#define SCB_SHCSR_SYSTICKACT_Pos 11U
712#define SCB_SHCSR_SYSTICKACT_Msk (1UL << SCB_SHCSR_SYSTICKACT_Pos)
714#define SCB_SHCSR_PENDSVACT_Pos 10U
715#define SCB_SHCSR_PENDSVACT_Msk (1UL << SCB_SHCSR_PENDSVACT_Pos)
717#define SCB_SHCSR_MONITORACT_Pos 8U
718#define SCB_SHCSR_MONITORACT_Msk (1UL << SCB_SHCSR_MONITORACT_Pos)
720#define SCB_SHCSR_SVCALLACT_Pos 7U
721#define SCB_SHCSR_SVCALLACT_Msk (1UL << SCB_SHCSR_SVCALLACT_Pos)
723#define SCB_SHCSR_NMIACT_Pos 5U
724#define SCB_SHCSR_NMIACT_Msk (1UL << SCB_SHCSR_NMIACT_Pos)
726#define SCB_SHCSR_SECUREFAULTACT_Pos 4U
727#define SCB_SHCSR_SECUREFAULTACT_Msk (1UL << SCB_SHCSR_SECUREFAULTACT_Pos)
729#define SCB_SHCSR_USGFAULTACT_Pos 3U
730#define SCB_SHCSR_USGFAULTACT_Msk (1UL << SCB_SHCSR_USGFAULTACT_Pos)
732#define SCB_SHCSR_HARDFAULTACT_Pos 2U
733#define SCB_SHCSR_HARDFAULTACT_Msk (1UL << SCB_SHCSR_HARDFAULTACT_Pos)
735#define SCB_SHCSR_BUSFAULTACT_Pos 1U
736#define SCB_SHCSR_BUSFAULTACT_Msk (1UL << SCB_SHCSR_BUSFAULTACT_Pos)
738#define SCB_SHCSR_MEMFAULTACT_Pos 0U
739#define SCB_SHCSR_MEMFAULTACT_Msk (1UL )
742#define SCB_CFSR_USGFAULTSR_Pos 16U
743#define SCB_CFSR_USGFAULTSR_Msk (0xFFFFUL << SCB_CFSR_USGFAULTSR_Pos)
745#define SCB_CFSR_BUSFAULTSR_Pos 8U
746#define SCB_CFSR_BUSFAULTSR_Msk (0xFFUL << SCB_CFSR_BUSFAULTSR_Pos)
748#define SCB_CFSR_MEMFAULTSR_Pos 0U
749#define SCB_CFSR_MEMFAULTSR_Msk (0xFFUL )
752#define SCB_CFSR_MMARVALID_Pos (SCB_CFSR_MEMFAULTSR_Pos + 7U)
753#define SCB_CFSR_MMARVALID_Msk (1UL << SCB_CFSR_MMARVALID_Pos)
755#define SCB_CFSR_MLSPERR_Pos (SCB_CFSR_MEMFAULTSR_Pos + 5U)
756#define SCB_CFSR_MLSPERR_Msk (1UL << SCB_CFSR_MLSPERR_Pos)
758#define SCB_CFSR_MSTKERR_Pos (SCB_CFSR_MEMFAULTSR_Pos + 4U)
759#define SCB_CFSR_MSTKERR_Msk (1UL << SCB_CFSR_MSTKERR_Pos)
761#define SCB_CFSR_MUNSTKERR_Pos (SCB_CFSR_MEMFAULTSR_Pos + 3U)
762#define SCB_CFSR_MUNSTKERR_Msk (1UL << SCB_CFSR_MUNSTKERR_Pos)
764#define SCB_CFSR_DACCVIOL_Pos (SCB_CFSR_MEMFAULTSR_Pos + 1U)
765#define SCB_CFSR_DACCVIOL_Msk (1UL << SCB_CFSR_DACCVIOL_Pos)
767#define SCB_CFSR_IACCVIOL_Pos (SCB_CFSR_MEMFAULTSR_Pos + 0U)
768#define SCB_CFSR_IACCVIOL_Msk (1UL )
771#define SCB_CFSR_BFARVALID_Pos (SCB_CFSR_BUSFAULTSR_Pos + 7U)
772#define SCB_CFSR_BFARVALID_Msk (1UL << SCB_CFSR_BFARVALID_Pos)
774#define SCB_CFSR_LSPERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 5U)
775#define SCB_CFSR_LSPERR_Msk (1UL << SCB_CFSR_LSPERR_Pos)
777#define SCB_CFSR_STKERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 4U)
778#define SCB_CFSR_STKERR_Msk (1UL << SCB_CFSR_STKERR_Pos)
780#define SCB_CFSR_UNSTKERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 3U)
781#define SCB_CFSR_UNSTKERR_Msk (1UL << SCB_CFSR_UNSTKERR_Pos)
783#define SCB_CFSR_IMPRECISERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 2U)
784#define SCB_CFSR_IMPRECISERR_Msk (1UL << SCB_CFSR_IMPRECISERR_Pos)
786#define SCB_CFSR_PRECISERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 1U)
787#define SCB_CFSR_PRECISERR_Msk (1UL << SCB_CFSR_PRECISERR_Pos)
789#define SCB_CFSR_IBUSERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 0U)
790#define SCB_CFSR_IBUSERR_Msk (1UL << SCB_CFSR_IBUSERR_Pos)
793#define SCB_CFSR_DIVBYZERO_Pos (SCB_CFSR_USGFAULTSR_Pos + 9U)
794#define SCB_CFSR_DIVBYZERO_Msk (1UL << SCB_CFSR_DIVBYZERO_Pos)
796#define SCB_CFSR_UNALIGNED_Pos (SCB_CFSR_USGFAULTSR_Pos + 8U)
797#define SCB_CFSR_UNALIGNED_Msk (1UL << SCB_CFSR_UNALIGNED_Pos)
799#define SCB_CFSR_STKOF_Pos (SCB_CFSR_USGFAULTSR_Pos + 4U)
800#define SCB_CFSR_STKOF_Msk (1UL << SCB_CFSR_STKOF_Pos)
802#define SCB_CFSR_NOCP_Pos (SCB_CFSR_USGFAULTSR_Pos + 3U)
803#define SCB_CFSR_NOCP_Msk (1UL << SCB_CFSR_NOCP_Pos)
805#define SCB_CFSR_INVPC_Pos (SCB_CFSR_USGFAULTSR_Pos + 2U)
806#define SCB_CFSR_INVPC_Msk (1UL << SCB_CFSR_INVPC_Pos)
808#define SCB_CFSR_INVSTATE_Pos (SCB_CFSR_USGFAULTSR_Pos + 1U)
809#define SCB_CFSR_INVSTATE_Msk (1UL << SCB_CFSR_INVSTATE_Pos)
811#define SCB_CFSR_UNDEFINSTR_Pos (SCB_CFSR_USGFAULTSR_Pos + 0U)
812#define SCB_CFSR_UNDEFINSTR_Msk (1UL << SCB_CFSR_UNDEFINSTR_Pos)
815#define SCB_HFSR_DEBUGEVT_Pos 31U
816#define SCB_HFSR_DEBUGEVT_Msk (1UL << SCB_HFSR_DEBUGEVT_Pos)
818#define SCB_HFSR_FORCED_Pos 30U
819#define SCB_HFSR_FORCED_Msk (1UL << SCB_HFSR_FORCED_Pos)
821#define SCB_HFSR_VECTTBL_Pos 1U
822#define SCB_HFSR_VECTTBL_Msk (1UL << SCB_HFSR_VECTTBL_Pos)
825#define SCB_DFSR_EXTERNAL_Pos 4U
826#define SCB_DFSR_EXTERNAL_Msk (1UL << SCB_DFSR_EXTERNAL_Pos)
828#define SCB_DFSR_VCATCH_Pos 3U
829#define SCB_DFSR_VCATCH_Msk (1UL << SCB_DFSR_VCATCH_Pos)
831#define SCB_DFSR_DWTTRAP_Pos 2U
832#define SCB_DFSR_DWTTRAP_Msk (1UL << SCB_DFSR_DWTTRAP_Pos)
834#define SCB_DFSR_BKPT_Pos 1U
835#define SCB_DFSR_BKPT_Msk (1UL << SCB_DFSR_BKPT_Pos)
837#define SCB_DFSR_HALTED_Pos 0U
838#define SCB_DFSR_HALTED_Msk (1UL )
841#define SCB_NSACR_CP11_Pos 11U
842#define SCB_NSACR_CP11_Msk (1UL << SCB_NSACR_CP11_Pos)
844#define SCB_NSACR_CP10_Pos 10U
845#define SCB_NSACR_CP10_Msk (1UL << SCB_NSACR_CP10_Pos)
847#define SCB_NSACR_CPn_Pos 0U
848#define SCB_NSACR_CPn_Msk (1UL )
851#define SCB_CLIDR_LOUU_Pos 27U
852#define SCB_CLIDR_LOUU_Msk (7UL << SCB_CLIDR_LOUU_Pos)
854#define SCB_CLIDR_LOC_Pos 24U
855#define SCB_CLIDR_LOC_Msk (7UL << SCB_CLIDR_LOC_Pos)
858#define SCB_CTR_FORMAT_Pos 29U
859#define SCB_CTR_FORMAT_Msk (7UL << SCB_CTR_FORMAT_Pos)
861#define SCB_CTR_CWG_Pos 24U
862#define SCB_CTR_CWG_Msk (0xFUL << SCB_CTR_CWG_Pos)
864#define SCB_CTR_ERG_Pos 20U
865#define SCB_CTR_ERG_Msk (0xFUL << SCB_CTR_ERG_Pos)
867#define SCB_CTR_DMINLINE_Pos 16U
868#define SCB_CTR_DMINLINE_Msk (0xFUL << SCB_CTR_DMINLINE_Pos)
870#define SCB_CTR_IMINLINE_Pos 0U
871#define SCB_CTR_IMINLINE_Msk (0xFUL )
874#define SCB_CCSIDR_WT_Pos 31U
875#define SCB_CCSIDR_WT_Msk (1UL << SCB_CCSIDR_WT_Pos)
877#define SCB_CCSIDR_WB_Pos 30U
878#define SCB_CCSIDR_WB_Msk (1UL << SCB_CCSIDR_WB_Pos)
880#define SCB_CCSIDR_RA_Pos 29U
881#define SCB_CCSIDR_RA_Msk (1UL << SCB_CCSIDR_RA_Pos)
883#define SCB_CCSIDR_WA_Pos 28U
884#define SCB_CCSIDR_WA_Msk (1UL << SCB_CCSIDR_WA_Pos)
886#define SCB_CCSIDR_NUMSETS_Pos 13U
887#define SCB_CCSIDR_NUMSETS_Msk (0x7FFFUL << SCB_CCSIDR_NUMSETS_Pos)
889#define SCB_CCSIDR_ASSOCIATIVITY_Pos 3U
890#define SCB_CCSIDR_ASSOCIATIVITY_Msk (0x3FFUL << SCB_CCSIDR_ASSOCIATIVITY_Pos)
892#define SCB_CCSIDR_LINESIZE_Pos 0U
893#define SCB_CCSIDR_LINESIZE_Msk (7UL )
896#define SCB_CSSELR_LEVEL_Pos 1U
897#define SCB_CSSELR_LEVEL_Msk (7UL << SCB_CSSELR_LEVEL_Pos)
899#define SCB_CSSELR_IND_Pos 0U
900#define SCB_CSSELR_IND_Msk (1UL )
903#define SCB_STIR_INTID_Pos 0U
904#define SCB_STIR_INTID_Msk (0x1FFUL )
907#define SCB_DCISW_WAY_Pos 30U
908#define SCB_DCISW_WAY_Msk (3UL << SCB_DCISW_WAY_Pos)
910#define SCB_DCISW_SET_Pos 5U
911#define SCB_DCISW_SET_Msk (0x1FFUL << SCB_DCISW_SET_Pos)
914#define SCB_DCCSW_WAY_Pos 30U
915#define SCB_DCCSW_WAY_Msk (3UL << SCB_DCCSW_WAY_Pos)
917#define SCB_DCCSW_SET_Pos 5U
918#define SCB_DCCSW_SET_Msk (0x1FFUL << SCB_DCCSW_SET_Pos)
921#define SCB_DCCISW_WAY_Pos 30U
922#define SCB_DCCISW_WAY_Msk (3UL << SCB_DCCISW_WAY_Pos)
924#define SCB_DCCISW_SET_Pos 5U
925#define SCB_DCCISW_SET_Msk (0x1FFUL << SCB_DCCISW_SET_Pos)
942 uint32_t RESERVED0[1U];
944 __IOM uint32_t ACTLR;
945 __IOM uint32_t CPPWR;
949#define SCnSCB_ICTR_INTLINESNUM_Pos 0U
950#define SCnSCB_ICTR_INTLINESNUM_Msk (0xFUL )
974#define SysTick_CTRL_COUNTFLAG_Pos 16U
975#define SysTick_CTRL_COUNTFLAG_Msk (1UL << SysTick_CTRL_COUNTFLAG_Pos)
977#define SysTick_CTRL_CLKSOURCE_Pos 2U
978#define SysTick_CTRL_CLKSOURCE_Msk (1UL << SysTick_CTRL_CLKSOURCE_Pos)
980#define SysTick_CTRL_TICKINT_Pos 1U
981#define SysTick_CTRL_TICKINT_Msk (1UL << SysTick_CTRL_TICKINT_Pos)
983#define SysTick_CTRL_ENABLE_Pos 0U
984#define SysTick_CTRL_ENABLE_Msk (1UL )
987#define SysTick_LOAD_RELOAD_Pos 0U
988#define SysTick_LOAD_RELOAD_Msk (0xFFFFFFUL )
991#define SysTick_VAL_CURRENT_Pos 0U
992#define SysTick_VAL_CURRENT_Msk (0xFFFFFFUL )
995#define SysTick_CALIB_NOREF_Pos 31U
996#define SysTick_CALIB_NOREF_Msk (1UL << SysTick_CALIB_NOREF_Pos)
998#define SysTick_CALIB_SKEW_Pos 30U
999#define SysTick_CALIB_SKEW_Msk (1UL << SysTick_CALIB_SKEW_Pos)
1001#define SysTick_CALIB_TENMS_Pos 0U
1002#define SysTick_CALIB_TENMS_Msk (0xFFFFFFUL )
1025 uint32_t RESERVED0[864U];
1027 uint32_t RESERVED1[15U];
1029 uint32_t RESERVED2[15U];
1031 uint32_t RESERVED3[32U];
1032 uint32_t RESERVED4[43U];
1035 uint32_t RESERVED5[1U];
1036 __IM uint32_t DEVARCH;
1037 uint32_t RESERVED6[4U];
1053#define ITM_STIM_DISABLED_Pos 1U
1054#define ITM_STIM_DISABLED_Msk (0x1UL << ITM_STIM_DISABLED_Pos)
1056#define ITM_STIM_FIFOREADY_Pos 0U
1057#define ITM_STIM_FIFOREADY_Msk (0x1UL )
1060#define ITM_TPR_PRIVMASK_Pos 0U
1061#define ITM_TPR_PRIVMASK_Msk (0xFUL )
1064#define ITM_TCR_BUSY_Pos 23U
1065#define ITM_TCR_BUSY_Msk (1UL << ITM_TCR_BUSY_Pos)
1067#define ITM_TCR_TRACEBUSID_Pos 16U
1068#define ITM_TCR_TRACEBUSID_Msk (0x7FUL << ITM_TCR_TRACEBUSID_Pos)
1070#define ITM_TCR_GTSFREQ_Pos 10U
1071#define ITM_TCR_GTSFREQ_Msk (3UL << ITM_TCR_GTSFREQ_Pos)
1073#define ITM_TCR_TSPRESCALE_Pos 8U
1074#define ITM_TCR_TSPRESCALE_Msk (3UL << ITM_TCR_TSPRESCALE_Pos)
1076#define ITM_TCR_STALLENA_Pos 5U
1077#define ITM_TCR_STALLENA_Msk (1UL << ITM_TCR_STALLENA_Pos)
1079#define ITM_TCR_SWOENA_Pos 4U
1080#define ITM_TCR_SWOENA_Msk (1UL << ITM_TCR_SWOENA_Pos)
1082#define ITM_TCR_DWTENA_Pos 3U
1083#define ITM_TCR_DWTENA_Msk (1UL << ITM_TCR_DWTENA_Pos)
1085#define ITM_TCR_SYNCENA_Pos 2U
1086#define ITM_TCR_SYNCENA_Msk (1UL << ITM_TCR_SYNCENA_Pos)
1088#define ITM_TCR_TSENA_Pos 1U
1089#define ITM_TCR_TSENA_Msk (1UL << ITM_TCR_TSENA_Pos)
1091#define ITM_TCR_ITMENA_Pos 0U
1092#define ITM_TCR_ITMENA_Msk (1UL )
1095#define ITM_LSR_ByteAcc_Pos 2U
1096#define ITM_LSR_ByteAcc_Msk (1UL << ITM_LSR_ByteAcc_Pos)
1098#define ITM_LSR_Access_Pos 1U
1099#define ITM_LSR_Access_Msk (1UL << ITM_LSR_Access_Pos)
1101#define ITM_LSR_Present_Pos 0U
1102#define ITM_LSR_Present_Msk (1UL )
1119 __IOM uint32_t CTRL;
1120 __IOM uint32_t CYCCNT;
1121 __IOM uint32_t CPICNT;
1122 __IOM uint32_t EXCCNT;
1123 __IOM uint32_t SLEEPCNT;
1124 __IOM uint32_t LSUCNT;
1125 __IOM uint32_t FOLDCNT;
1127 __IOM uint32_t COMP0;
1128 uint32_t RESERVED1[1U];
1129 __IOM uint32_t FUNCTION0;
1130 uint32_t RESERVED2[1U];
1132 uint32_t RESERVED3[1U];
1133 __IOM uint32_t FUNCTION1;
1134 uint32_t RESERVED4[1U];
1136 uint32_t RESERVED5[1U];
1137 __IOM uint32_t FUNCTION2;
1138 uint32_t RESERVED6[1U];
1139 __IOM uint32_t COMP3;
1140 uint32_t RESERVED7[1U];
1141 __IOM uint32_t FUNCTION3;
1142 uint32_t RESERVED8[1U];
1143 __IOM uint32_t COMP4;
1144 uint32_t RESERVED9[1U];
1145 __IOM uint32_t FUNCTION4;
1146 uint32_t RESERVED10[1U];
1147 __IOM uint32_t COMP5;
1148 uint32_t RESERVED11[1U];
1149 __IOM uint32_t FUNCTION5;
1150 uint32_t RESERVED12[1U];
1151 __IOM uint32_t COMP6;
1152 uint32_t RESERVED13[1U];
1153 __IOM uint32_t FUNCTION6;
1154 uint32_t RESERVED14[1U];
1155 __IOM uint32_t COMP7;
1156 uint32_t RESERVED15[1U];
1157 __IOM uint32_t FUNCTION7;
1158 uint32_t RESERVED16[1U];
1159 __IOM uint32_t COMP8;
1160 uint32_t RESERVED17[1U];
1161 __IOM uint32_t FUNCTION8;
1162 uint32_t RESERVED18[1U];
1163 __IOM uint32_t COMP9;
1164 uint32_t RESERVED19[1U];
1165 __IOM uint32_t FUNCTION9;
1166 uint32_t RESERVED20[1U];
1167 __IOM uint32_t COMP10;
1168 uint32_t RESERVED21[1U];
1169 __IOM uint32_t FUNCTION10;
1170 uint32_t RESERVED22[1U];
1171 __IOM uint32_t COMP11;
1172 uint32_t RESERVED23[1U];
1173 __IOM uint32_t FUNCTION11;
1174 uint32_t RESERVED24[1U];
1176 uint32_t RESERVED25[1U];
1177 __IOM uint32_t FUNCTION12;
1178 uint32_t RESERVED26[1U];
1179 __IOM uint32_t COMP13;
1180 uint32_t RESERVED27[1U];
1181 __IOM uint32_t FUNCTION13;
1182 uint32_t RESERVED28[1U];
1183 __IOM uint32_t COMP14;
1184 uint32_t RESERVED29[1U];
1185 __IOM uint32_t FUNCTION14;
1186 uint32_t RESERVED30[1U];
1187 __IOM uint32_t COMP15;
1188 uint32_t RESERVED31[1U];
1189 __IOM uint32_t FUNCTION15;
1190 uint32_t RESERVED32[934U];
1192 uint32_t RESERVED33[1U];
1193 __IM uint32_t DEVARCH;
1197#define DWT_CTRL_NUMCOMP_Pos 28U
1198#define DWT_CTRL_NUMCOMP_Msk (0xFUL << DWT_CTRL_NUMCOMP_Pos)
1200#define DWT_CTRL_NOTRCPKT_Pos 27U
1201#define DWT_CTRL_NOTRCPKT_Msk (0x1UL << DWT_CTRL_NOTRCPKT_Pos)
1203#define DWT_CTRL_NOEXTTRIG_Pos 26U
1204#define DWT_CTRL_NOEXTTRIG_Msk (0x1UL << DWT_CTRL_NOEXTTRIG_Pos)
1206#define DWT_CTRL_NOCYCCNT_Pos 25U
1207#define DWT_CTRL_NOCYCCNT_Msk (0x1UL << DWT_CTRL_NOCYCCNT_Pos)
1209#define DWT_CTRL_NOPRFCNT_Pos 24U
1210#define DWT_CTRL_NOPRFCNT_Msk (0x1UL << DWT_CTRL_NOPRFCNT_Pos)
1212#define DWT_CTRL_CYCDISS_Pos 23U
1213#define DWT_CTRL_CYCDISS_Msk (0x1UL << DWT_CTRL_CYCDISS_Pos)
1215#define DWT_CTRL_CYCEVTENA_Pos 22U
1216#define DWT_CTRL_CYCEVTENA_Msk (0x1UL << DWT_CTRL_CYCEVTENA_Pos)
1218#define DWT_CTRL_FOLDEVTENA_Pos 21U
1219#define DWT_CTRL_FOLDEVTENA_Msk (0x1UL << DWT_CTRL_FOLDEVTENA_Pos)
1221#define DWT_CTRL_LSUEVTENA_Pos 20U
1222#define DWT_CTRL_LSUEVTENA_Msk (0x1UL << DWT_CTRL_LSUEVTENA_Pos)
1224#define DWT_CTRL_SLEEPEVTENA_Pos 19U
1225#define DWT_CTRL_SLEEPEVTENA_Msk (0x1UL << DWT_CTRL_SLEEPEVTENA_Pos)
1227#define DWT_CTRL_EXCEVTENA_Pos 18U
1228#define DWT_CTRL_EXCEVTENA_Msk (0x1UL << DWT_CTRL_EXCEVTENA_Pos)
1230#define DWT_CTRL_CPIEVTENA_Pos 17U
1231#define DWT_CTRL_CPIEVTENA_Msk (0x1UL << DWT_CTRL_CPIEVTENA_Pos)
1233#define DWT_CTRL_EXCTRCENA_Pos 16U
1234#define DWT_CTRL_EXCTRCENA_Msk (0x1UL << DWT_CTRL_EXCTRCENA_Pos)
1236#define DWT_CTRL_PCSAMPLENA_Pos 12U
1237#define DWT_CTRL_PCSAMPLENA_Msk (0x1UL << DWT_CTRL_PCSAMPLENA_Pos)
1239#define DWT_CTRL_SYNCTAP_Pos 10U
1240#define DWT_CTRL_SYNCTAP_Msk (0x3UL << DWT_CTRL_SYNCTAP_Pos)
1242#define DWT_CTRL_CYCTAP_Pos 9U
1243#define DWT_CTRL_CYCTAP_Msk (0x1UL << DWT_CTRL_CYCTAP_Pos)
1245#define DWT_CTRL_POSTINIT_Pos 5U
1246#define DWT_CTRL_POSTINIT_Msk (0xFUL << DWT_CTRL_POSTINIT_Pos)
1248#define DWT_CTRL_POSTPRESET_Pos 1U
1249#define DWT_CTRL_POSTPRESET_Msk (0xFUL << DWT_CTRL_POSTPRESET_Pos)
1251#define DWT_CTRL_CYCCNTENA_Pos 0U
1252#define DWT_CTRL_CYCCNTENA_Msk (0x1UL )
1255#define DWT_CPICNT_CPICNT_Pos 0U
1256#define DWT_CPICNT_CPICNT_Msk (0xFFUL )
1259#define DWT_EXCCNT_EXCCNT_Pos 0U
1260#define DWT_EXCCNT_EXCCNT_Msk (0xFFUL )
1263#define DWT_SLEEPCNT_SLEEPCNT_Pos 0U
1264#define DWT_SLEEPCNT_SLEEPCNT_Msk (0xFFUL )
1267#define DWT_LSUCNT_LSUCNT_Pos 0U
1268#define DWT_LSUCNT_LSUCNT_Msk (0xFFUL )
1271#define DWT_FOLDCNT_FOLDCNT_Pos 0U
1272#define DWT_FOLDCNT_FOLDCNT_Msk (0xFFUL )
1275#define DWT_FUNCTION_ID_Pos 27U
1276#define DWT_FUNCTION_ID_Msk (0x1FUL << DWT_FUNCTION_ID_Pos)
1278#define DWT_FUNCTION_MATCHED_Pos 24U
1279#define DWT_FUNCTION_MATCHED_Msk (0x1UL << DWT_FUNCTION_MATCHED_Pos)
1281#define DWT_FUNCTION_DATAVSIZE_Pos 10U
1282#define DWT_FUNCTION_DATAVSIZE_Msk (0x3UL << DWT_FUNCTION_DATAVSIZE_Pos)
1284#define DWT_FUNCTION_ACTION_Pos 4U
1285#define DWT_FUNCTION_ACTION_Msk (0x1UL << DWT_FUNCTION_ACTION_Pos)
1287#define DWT_FUNCTION_MATCH_Pos 0U
1288#define DWT_FUNCTION_MATCH_Msk (0xFUL )
1305 __IM uint32_t SSPSR;
1306 __IOM uint32_t CSPSR;
1307 uint32_t RESERVED0[2U];
1308 __IOM uint32_t ACPR;
1309 uint32_t RESERVED1[55U];
1310 __IOM uint32_t SPPR;
1311 uint32_t RESERVED2[131U];
1313 __IOM uint32_t FFCR;
1314 __IOM uint32_t PSCR;
1315 uint32_t RESERVED3[809U];
1318 uint32_t RESERVED4[4U];
1320 __IM uint32_t DEVTYPE;
1324#define TPI_ACPR_SWOSCALER_Pos 0U
1325#define TPI_ACPR_SWOSCALER_Msk (0xFFFFUL )
1328#define TPI_SPPR_TXMODE_Pos 0U
1329#define TPI_SPPR_TXMODE_Msk (0x3UL )
1332#define TPI_FFSR_FtNonStop_Pos 3U
1333#define TPI_FFSR_FtNonStop_Msk (0x1UL << TPI_FFSR_FtNonStop_Pos)
1335#define TPI_FFSR_TCPresent_Pos 2U
1336#define TPI_FFSR_TCPresent_Msk (0x1UL << TPI_FFSR_TCPresent_Pos)
1338#define TPI_FFSR_FtStopped_Pos 1U
1339#define TPI_FFSR_FtStopped_Msk (0x1UL << TPI_FFSR_FtStopped_Pos)
1341#define TPI_FFSR_FlInProg_Pos 0U
1342#define TPI_FFSR_FlInProg_Msk (0x1UL )
1345#define TPI_FFCR_TrigIn_Pos 8U
1346#define TPI_FFCR_TrigIn_Msk (0x1UL << TPI_FFCR_TrigIn_Pos)
1348#define TPI_FFCR_FOnMan_Pos 6U
1349#define TPI_FFCR_FOnMan_Msk (0x1UL << TPI_FFCR_FOnMan_Pos)
1351#define TPI_FFCR_EnFCont_Pos 1U
1352#define TPI_FFCR_EnFCont_Msk (0x1UL << TPI_FFCR_EnFCont_Pos)
1355#define TPI_PSCR_PSCount_Pos 0U
1356#define TPI_PSCR_PSCount_Msk (0x1FUL )
1359#define TPI_LSR_nTT_Pos 1U
1360#define TPI_LSR_nTT_Msk (0x1UL << TPI_LSR_nTT_Pos)
1362#define TPI_LSR_SLK_Pos 1U
1363#define TPI_LSR_SLK_Msk (0x1UL << TPI_LSR_SLK_Pos)
1365#define TPI_LSR_SLI_Pos 0U
1366#define TPI_LSR_SLI_Msk (0x1UL )
1369#define TPI_DEVID_NRZVALID_Pos 11U
1370#define TPI_DEVID_NRZVALID_Msk (0x1UL << TPI_DEVID_NRZVALID_Pos)
1372#define TPI_DEVID_MANCVALID_Pos 10U
1373#define TPI_DEVID_MANCVALID_Msk (0x1UL << TPI_DEVID_MANCVALID_Pos)
1375#define TPI_DEVID_PTINVALID_Pos 9U
1376#define TPI_DEVID_PTINVALID_Msk (0x1UL << TPI_DEVID_PTINVALID_Pos)
1378#define TPI_DEVID_FIFOSZ_Pos 6U
1379#define TPI_DEVID_FIFOSZ_Msk (0x7UL << TPI_DEVID_FIFOSZ_Pos)
1382#define TPI_DEVTYPE_SubType_Pos 4U
1383#define TPI_DEVTYPE_SubType_Msk (0xFUL )
1385#define TPI_DEVTYPE_MajorType_Pos 0U
1386#define TPI_DEVTYPE_MajorType_Msk (0xFUL << TPI_DEVTYPE_MajorType_Pos)
1391#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U)
1405 __IOM uint32_t CTRL;
1407 __IOM uint32_t RBAR;
1408 __IOM uint32_t RLAR;
1409 __IOM uint32_t RBAR_A1;
1410 __IOM uint32_t RLAR_A1;
1411 __IOM uint32_t RBAR_A2;
1412 __IOM uint32_t RLAR_A2;
1413 __IOM uint32_t RBAR_A3;
1414 __IOM uint32_t RLAR_A3;
1415 uint32_t RESERVED0[1];
1425#define MPU_TYPE_RALIASES 4U
1428#define MPU_TYPE_IREGION_Pos 16U
1429#define MPU_TYPE_IREGION_Msk (0xFFUL << MPU_TYPE_IREGION_Pos)
1431#define MPU_TYPE_DREGION_Pos 8U
1432#define MPU_TYPE_DREGION_Msk (0xFFUL << MPU_TYPE_DREGION_Pos)
1434#define MPU_TYPE_SEPARATE_Pos 0U
1435#define MPU_TYPE_SEPARATE_Msk (1UL )
1438#define MPU_CTRL_PRIVDEFENA_Pos 2U
1439#define MPU_CTRL_PRIVDEFENA_Msk (1UL << MPU_CTRL_PRIVDEFENA_Pos)
1441#define MPU_CTRL_HFNMIENA_Pos 1U
1442#define MPU_CTRL_HFNMIENA_Msk (1UL << MPU_CTRL_HFNMIENA_Pos)
1444#define MPU_CTRL_ENABLE_Pos 0U
1445#define MPU_CTRL_ENABLE_Msk (1UL )
1448#define MPU_RNR_REGION_Pos 0U
1449#define MPU_RNR_REGION_Msk (0xFFUL )
1452#define MPU_RBAR_BASE_Pos 5U
1453#define MPU_RBAR_BASE_Msk (0x7FFFFFFUL << MPU_RBAR_BASE_Pos)
1455#define MPU_RBAR_SH_Pos 3U
1456#define MPU_RBAR_SH_Msk (0x3UL << MPU_RBAR_SH_Pos)
1458#define MPU_RBAR_AP_Pos 1U
1459#define MPU_RBAR_AP_Msk (0x3UL << MPU_RBAR_AP_Pos)
1461#define MPU_RBAR_XN_Pos 0U
1462#define MPU_RBAR_XN_Msk (01UL )
1465#define MPU_RLAR_LIMIT_Pos 5U
1466#define MPU_RLAR_LIMIT_Msk (0x7FFFFFFUL << MPU_RLAR_LIMIT_Pos)
1468#define MPU_RLAR_AttrIndx_Pos 1U
1469#define MPU_RLAR_AttrIndx_Msk (0x7UL << MPU_RLAR_AttrIndx_Pos)
1471#define MPU_RLAR_EN_Pos 0U
1472#define MPU_RLAR_EN_Msk (1UL )
1475#define MPU_MAIR0_Attr3_Pos 24U
1476#define MPU_MAIR0_Attr3_Msk (0xFFUL << MPU_MAIR0_Attr3_Pos)
1478#define MPU_MAIR0_Attr2_Pos 16U
1479#define MPU_MAIR0_Attr2_Msk (0xFFUL << MPU_MAIR0_Attr2_Pos)
1481#define MPU_MAIR0_Attr1_Pos 8U
1482#define MPU_MAIR0_Attr1_Msk (0xFFUL << MPU_MAIR0_Attr1_Pos)
1484#define MPU_MAIR0_Attr0_Pos 0U
1485#define MPU_MAIR0_Attr0_Msk (0xFFUL )
1488#define MPU_MAIR1_Attr7_Pos 24U
1489#define MPU_MAIR1_Attr7_Msk (0xFFUL << MPU_MAIR1_Attr7_Pos)
1491#define MPU_MAIR1_Attr6_Pos 16U
1492#define MPU_MAIR1_Attr6_Msk (0xFFUL << MPU_MAIR1_Attr6_Pos)
1494#define MPU_MAIR1_Attr5_Pos 8U
1495#define MPU_MAIR1_Attr5_Msk (0xFFUL << MPU_MAIR1_Attr5_Pos)
1497#define MPU_MAIR1_Attr4_Pos 0U
1498#define MPU_MAIR1_Attr4_Msk (0xFFUL )
1504#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U)
1517 __IOM uint32_t CTRL;
1519#if defined (__SAUREGION_PRESENT) && (__SAUREGION_PRESENT == 1U)
1521 __IOM uint32_t RBAR;
1522 __IOM uint32_t RLAR;
1524 uint32_t RESERVED0[3];
1526 __IOM uint32_t SFSR;
1527 __IOM uint32_t SFAR;
1531#define SAU_CTRL_ALLNS_Pos 1U
1532#define SAU_CTRL_ALLNS_Msk (1UL << SAU_CTRL_ALLNS_Pos)
1534#define SAU_CTRL_ENABLE_Pos 0U
1535#define SAU_CTRL_ENABLE_Msk (1UL )
1538#define SAU_TYPE_SREGION_Pos 0U
1539#define SAU_TYPE_SREGION_Msk (0xFFUL )
1541#if defined (__SAUREGION_PRESENT) && (__SAUREGION_PRESENT == 1U)
1543#define SAU_RNR_REGION_Pos 0U
1544#define SAU_RNR_REGION_Msk (0xFFUL )
1547#define SAU_RBAR_BADDR_Pos 5U
1548#define SAU_RBAR_BADDR_Msk (0x7FFFFFFUL << SAU_RBAR_BADDR_Pos)
1551#define SAU_RLAR_LADDR_Pos 5U
1552#define SAU_RLAR_LADDR_Msk (0x7FFFFFFUL << SAU_RLAR_LADDR_Pos)
1554#define SAU_RLAR_NSC_Pos 1U
1555#define SAU_RLAR_NSC_Msk (1UL << SAU_RLAR_NSC_Pos)
1557#define SAU_RLAR_ENABLE_Pos 0U
1558#define SAU_RLAR_ENABLE_Msk (1UL )
1563#define SAU_SFSR_LSERR_Pos 7U
1564#define SAU_SFSR_LSERR_Msk (1UL << SAU_SFSR_LSERR_Pos)
1566#define SAU_SFSR_SFARVALID_Pos 6U
1567#define SAU_SFSR_SFARVALID_Msk (1UL << SAU_SFSR_SFARVALID_Pos)
1569#define SAU_SFSR_LSPERR_Pos 5U
1570#define SAU_SFSR_LSPERR_Msk (1UL << SAU_SFSR_LSPERR_Pos)
1572#define SAU_SFSR_INVTRAN_Pos 4U
1573#define SAU_SFSR_INVTRAN_Msk (1UL << SAU_SFSR_INVTRAN_Pos)
1575#define SAU_SFSR_AUVIOL_Pos 3U
1576#define SAU_SFSR_AUVIOL_Msk (1UL << SAU_SFSR_AUVIOL_Pos)
1578#define SAU_SFSR_INVER_Pos 2U
1579#define SAU_SFSR_INVER_Msk (1UL << SAU_SFSR_INVER_Pos)
1581#define SAU_SFSR_INVIS_Pos 1U
1582#define SAU_SFSR_INVIS_Msk (1UL << SAU_SFSR_INVIS_Pos)
1584#define SAU_SFSR_INVEP_Pos 0U
1585#define SAU_SFSR_INVEP_Msk (1UL )
1603 uint32_t RESERVED0[1U];
1604 __IOM uint32_t FPCCR;
1605 __IOM uint32_t FPCAR;
1606 __IOM uint32_t FPDSCR;
1607 __IM uint32_t MVFR0;
1608 __IM uint32_t MVFR1;
1609 __IM uint32_t MVFR2;
1613#define FPU_FPCCR_ASPEN_Pos 31U
1614#define FPU_FPCCR_ASPEN_Msk (1UL << FPU_FPCCR_ASPEN_Pos)
1616#define FPU_FPCCR_LSPEN_Pos 30U
1617#define FPU_FPCCR_LSPEN_Msk (1UL << FPU_FPCCR_LSPEN_Pos)
1619#define FPU_FPCCR_LSPENS_Pos 29U
1620#define FPU_FPCCR_LSPENS_Msk (1UL << FPU_FPCCR_LSPENS_Pos)
1622#define FPU_FPCCR_CLRONRET_Pos 28U
1623#define FPU_FPCCR_CLRONRET_Msk (1UL << FPU_FPCCR_CLRONRET_Pos)
1625#define FPU_FPCCR_CLRONRETS_Pos 27U
1626#define FPU_FPCCR_CLRONRETS_Msk (1UL << FPU_FPCCR_CLRONRETS_Pos)
1628#define FPU_FPCCR_TS_Pos 26U
1629#define FPU_FPCCR_TS_Msk (1UL << FPU_FPCCR_TS_Pos)
1631#define FPU_FPCCR_UFRDY_Pos 10U
1632#define FPU_FPCCR_UFRDY_Msk (1UL << FPU_FPCCR_UFRDY_Pos)
1634#define FPU_FPCCR_SPLIMVIOL_Pos 9U
1635#define FPU_FPCCR_SPLIMVIOL_Msk (1UL << FPU_FPCCR_SPLIMVIOL_Pos)
1637#define FPU_FPCCR_MONRDY_Pos 8U
1638#define FPU_FPCCR_MONRDY_Msk (1UL << FPU_FPCCR_MONRDY_Pos)
1640#define FPU_FPCCR_SFRDY_Pos 7U
1641#define FPU_FPCCR_SFRDY_Msk (1UL << FPU_FPCCR_SFRDY_Pos)
1643#define FPU_FPCCR_BFRDY_Pos 6U
1644#define FPU_FPCCR_BFRDY_Msk (1UL << FPU_FPCCR_BFRDY_Pos)
1646#define FPU_FPCCR_MMRDY_Pos 5U
1647#define FPU_FPCCR_MMRDY_Msk (1UL << FPU_FPCCR_MMRDY_Pos)
1649#define FPU_FPCCR_HFRDY_Pos 4U
1650#define FPU_FPCCR_HFRDY_Msk (1UL << FPU_FPCCR_HFRDY_Pos)
1652#define FPU_FPCCR_THREAD_Pos 3U
1653#define FPU_FPCCR_THREAD_Msk (1UL << FPU_FPCCR_THREAD_Pos)
1655#define FPU_FPCCR_S_Pos 2U
1656#define FPU_FPCCR_S_Msk (1UL << FPU_FPCCR_S_Pos)
1658#define FPU_FPCCR_USER_Pos 1U
1659#define FPU_FPCCR_USER_Msk (1UL << FPU_FPCCR_USER_Pos)
1661#define FPU_FPCCR_LSPACT_Pos 0U
1662#define FPU_FPCCR_LSPACT_Msk (1UL )
1665#define FPU_FPCAR_ADDRESS_Pos 3U
1666#define FPU_FPCAR_ADDRESS_Msk (0x1FFFFFFFUL << FPU_FPCAR_ADDRESS_Pos)
1669#define FPU_FPDSCR_AHP_Pos 26U
1670#define FPU_FPDSCR_AHP_Msk (1UL << FPU_FPDSCR_AHP_Pos)
1672#define FPU_FPDSCR_DN_Pos 25U
1673#define FPU_FPDSCR_DN_Msk (1UL << FPU_FPDSCR_DN_Pos)
1675#define FPU_FPDSCR_FZ_Pos 24U
1676#define FPU_FPDSCR_FZ_Msk (1UL << FPU_FPDSCR_FZ_Pos)
1678#define FPU_FPDSCR_RMode_Pos 22U
1679#define FPU_FPDSCR_RMode_Msk (3UL << FPU_FPDSCR_RMode_Pos)
1682#define FPU_MVFR0_FP_rounding_modes_Pos 28U
1683#define FPU_MVFR0_FP_rounding_modes_Msk (0xFUL << FPU_MVFR0_FP_rounding_modes_Pos)
1685#define FPU_MVFR0_Short_vectors_Pos 24U
1686#define FPU_MVFR0_Short_vectors_Msk (0xFUL << FPU_MVFR0_Short_vectors_Pos)
1688#define FPU_MVFR0_Square_root_Pos 20U
1689#define FPU_MVFR0_Square_root_Msk (0xFUL << FPU_MVFR0_Square_root_Pos)
1691#define FPU_MVFR0_Divide_Pos 16U
1692#define FPU_MVFR0_Divide_Msk (0xFUL << FPU_MVFR0_Divide_Pos)
1694#define FPU_MVFR0_FP_excep_trapping_Pos 12U
1695#define FPU_MVFR0_FP_excep_trapping_Msk (0xFUL << FPU_MVFR0_FP_excep_trapping_Pos)
1697#define FPU_MVFR0_Double_precision_Pos 8U
1698#define FPU_MVFR0_Double_precision_Msk (0xFUL << FPU_MVFR0_Double_precision_Pos)
1700#define FPU_MVFR0_Single_precision_Pos 4U
1701#define FPU_MVFR0_Single_precision_Msk (0xFUL << FPU_MVFR0_Single_precision_Pos)
1703#define FPU_MVFR0_A_SIMD_registers_Pos 0U
1704#define FPU_MVFR0_A_SIMD_registers_Msk (0xFUL )
1707#define FPU_MVFR1_FP_fused_MAC_Pos 28U
1708#define FPU_MVFR1_FP_fused_MAC_Msk (0xFUL << FPU_MVFR1_FP_fused_MAC_Pos)
1710#define FPU_MVFR1_FP_HPFP_Pos 24U
1711#define FPU_MVFR1_FP_HPFP_Msk (0xFUL << FPU_MVFR1_FP_HPFP_Pos)
1713#define FPU_MVFR1_D_NaN_mode_Pos 4U
1714#define FPU_MVFR1_D_NaN_mode_Msk (0xFUL << FPU_MVFR1_D_NaN_mode_Pos)
1716#define FPU_MVFR1_FtZ_mode_Pos 0U
1717#define FPU_MVFR1_FtZ_mode_Msk (0xFUL )
1720#define FPU_MVFR2_FPMisc_Pos 4U
1721#define FPU_MVFR2_FPMisc_Msk (0xFUL << FPU_MVFR2_FPMisc_Pos)
1738 __IOM uint32_t DHCSR;
1739 __OM uint32_t DCRSR;
1740 __IOM uint32_t DCRDR;
1741 __IOM uint32_t DEMCR;
1742 uint32_t RESERVED0[1U];
1743 __IOM uint32_t DAUTHCTRL;
1744 __IOM uint32_t DSCSR;
1748#define CoreDebug_DHCSR_DBGKEY_Pos 16U
1749#define CoreDebug_DHCSR_DBGKEY_Msk (0xFFFFUL << CoreDebug_DHCSR_DBGKEY_Pos)
1751#define CoreDebug_DHCSR_S_RESTART_ST_Pos 26U
1752#define CoreDebug_DHCSR_S_RESTART_ST_Msk (1UL << CoreDebug_DHCSR_S_RESTART_ST_Pos)
1754#define CoreDebug_DHCSR_S_RESET_ST_Pos 25U
1755#define CoreDebug_DHCSR_S_RESET_ST_Msk (1UL << CoreDebug_DHCSR_S_RESET_ST_Pos)
1757#define CoreDebug_DHCSR_S_RETIRE_ST_Pos 24U
1758#define CoreDebug_DHCSR_S_RETIRE_ST_Msk (1UL << CoreDebug_DHCSR_S_RETIRE_ST_Pos)
1760#define CoreDebug_DHCSR_S_LOCKUP_Pos 19U
1761#define CoreDebug_DHCSR_S_LOCKUP_Msk (1UL << CoreDebug_DHCSR_S_LOCKUP_Pos)
1763#define CoreDebug_DHCSR_S_SLEEP_Pos 18U
1764#define CoreDebug_DHCSR_S_SLEEP_Msk (1UL << CoreDebug_DHCSR_S_SLEEP_Pos)
1766#define CoreDebug_DHCSR_S_HALT_Pos 17U
1767#define CoreDebug_DHCSR_S_HALT_Msk (1UL << CoreDebug_DHCSR_S_HALT_Pos)
1769#define CoreDebug_DHCSR_S_REGRDY_Pos 16U
1770#define CoreDebug_DHCSR_S_REGRDY_Msk (1UL << CoreDebug_DHCSR_S_REGRDY_Pos)
1772#define CoreDebug_DHCSR_C_SNAPSTALL_Pos 5U
1773#define CoreDebug_DHCSR_C_SNAPSTALL_Msk (1UL << CoreDebug_DHCSR_C_SNAPSTALL_Pos)
1775#define CoreDebug_DHCSR_C_MASKINTS_Pos 3U
1776#define CoreDebug_DHCSR_C_MASKINTS_Msk (1UL << CoreDebug_DHCSR_C_MASKINTS_Pos)
1778#define CoreDebug_DHCSR_C_STEP_Pos 2U
1779#define CoreDebug_DHCSR_C_STEP_Msk (1UL << CoreDebug_DHCSR_C_STEP_Pos)
1781#define CoreDebug_DHCSR_C_HALT_Pos 1U
1782#define CoreDebug_DHCSR_C_HALT_Msk (1UL << CoreDebug_DHCSR_C_HALT_Pos)
1784#define CoreDebug_DHCSR_C_DEBUGEN_Pos 0U
1785#define CoreDebug_DHCSR_C_DEBUGEN_Msk (1UL )
1788#define CoreDebug_DCRSR_REGWnR_Pos 16U
1789#define CoreDebug_DCRSR_REGWnR_Msk (1UL << CoreDebug_DCRSR_REGWnR_Pos)
1791#define CoreDebug_DCRSR_REGSEL_Pos 0U
1792#define CoreDebug_DCRSR_REGSEL_Msk (0x1FUL )
1795#define CoreDebug_DEMCR_TRCENA_Pos 24U
1796#define CoreDebug_DEMCR_TRCENA_Msk (1UL << CoreDebug_DEMCR_TRCENA_Pos)
1798#define CoreDebug_DEMCR_MON_REQ_Pos 19U
1799#define CoreDebug_DEMCR_MON_REQ_Msk (1UL << CoreDebug_DEMCR_MON_REQ_Pos)
1801#define CoreDebug_DEMCR_MON_STEP_Pos 18U
1802#define CoreDebug_DEMCR_MON_STEP_Msk (1UL << CoreDebug_DEMCR_MON_STEP_Pos)
1804#define CoreDebug_DEMCR_MON_PEND_Pos 17U
1805#define CoreDebug_DEMCR_MON_PEND_Msk (1UL << CoreDebug_DEMCR_MON_PEND_Pos)
1807#define CoreDebug_DEMCR_MON_EN_Pos 16U
1808#define CoreDebug_DEMCR_MON_EN_Msk (1UL << CoreDebug_DEMCR_MON_EN_Pos)
1810#define CoreDebug_DEMCR_VC_HARDERR_Pos 10U
1811#define CoreDebug_DEMCR_VC_HARDERR_Msk (1UL << CoreDebug_DEMCR_VC_HARDERR_Pos)
1813#define CoreDebug_DEMCR_VC_INTERR_Pos 9U
1814#define CoreDebug_DEMCR_VC_INTERR_Msk (1UL << CoreDebug_DEMCR_VC_INTERR_Pos)
1816#define CoreDebug_DEMCR_VC_BUSERR_Pos 8U
1817#define CoreDebug_DEMCR_VC_BUSERR_Msk (1UL << CoreDebug_DEMCR_VC_BUSERR_Pos)
1819#define CoreDebug_DEMCR_VC_STATERR_Pos 7U
1820#define CoreDebug_DEMCR_VC_STATERR_Msk (1UL << CoreDebug_DEMCR_VC_STATERR_Pos)
1822#define CoreDebug_DEMCR_VC_CHKERR_Pos 6U
1823#define CoreDebug_DEMCR_VC_CHKERR_Msk (1UL << CoreDebug_DEMCR_VC_CHKERR_Pos)
1825#define CoreDebug_DEMCR_VC_NOCPERR_Pos 5U
1826#define CoreDebug_DEMCR_VC_NOCPERR_Msk (1UL << CoreDebug_DEMCR_VC_NOCPERR_Pos)
1828#define CoreDebug_DEMCR_VC_MMERR_Pos 4U
1829#define CoreDebug_DEMCR_VC_MMERR_Msk (1UL << CoreDebug_DEMCR_VC_MMERR_Pos)
1831#define CoreDebug_DEMCR_VC_CORERESET_Pos 0U
1832#define CoreDebug_DEMCR_VC_CORERESET_Msk (1UL )
1835#define CoreDebug_DAUTHCTRL_INTSPNIDEN_Pos 3U
1836#define CoreDebug_DAUTHCTRL_INTSPNIDEN_Msk (1UL << CoreDebug_DAUTHCTRL_INTSPNIDEN_Pos)
1838#define CoreDebug_DAUTHCTRL_SPNIDENSEL_Pos 2U
1839#define CoreDebug_DAUTHCTRL_SPNIDENSEL_Msk (1UL << CoreDebug_DAUTHCTRL_SPNIDENSEL_Pos)
1841#define CoreDebug_DAUTHCTRL_INTSPIDEN_Pos 1U
1842#define CoreDebug_DAUTHCTRL_INTSPIDEN_Msk (1UL << CoreDebug_DAUTHCTRL_INTSPIDEN_Pos)
1844#define CoreDebug_DAUTHCTRL_SPIDENSEL_Pos 0U
1845#define CoreDebug_DAUTHCTRL_SPIDENSEL_Msk (1UL )
1848#define CoreDebug_DSCSR_CDS_Pos 16U
1849#define CoreDebug_DSCSR_CDS_Msk (1UL << CoreDebug_DSCSR_CDS_Pos)
1851#define CoreDebug_DSCSR_SBRSEL_Pos 1U
1852#define CoreDebug_DSCSR_SBRSEL_Msk (1UL << CoreDebug_DSCSR_SBRSEL_Pos)
1854#define CoreDebug_DSCSR_SBRSELEN_Pos 0U
1855#define CoreDebug_DSCSR_SBRSELEN_Msk (1UL )
1872 __IOM uint32_t DHCSR;
1873 __OM uint32_t DCRSR;
1874 __IOM uint32_t DCRDR;
1875 __IOM uint32_t DEMCR;
1876 uint32_t RESERVED0[1U];
1877 __IOM uint32_t DAUTHCTRL;
1878 __IOM uint32_t DSCSR;
1882#define DCB_DHCSR_DBGKEY_Pos 16U
1883#define DCB_DHCSR_DBGKEY_Msk (0xFFFFUL << DCB_DHCSR_DBGKEY_Pos)
1885#define DCB_DHCSR_S_RESTART_ST_Pos 26U
1886#define DCB_DHCSR_S_RESTART_ST_Msk (0x1UL << DCB_DHCSR_S_RESTART_ST_Pos)
1888#define DCB_DHCSR_S_RESET_ST_Pos 25U
1889#define DCB_DHCSR_S_RESET_ST_Msk (0x1UL << DCB_DHCSR_S_RESET_ST_Pos)
1891#define DCB_DHCSR_S_RETIRE_ST_Pos 24U
1892#define DCB_DHCSR_S_RETIRE_ST_Msk (0x1UL << DCB_DHCSR_S_RETIRE_ST_Pos)
1894#define DCB_DHCSR_S_SDE_Pos 20U
1895#define DCB_DHCSR_S_SDE_Msk (0x1UL << DCB_DHCSR_S_SDE_Pos)
1897#define DCB_DHCSR_S_LOCKUP_Pos 19U
1898#define DCB_DHCSR_S_LOCKUP_Msk (0x1UL << DCB_DHCSR_S_LOCKUP_Pos)
1900#define DCB_DHCSR_S_SLEEP_Pos 18U
1901#define DCB_DHCSR_S_SLEEP_Msk (0x1UL << DCB_DHCSR_S_SLEEP_Pos)
1903#define DCB_DHCSR_S_HALT_Pos 17U
1904#define DCB_DHCSR_S_HALT_Msk (0x1UL << DCB_DHCSR_S_HALT_Pos)
1906#define DCB_DHCSR_S_REGRDY_Pos 16U
1907#define DCB_DHCSR_S_REGRDY_Msk (0x1UL << DCB_DHCSR_S_REGRDY_Pos)
1909#define DCB_DHCSR_C_SNAPSTALL_Pos 5U
1910#define DCB_DHCSR_C_SNAPSTALL_Msk (0x1UL << DCB_DHCSR_C_SNAPSTALL_Pos)
1912#define DCB_DHCSR_C_MASKINTS_Pos 3U
1913#define DCB_DHCSR_C_MASKINTS_Msk (0x1UL << DCB_DHCSR_C_MASKINTS_Pos)
1915#define DCB_DHCSR_C_STEP_Pos 2U
1916#define DCB_DHCSR_C_STEP_Msk (0x1UL << DCB_DHCSR_C_STEP_Pos)
1918#define DCB_DHCSR_C_HALT_Pos 1U
1919#define DCB_DHCSR_C_HALT_Msk (0x1UL << DCB_DHCSR_C_HALT_Pos)
1921#define DCB_DHCSR_C_DEBUGEN_Pos 0U
1922#define DCB_DHCSR_C_DEBUGEN_Msk (0x1UL )
1925#define DCB_DCRSR_REGWnR_Pos 16U
1926#define DCB_DCRSR_REGWnR_Msk (0x1UL << DCB_DCRSR_REGWnR_Pos)
1928#define DCB_DCRSR_REGSEL_Pos 0U
1929#define DCB_DCRSR_REGSEL_Msk (0x7FUL )
1932#define DCB_DCRDR_DBGTMP_Pos 0U
1933#define DCB_DCRDR_DBGTMP_Msk (0xFFFFFFFFUL )
1936#define DCB_DEMCR_TRCENA_Pos 24U
1937#define DCB_DEMCR_TRCENA_Msk (0x1UL << DCB_DEMCR_TRCENA_Pos)
1939#define DCB_DEMCR_MONPRKEY_Pos 23U
1940#define DCB_DEMCR_MONPRKEY_Msk (0x1UL << DCB_DEMCR_MONPRKEY_Pos)
1942#define DCB_DEMCR_UMON_EN_Pos 21U
1943#define DCB_DEMCR_UMON_EN_Msk (0x1UL << DCB_DEMCR_UMON_EN_Pos)
1945#define DCB_DEMCR_SDME_Pos 20U
1946#define DCB_DEMCR_SDME_Msk (0x1UL << DCB_DEMCR_SDME_Pos)
1948#define DCB_DEMCR_MON_REQ_Pos 19U
1949#define DCB_DEMCR_MON_REQ_Msk (0x1UL << DCB_DEMCR_MON_REQ_Pos)
1951#define DCB_DEMCR_MON_STEP_Pos 18U
1952#define DCB_DEMCR_MON_STEP_Msk (0x1UL << DCB_DEMCR_MON_STEP_Pos)
1954#define DCB_DEMCR_MON_PEND_Pos 17U
1955#define DCB_DEMCR_MON_PEND_Msk (0x1UL << DCB_DEMCR_MON_PEND_Pos)
1957#define DCB_DEMCR_MON_EN_Pos 16U
1958#define DCB_DEMCR_MON_EN_Msk (0x1UL << DCB_DEMCR_MON_EN_Pos)
1960#define DCB_DEMCR_VC_SFERR_Pos 11U
1961#define DCB_DEMCR_VC_SFERR_Msk (0x1UL << DCB_DEMCR_VC_SFERR_Pos)
1963#define DCB_DEMCR_VC_HARDERR_Pos 10U
1964#define DCB_DEMCR_VC_HARDERR_Msk (0x1UL << DCB_DEMCR_VC_HARDERR_Pos)
1966#define DCB_DEMCR_VC_INTERR_Pos 9U
1967#define DCB_DEMCR_VC_INTERR_Msk (0x1UL << DCB_DEMCR_VC_INTERR_Pos)
1969#define DCB_DEMCR_VC_BUSERR_Pos 8U
1970#define DCB_DEMCR_VC_BUSERR_Msk (0x1UL << DCB_DEMCR_VC_BUSERR_Pos)
1972#define DCB_DEMCR_VC_STATERR_Pos 7U
1973#define DCB_DEMCR_VC_STATERR_Msk (0x1UL << DCB_DEMCR_VC_STATERR_Pos)
1975#define DCB_DEMCR_VC_CHKERR_Pos 6U
1976#define DCB_DEMCR_VC_CHKERR_Msk (0x1UL << DCB_DEMCR_VC_CHKERR_Pos)
1978#define DCB_DEMCR_VC_NOCPERR_Pos 5U
1979#define DCB_DEMCR_VC_NOCPERR_Msk (0x1UL << DCB_DEMCR_VC_NOCPERR_Pos)
1981#define DCB_DEMCR_VC_MMERR_Pos 4U
1982#define DCB_DEMCR_VC_MMERR_Msk (0x1UL << DCB_DEMCR_VC_MMERR_Pos)
1984#define DCB_DEMCR_VC_CORERESET_Pos 0U
1985#define DCB_DEMCR_VC_CORERESET_Msk (0x1UL )
1988#define DCB_DAUTHCTRL_INTSPNIDEN_Pos 3U
1989#define DCB_DAUTHCTRL_INTSPNIDEN_Msk (0x1UL << DCB_DAUTHCTRL_INTSPNIDEN_Pos)
1991#define DCB_DAUTHCTRL_SPNIDENSEL_Pos 2U
1992#define DCB_DAUTHCTRL_SPNIDENSEL_Msk (0x1UL << DCB_DAUTHCTRL_SPNIDENSEL_Pos)
1994#define DCB_DAUTHCTRL_INTSPIDEN_Pos 1U
1995#define DCB_DAUTHCTRL_INTSPIDEN_Msk (0x1UL << DCB_DAUTHCTRL_INTSPIDEN_Pos)
1997#define DCB_DAUTHCTRL_SPIDENSEL_Pos 0U
1998#define DCB_DAUTHCTRL_SPIDENSEL_Msk (0x1UL )
2001#define DCB_DSCSR_CDSKEY_Pos 17U
2002#define DCB_DSCSR_CDSKEY_Msk (0x1UL << DCB_DSCSR_CDSKEY_Pos)
2004#define DCB_DSCSR_CDS_Pos 16U
2005#define DCB_DSCSR_CDS_Msk (0x1UL << DCB_DSCSR_CDS_Pos)
2007#define DCB_DSCSR_SBRSEL_Pos 1U
2008#define DCB_DSCSR_SBRSEL_Msk (0x1UL << DCB_DSCSR_SBRSEL_Pos)
2010#define DCB_DSCSR_SBRSELEN_Pos 0U
2011#define DCB_DSCSR_SBRSELEN_Msk (0x1UL )
2031 __IM uint32_t DAUTHSTATUS;
2032 __IM uint32_t DDEVARCH;
2033 __IM uint32_t DDEVTYPE;
2037#define DIB_DLAR_KEY_Pos 0U
2038#define DIB_DLAR_KEY_Msk (0xFFFFFFFFUL )
2041#define DIB_DLSR_nTT_Pos 2U
2042#define DIB_DLSR_nTT_Msk (0x1UL << DIB_DLSR_nTT_Pos )
2044#define DIB_DLSR_SLK_Pos 1U
2045#define DIB_DLSR_SLK_Msk (0x1UL << DIB_DLSR_SLK_Pos )
2047#define DIB_DLSR_SLI_Pos 0U
2048#define DIB_DLSR_SLI_Msk (0x1UL )
2051#define DIB_DAUTHSTATUS_SNID_Pos 6U
2052#define DIB_DAUTHSTATUS_SNID_Msk (0x3UL << DIB_DAUTHSTATUS_SNID_Pos )
2054#define DIB_DAUTHSTATUS_SID_Pos 4U
2055#define DIB_DAUTHSTATUS_SID_Msk (0x3UL << DIB_DAUTHSTATUS_SID_Pos )
2057#define DIB_DAUTHSTATUS_NSNID_Pos 2U
2058#define DIB_DAUTHSTATUS_NSNID_Msk (0x3UL << DIB_DAUTHSTATUS_NSNID_Pos )
2060#define DIB_DAUTHSTATUS_NSID_Pos 0U
2061#define DIB_DAUTHSTATUS_NSID_Msk (0x3UL )
2064#define DIB_DDEVARCH_ARCHITECT_Pos 21U
2065#define DIB_DDEVARCH_ARCHITECT_Msk (0x7FFUL << DIB_DDEVARCH_ARCHITECT_Pos )
2067#define DIB_DDEVARCH_PRESENT_Pos 20U
2068#define DIB_DDEVARCH_PRESENT_Msk (0x1FUL << DIB_DDEVARCH_PRESENT_Pos )
2070#define DIB_DDEVARCH_REVISION_Pos 16U
2071#define DIB_DDEVARCH_REVISION_Msk (0xFUL << DIB_DDEVARCH_REVISION_Pos )
2073#define DIB_DDEVARCH_ARCHVER_Pos 12U
2074#define DIB_DDEVARCH_ARCHVER_Msk (0xFUL << DIB_DDEVARCH_ARCHVER_Pos )
2076#define DIB_DDEVARCH_ARCHPART_Pos 0U
2077#define DIB_DDEVARCH_ARCHPART_Msk (0xFFFUL )
2080#define DIB_DDEVTYPE_SUB_Pos 4U
2081#define DIB_DDEVTYPE_SUB_Msk (0xFUL << DIB_DDEVTYPE_SUB_Pos )
2083#define DIB_DDEVTYPE_MAJOR_Pos 0U
2084#define DIB_DDEVTYPE_MAJOR_Msk (0xFUL )
2103#define _VAL2FLD(field, value) (((uint32_t)(value) << field ## _Pos) & field ## _Msk)
2111#define _FLD2VAL(field, value) (((uint32_t)(value) & field ## _Msk) >> field ## _Pos)
2124 #define SCS_BASE (0xE000E000UL)
2125 #define ITM_BASE (0xE0000000UL)
2126 #define DWT_BASE (0xE0001000UL)
2127 #define TPI_BASE (0xE0040000UL)
2128 #define CoreDebug_BASE (0xE000EDF0UL)
2129 #define DCB_BASE (0xE000EDF0UL)
2130 #define DIB_BASE (0xE000EFB0UL)
2131 #define SysTick_BASE (SCS_BASE + 0x0010UL)
2132 #define NVIC_BASE (SCS_BASE + 0x0100UL)
2133 #define SCB_BASE (SCS_BASE + 0x0D00UL)
2135 #define SCnSCB ((SCnSCB_Type *) SCS_BASE )
2136 #define SCB ((SCB_Type *) SCB_BASE )
2137 #define SysTick ((SysTick_Type *) SysTick_BASE )
2138 #define NVIC ((NVIC_Type *) NVIC_BASE )
2139 #define ITM ((ITM_Type *) ITM_BASE )
2140 #define DWT ((DWT_Type *) DWT_BASE )
2141 #define TPI ((TPI_Type *) TPI_BASE )
2142 #define CoreDebug ((CoreDebug_Type *) CoreDebug_BASE )
2143 #define DCB ((DCB_Type *) DCB_BASE )
2144 #define DIB ((DIB_Type *) DIB_BASE )
2146 #if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U)
2147 #define MPU_BASE (SCS_BASE + 0x0D90UL)
2148 #define MPU ((MPU_Type *) MPU_BASE )
2151 #if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U)
2152 #define SAU_BASE (SCS_BASE + 0x0DD0UL)
2153 #define SAU ((SAU_Type *) SAU_BASE )
2156 #define FPU_BASE (SCS_BASE + 0x0F30UL)
2157 #define FPU ((FPU_Type *) FPU_BASE )
2159#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U)
2160 #define SCS_BASE_NS (0xE002E000UL)
2161 #define CoreDebug_BASE_NS (0xE002EDF0UL)
2162 #define DCB_BASE_NS (0xE002EDF0UL)
2163 #define DIB_BASE_NS (0xE002EFB0UL)
2164 #define SysTick_BASE_NS (SCS_BASE_NS + 0x0010UL)
2165 #define NVIC_BASE_NS (SCS_BASE_NS + 0x0100UL)
2166 #define SCB_BASE_NS (SCS_BASE_NS + 0x0D00UL)
2168 #define SCnSCB_NS ((SCnSCB_Type *) SCS_BASE_NS )
2169 #define SCB_NS ((SCB_Type *) SCB_BASE_NS )
2170 #define SysTick_NS ((SysTick_Type *) SysTick_BASE_NS )
2171 #define NVIC_NS ((NVIC_Type *) NVIC_BASE_NS )
2172 #define CoreDebug_NS ((CoreDebug_Type *) CoreDebug_BASE_NS)
2173 #define DCB_NS ((DCB_Type *) DCB_BASE_NS )
2174 #define DIB_NS ((DIB_Type *) DIB_BASE_NS )
2176 #if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U)
2177 #define MPU_BASE_NS (SCS_BASE_NS + 0x0D90UL)
2178 #define MPU_NS ((MPU_Type *) MPU_BASE_NS )
2181 #define FPU_BASE_NS (SCS_BASE_NS + 0x0F30UL)
2182 #define FPU_NS ((FPU_Type *) FPU_BASE_NS )
2194#define ID_ADR (ID_AFR)
2220#ifdef CMSIS_NVIC_VIRTUAL
2221 #ifndef CMSIS_NVIC_VIRTUAL_HEADER_FILE
2222 #define CMSIS_NVIC_VIRTUAL_HEADER_FILE "cmsis_nvic_virtual.h"
2224 #include CMSIS_NVIC_VIRTUAL_HEADER_FILE
2226 #define NVIC_SetPriorityGrouping __NVIC_SetPriorityGrouping
2227 #define NVIC_GetPriorityGrouping __NVIC_GetPriorityGrouping
2228 #define NVIC_EnableIRQ __NVIC_EnableIRQ
2229 #define NVIC_GetEnableIRQ __NVIC_GetEnableIRQ
2230 #define NVIC_DisableIRQ __NVIC_DisableIRQ
2231 #define NVIC_GetPendingIRQ __NVIC_GetPendingIRQ
2232 #define NVIC_SetPendingIRQ __NVIC_SetPendingIRQ
2233 #define NVIC_ClearPendingIRQ __NVIC_ClearPendingIRQ
2234 #define NVIC_GetActive __NVIC_GetActive
2235 #define NVIC_SetPriority __NVIC_SetPriority
2236 #define NVIC_GetPriority __NVIC_GetPriority
2237 #define NVIC_SystemReset __NVIC_SystemReset
2240#ifdef CMSIS_VECTAB_VIRTUAL
2241 #ifndef CMSIS_VECTAB_VIRTUAL_HEADER_FILE
2242 #define CMSIS_VECTAB_VIRTUAL_HEADER_FILE "cmsis_vectab_virtual.h"
2244 #include CMSIS_VECTAB_VIRTUAL_HEADER_FILE
2246 #define NVIC_SetVector __NVIC_SetVector
2247 #define NVIC_GetVector __NVIC_GetVector
2250#define NVIC_USER_IRQ_OFFSET 16
2256#define FNC_RETURN (0xFEFFFFFFUL)
2259#define EXC_RETURN_PREFIX (0xFF000000UL)
2260#define EXC_RETURN_S (0x00000040UL)
2261#define EXC_RETURN_DCRS (0x00000020UL)
2262#define EXC_RETURN_FTYPE (0x00000010UL)
2263#define EXC_RETURN_MODE (0x00000008UL)
2264#define EXC_RETURN_SPSEL (0x00000004UL)
2265#define EXC_RETURN_ES (0x00000001UL)
2268#if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)
2269#define EXC_INTEGRITY_SIGNATURE (0xFEFA125AUL)
2271#define EXC_INTEGRITY_SIGNATURE (0xFEFA125BUL)
2287 uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL);
2289 reg_value =
SCB->AIRCR;
2291 reg_value = (reg_value |
2294 SCB->AIRCR = reg_value;
2317 if ((int32_t)(IRQn) >= 0)
2320 NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL));
2336 if ((int32_t)(IRQn) >= 0)
2338 return((uint32_t)(((
NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL));
2355 if ((int32_t)(IRQn) >= 0)
2357 NVIC->ICER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL));
2374 if ((int32_t)(IRQn) >= 0)
2376 return((uint32_t)(((
NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL));
2393 if ((int32_t)(IRQn) >= 0)
2395 NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL));
2408 if ((int32_t)(IRQn) >= 0)
2410 NVIC->ICPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL));
2425 if ((int32_t)(IRQn) >= 0)
2427 return((uint32_t)(((
NVIC->IABR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL));
2436#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U)
2447 if ((int32_t)(IRQn) >= 0)
2449 return((uint32_t)(((
NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL));
2468 if ((int32_t)(IRQn) >= 0)
2470 NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] |= ((uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)));
2471 return((uint32_t)(((
NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL));
2490 if ((int32_t)(IRQn) >= 0)
2492 NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] &= ~((uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL)));
2493 return((uint32_t)(((
NVIC->ITNS[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL));
2514 if ((int32_t)(IRQn) >= 0)
2516 NVIC->IPR[((uint32_t)IRQn)] = (uint8_t)((priority << (8U -
__NVIC_PRIO_BITS)) & (uint32_t)0xFFUL);
2520 SCB->SHPR[(((uint32_t)IRQn) & 0xFUL)-4UL] = (uint8_t)((priority << (8U -
__NVIC_PRIO_BITS)) & (uint32_t)0xFFUL);
2537 if ((int32_t)(IRQn) >= 0)
2561 uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL);
2562 uint32_t PreemptPriorityBits;
2563 uint32_t SubPriorityBits;
2566 SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(
__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(
__NVIC_PRIO_BITS));
2569 ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits) |
2570 ((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL)))
2588 uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL);
2589 uint32_t PreemptPriorityBits;
2590 uint32_t SubPriorityBits;
2593 SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(
__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint32_t)0UL : (uint32_t)((PriorityGroupTmp - 7UL) + (uint32_t)(
__NVIC_PRIO_BITS));
2595 *pPreemptPriority = (Priority >> SubPriorityBits) & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL);
2596 *pSubPriority = (Priority ) & (uint32_t)((1UL << (SubPriorityBits )) - 1UL);
2611 uint32_t *vectors = (uint32_t *)
SCB->VTOR;
2627 uint32_t *vectors = (uint32_t *)
SCB->VTOR;
2651#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U)
2661__STATIC_INLINE void TZ_NVIC_SetPriorityGrouping_NS(uint32_t PriorityGroup)
2664 uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL);
2666 reg_value = SCB_NS->AIRCR;
2668 reg_value = (reg_value |
2671 SCB_NS->AIRCR = reg_value;
2694 if ((int32_t)(IRQn) >= 0)
2696 NVIC_NS->ISER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL));
2711 if ((int32_t)(IRQn) >= 0)
2713 return((uint32_t)(((NVIC_NS->ISER[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL));
2730 if ((int32_t)(IRQn) >= 0)
2732 NVIC_NS->ICER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL));
2747 if ((int32_t)(IRQn) >= 0)
2749 return((uint32_t)(((NVIC_NS->ISPR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL));
2766 if ((int32_t)(IRQn) >= 0)
2768 NVIC_NS->ISPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL));
2781 if ((int32_t)(IRQn) >= 0)
2783 NVIC_NS->ICPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL));
2798 if ((int32_t)(IRQn) >= 0)
2800 return((uint32_t)(((NVIC_NS->IABR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL))) != 0UL) ? 1UL : 0UL));
2820 if ((int32_t)(IRQn) >= 0)
2822 NVIC_NS->IPR[((uint32_t)IRQn)] = (uint8_t)((priority << (8U -
__NVIC_PRIO_BITS)) & (uint32_t)0xFFUL);
2826 SCB_NS->SHPR[(((uint32_t)IRQn) & 0xFUL)-4UL] = (uint8_t)((priority << (8U -
__NVIC_PRIO_BITS)) & (uint32_t)0xFFUL);
2842 if ((int32_t)(IRQn) >= 0)
2844 return(((uint32_t)NVIC_NS->IPR[((uint32_t)IRQn)] >> (8U -
__NVIC_PRIO_BITS)));
2848 return(((uint32_t)SCB_NS->SHPR[(((uint32_t)IRQn) & 0xFUL)-4UL] >> (8U -
__NVIC_PRIO_BITS)));
2857#if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U)
2904#if ((defined (__ICACHE_PRESENT) && (__ICACHE_PRESENT == 1U)) || \
2905 (defined (__DCACHE_PRESENT) && (__DCACHE_PRESENT == 1U)))
2918#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U)
2926 SAU->CTRL |= (SAU_CTRL_ENABLE_Msk);
2937 SAU->CTRL &= ~(SAU_CTRL_ENABLE_Msk);
2978 return (
DCB->DAUTHCTRL);
2982#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U)
2992 DCB_NS->DAUTHCTRL =
value;
3005 return (DCB_NS->DAUTHCTRL);
3030 return (
DIB->DAUTHSTATUS);
3034#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U)
3042 return (DIB_NS->DAUTHSTATUS);
3059#if defined (__Vendor_SysTickConfig) && (__Vendor_SysTickConfig == 0U)
3079 SysTick->LOAD = (uint32_t)(ticks - 1UL);
3088#if defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3U)
3108 SysTick_NS->LOAD = (uint32_t)(ticks - 1UL);
3110 SysTick_NS->VAL = 0UL;
3133#define ITM_RXBUFFER_EMPTY ((int32_t)0x5AA55AA5U)
3147 ((
ITM->TER & 1UL ) != 0UL) )
3149 while (
ITM->PORT[0U].u32 == 0UL)
3153 ITM->PORT[0U].u8 = (uint8_t)
ch;
#define __COMPILER_BARRIER()
CMSIS compiler generic header file.
CMSIS Core(M) Version definitions.
#define SysTick_CTRL_ENABLE_Msk
SysTick CTRL: ENABLE Mask.
#define DCB
DCB configuration struct.
#define SysTick_LOAD_RELOAD_Msk
SysTick LOAD: RELOAD Mask.
#define FPU_MVFR0_Double_precision_Msk
MVFR0: Double-precision bits Mask.
#define ITM_TCR_ITMENA_Msk
ITM TCR: ITM Enable bit Mask.
#define SCB_AIRCR_PRIGROUP_Msk
SCB AIRCR: PRIGROUP Mask.
#define SCB_AIRCR_VECTKEY_Msk
SCB AIRCR: VECTKEY Mask.
#define FPU_MVFR0_Single_precision_Msk
MVFR0: Single-precision bits Mask.
#define SysTick_CTRL_TICKINT_Msk
SysTick CTRL: TICKINT Mask.
#define SysTick_CTRL_CLKSOURCE_Msk
SysTick CTRL: CLKSOURCE Mask.
#define SCB_AIRCR_VECTKEY_Pos
SCB AIRCR: VECTKEY Position.
#define SCB
SCB configuration struct.
#define DIB
DIB configuration struct.
#define SCB_AIRCR_SYSRESETREQ_Msk
SCB AIRCR: SYSRESETREQ Mask.
#define ITM
ITM configuration struct.
#define FPU
Floating Point Unit.
#define NVIC
NVIC configuration struct.
#define SCB_AIRCR_PRIGROUP_Pos
SCB AIRCR: PRIGROUP Position.
#define SysTick
SysTick configuration struct.
#define __NVIC_SetPriorityGrouping(X)
#define __NVIC_GetPriorityGrouping()
Get Priority Grouping.
#define __DSB()
Data Synchronization Barrier.
#define __ISB()
Instruction Synchronization Barrier.
#define __NOP
No Operation.
__NO_RETURN __STATIC_INLINE void __NVIC_SystemReset(void)
System Reset.
__STATIC_INLINE void __NVIC_SetVector(IRQn_Type IRQn, uint32_t vector)
Set Interrupt Vector.
__STATIC_INLINE uint32_t DIB_GetAuthStatus(void)
Get Debug Authentication Status Register.
__STATIC_INLINE void NVIC_DecodePriority(uint32_t Priority, uint32_t PriorityGroup, uint32_t *const pPreemptPriority, uint32_t *const pSubPriority)
Decode Priority.
__STATIC_INLINE uint32_t __NVIC_GetVector(IRQn_Type IRQn)
Get Interrupt Vector.
__STATIC_INLINE void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority)
Set Interrupt Priority.
__STATIC_INLINE void __NVIC_ClearPendingIRQ(IRQn_Type IRQn)
Clear Pending Interrupt.
__STATIC_INLINE uint32_t __NVIC_GetPendingIRQ(IRQn_Type IRQn)
Get Pending Interrupt.
__STATIC_INLINE uint32_t SCB_GetFPUType(void)
get FPU type
__STATIC_INLINE void __NVIC_EnableIRQ(IRQn_Type IRQn)
Enable Interrupt.
#define NVIC_USER_IRQ_OFFSET
__STATIC_INLINE void DCB_SetAuthCtrl(uint32_t value)
Set Debug Authentication Control Register.
__STATIC_INLINE uint32_t __NVIC_GetActive(IRQn_Type IRQn)
Get Active Interrupt.
__STATIC_INLINE void __NVIC_SetPendingIRQ(IRQn_Type IRQn)
Set Pending Interrupt.
__STATIC_INLINE uint32_t __NVIC_GetEnableIRQ(IRQn_Type IRQn)
Get Interrupt Enable status.
__STATIC_INLINE uint32_t NVIC_EncodePriority(uint32_t PriorityGroup, uint32_t PreemptPriority, uint32_t SubPriority)
Encode Priority.
__STATIC_INLINE void __NVIC_DisableIRQ(IRQn_Type IRQn)
Disable Interrupt.
__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks)
System Tick Configuration.
__STATIC_INLINE uint32_t __NVIC_GetPriority(IRQn_Type IRQn)
Get Interrupt Priority.
__STATIC_INLINE uint32_t DCB_GetAuthCtrl(void)
Get Debug Authentication Control Register.
uint32_t GE
bit: 16..19 Greater than or Equal flags
__IOM uint32_t MAIR1
Offset: 0x034 (R/W) MPU Memory Attribute Indirection Register 1.
volatile int32_t ITM_RxBuffer
External variable to receive characters.
uint32_t _reserved0
bit: 0..15 Reserved
uint32_t N
bit: 31 Negative condition code flag
uint32_t _reserved0
bit: 9..31 Reserved
uint32_t Z
bit: 30 Zero condition code flag
uint32_t Z
bit: 30 Zero condition code flag
uint32_t _reserved1
bit: 20..23 Reserved
uint32_t GE
bit: 16..19 Greater than or Equal flags
uint32_t T
bit: 24 Thumb bit (read 0)
uint32_t SFPA
bit: 3 Secure floating-point active
uint32_t C
bit: 29 Carry condition code flag
uint32_t IT
bit: 25..26 saved IT state (read 0)
uint32_t _reserved0
bit: 9..15 Reserved
uint32_t Q
bit: 27 Saturation condition flag
uint32_t C
bit: 29 Carry condition code flag
__OM uint16_t u16
Offset: 0x000 ( /W) ITM Stimulus Port 16-bit.
uint32_t _reserved1
bit: 4..31 Reserved
uint32_t SPSEL
bit: 1 Stack-pointer select
uint32_t Q
bit: 27 Saturation condition flag
uint32_t N
bit: 31 Negative condition code flag
uint32_t V
bit: 28 Overflow condition code flag
#define ITM_RXBUFFER_EMPTY
Value identifying ITM_RxBuffer is ready for next character.
__OM uint32_t u32
Offset: 0x000 ( /W) ITM Stimulus Port 32-bit.
__STATIC_INLINE int32_t ITM_ReceiveChar(void)
ITM Receive Character.
__STATIC_INLINE uint32_t ITM_SendChar(uint32_t ch)
ITM Send Character.
uint32_t V
bit: 28 Overflow condition code flag
__IOM uint32_t MAIR0
Offset: 0x030 (R/W) MPU Memory Attribute Indirection Register 0.
__STATIC_INLINE int32_t ITM_CheckChar(void)
ITM Check Character.
uint32_t nPRIV
bit: 0 Execution privilege in Thread mode
uint32_t FPCA
bit: 2 Floating-point context active
uint32_t _reserved1
bit: 20..26 Reserved
__OM uint8_t u8
Offset: 0x000 ( /W) ITM Stimulus Port 8-bit.
#define __NVIC_PRIO_BITS
CM7 uses 4 Bits for the Priority Levels.
IRQn_Type
STM32H7XX Interrupt Number Definition, according to the selected device in Library_configuration_sect...
@ SysTick_IRQn
15 Cortex-M System Tick Interrupt
*brief create JSON pointer *sa reference_tokens const string_t const string_t & b
Structure type to access the Core Debug Register (CoreDebug).
Structure type to access the Debug Control Block Registers (DCB).
Structure type to access the Debug Identification Block Registers (DIB).
Structure type to access the Data Watchpoint and Trace Register (DWT).
Structure type to access the Floating Point Unit (FPU).
Structure type to access the Instrumentation Trace Macrocell Register (ITM).
Structure type to access the Memory Protection Unit (MPU).
Structure type to access the Nested Vectored Interrupt Controller (NVIC).
Structure type to access the System Control Block (SCB).
Structure type to access the System Control and ID Register not in the SCB.
Structure type to access the System Timer (SysTick).
Structure type to access the Trace Port Interface Register (TPI).
static std::string ch(int ain, const std::string &kind, const std::string &extra="", const std::string &board="lj")
Union type to access the Application Program Status Register (APSR).
Union type to access the Control Registers (CONTROL).
Union type to access the Interrupt Program Status Register (IPSR).
Union type to access the Special-Purpose Program Status Registers (xPSR).