Skip to content

Commit 195cd93

Browse files
TomoYamanakaadbridge
authored andcommitted
CMSIS-Core(A): Add MMU section_normal_nc macro
I added the macro definition for non-cache area.
1 parent 417a527 commit 195cd93

File tree

1 file changed

+16
-1
lines changed

1 file changed

+16
-1
lines changed

cmsis/TARGET_CORTEX_A/core_ca.h

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@
4242

4343
/* CMSIS CA definitions */
4444
#define __CA_CMSIS_VERSION_MAIN (1U) /*!< \brief [31:16] CMSIS-Core(A) main version */
45-
#define __CA_CMSIS_VERSION_SUB (0U) /*!< \brief [15:0] CMSIS-Core(A) sub version */
45+
#define __CA_CMSIS_VERSION_SUB (1U) /*!< \brief [15:0] CMSIS-Core(A) sub version */
4646
#define __CA_CMSIS_VERSION ((__CA_CMSIS_VERSION_MAIN << 16U) | \
4747
__CA_CMSIS_VERSION_SUB ) /*!< \brief CMSIS-Core(A) version number */
4848

@@ -1788,6 +1788,21 @@ typedef struct RegionStruct {
17881788
region.sh_t = NON_SHARED; \
17891789
MMU_GetSectionDescriptor(&descriptor_l1, region);
17901790

1791+
//Sect_Normal_NC. Outer & inner non-cacheable, non-shareable, executable, rw, domain 0
1792+
#define section_normal_nc(descriptor_l1, region) region.rg_t = SECTION; \
1793+
region.domain = 0x0; \
1794+
region.e_t = ECC_DISABLED; \
1795+
region.g_t = GLOBAL; \
1796+
region.inner_norm_t = NON_CACHEABLE; \
1797+
region.outer_norm_t = NON_CACHEABLE; \
1798+
region.mem_t = NORMAL; \
1799+
region.sec_t = SECURE; \
1800+
region.xn_t = EXECUTE; \
1801+
region.priv_t = RW; \
1802+
region.user_t = RW; \
1803+
region.sh_t = NON_SHARED; \
1804+
MMU_GetSectionDescriptor(&descriptor_l1, region);
1805+
17911806
//Sect_Normal_Cod. Outer & inner wb/wa, non-shareable, executable, ro, domain 0
17921807
#define section_normal_cod(descriptor_l1, region) region.rg_t = SECTION; \
17931808
region.domain = 0x0; \

0 commit comments

Comments
 (0)