1 /* ########################## L1 Cache functions ################################# */
4 \defgroup L1_cache_functions L1 Cache Functions
5 \ingroup CMSIS_Core_FunctionInterface
6 \brief L1 Cache Functions give support to enable, clean and invalidate level 1 instruction and data caches, as well as to enable branch target address cache.
8 \fn __STATIC_INLINE void L1C_EnableCaches(void)
9 \fn __STATIC_INLINE void L1C_DisableCaches(void)
10 \fn __STATIC_INLINE void L1C_EnableBTAC(void)
11 \fn __STATIC_INLINE void L1C_DisableBTAC(void)
12 \fn __STATIC_INLINE void L1C_InvalidateBTAC(void)
13 \fn __STATIC_INLINE void L1C_InvalidateICacheAll(void)
14 \fn __STATIC_INLINE void L1C_CleanDCacheMVA(void *va)
15 \fn __STATIC_INLINE void L1C_InvalidateDCacheMVA(void *va)
16 \fn __STATIC_INLINE void L1C_CleanInvalidateDCacheMVA(void *va)
18 \fn __STATIC_INLINE void L1C_CleanInvalidateCache(uint32_t op)
20 Generic mechanism for cleaning/invalidating the entire data or unified cache to the point of coherency.
22 \fn __STATIC_INLINE void L1C_InvalidateDCacheAll(void)
23 \fn __STATIC_INLINE void L1C_CleanDCacheAll(void)
24 \fn __STATIC_INLINE void L1C_CleanInvalidateDCacheAll(void)
25 \fn __STATIC_INLINE __ASM void __L1C_CleanInvalidateCache(uint32_t op)
27 Generic mechanism for cleaning/invalidating the entire data or unified cache to the point of coherency.
29 The parameter \b op defines which cleaning/invalidation strategy should be used:
30 - 0 - Cache is invalidated using DCISW register.
31 - 1 - Cache is cleaned using DCCSW register.
32 - other - Cache is invalidated and cleaned using DCCISW register.
36 /* ########################## L2 Cache functions ################################# */
39 \defgroup L2_cache_functions L2C-310 Cache Controller Functions
40 \ingroup CMSIS_Core_FunctionInterface
41 \brief L2C-310 Cache Controller gives access to functions for level 2 cache maintenance.\n
42 Reference: <a href="http://infocenter.arm.com/help/topic/com.arm.doc.ddi0246h/index.html">Level 2 Cache Controller L2C-310 Technical Reference Manual</a>.
47 \struct L2C_310_TypeDef
49 \fn __STATIC_INLINE void L2C_Sync(void)
50 \fn __STATIC_INLINE int L2C_GetID (void)
51 \fn __STATIC_INLINE int L2C_GetType (void)
52 \fn __STATIC_INLINE void L2C_InvAllByWay (void)
53 \fn __STATIC_INLINE void L2C_CleanInvAllByWay (void)
54 \fn __STATIC_INLINE void L2C_Enable(void)
55 \fn __STATIC_INLINE void L2C_Disable(void)
56 \fn __STATIC_INLINE void L2C_InvPa (void *pa)
57 \fn __STATIC_INLINE void L2C_CleanPa (void *pa)
58 \fn __STATIC_INLINE void L2C_CleanInvPa (void *pa)
63 /* ########################## L2C_310_TypeDef Member ########################## */
65 \var L2C_310_TypeDef::ADDRESS_FILTER_END
68 \var __IOM uint32_t L2C_310_TypeDef::ADDRESS_FILTER_START
71 \var __IOM uint32_t L2C_310_TypeDef::AUX_CNT
74 \var __IM uint32_t L2C_310_TypeDef::CACHE_ID
77 \var __IOM uint32_t L2C_310_TypeDef::CACHE_SYNC
80 \var __IM uint32_t L2C_310_TypeDef::CACHE_TYPE
83 \var __IOM uint32_t L2C_310_TypeDef::CLEAN_INV_LINE_INDEX_WAY
86 \var __IOM uint32_t L2C_310_TypeDef::CLEAN_INV_LINE_PA
89 \var __IOM uint32_t L2C_310_TypeDef::CLEAN_INV_WAY
92 \var __IOM uint32_t L2C_310_TypeDef::CLEAN_LINE_INDEX_WAY
95 \var __IOM uint32_t L2C_310_TypeDef::CLEAN_LINE_PA
98 \var __IOM uint32_t L2C_310_TypeDef::CLEAN_WAY
101 \var __IOM uint32_t L2C_310_TypeDef::CONTROL
104 \var __IOM uint32_t L2C_310_TypeDef::DATA_LOCK_0_WAY
107 \var __IOM uint32_t L2C_310_TypeDef::DATA_LOCK_1_WAY
110 \var __IOM uint32_t L2C_310_TypeDef::DATA_LOCK_2_WAY
113 \var __IOM uint32_t L2C_310_TypeDef::DATA_LOCK_3_WAY
116 \var __IOM uint32_t L2C_310_TypeDef::DATA_LOCK_4_WAY
119 \var __IOM uint32_t L2C_310_TypeDef::DATA_LOCK_5_WAY
122 \var __IOM uint32_t L2C_310_TypeDef::DATA_LOCK_6_WAY
125 \var __IOM uint32_t L2C_310_TypeDef::DATA_LOCK_7_WAY
128 \var __IOM uint32_t L2C_310_TypeDef::DEBUG_CONTROL
131 \var __IOM uint32_t L2C_310_TypeDef::EVENT_CONTROL
134 \var __IOM uint32_t L2C_310_TypeDef::EVENT_COUNTER0_CONF
137 \var __IOM uint32_t L2C_310_TypeDef::EVENT_COUNTER1_CONF
140 \var __IOM uint32_t L2C_310_TypeDef::INST_LOCK_0_WAY
143 \var __IOM uint32_t L2C_310_TypeDef::INST_LOCK_1_WAY
146 \var __IOM uint32_t L2C_310_TypeDef::INST_LOCK_2_WAY
149 \var __IOM uint32_t L2C_310_TypeDef::INST_LOCK_3_WAY
152 \var __IOM uint32_t L2C_310_TypeDef::INST_LOCK_4_WAY
155 \var __IOM uint32_t L2C_310_TypeDef::INST_LOCK_5_WAY
158 \var __IOM uint32_t L2C_310_TypeDef::INST_LOCK_6_WAY
161 \var __IOM uint32_t L2C_310_TypeDef::INST_LOCK_7_WAY
164 \var __OM uint32_t L2C_310_TypeDef::INTERRUPT_CLEAR
167 \var __IOM uint32_t L2C_310_TypeDef::INTERRUPT_MASK
170 \var __IOM uint32_t L2C_310_TypeDef::INV_LINE_PA
173 \var __IOM uint32_t L2C_310_TypeDef::INV_WAY
176 \var __IOM uint32_t L2C_310_TypeDef::LOCK_LINE_EN
179 \var __IM uint32_t L2C_310_TypeDef::MASKED_INT_STATUS
182 \var __IM uint32_t L2C_310_TypeDef::RAW_INT_STATUS
185 \var __IOM uint32_t L2C_310_TypeDef::UNLOCK_ALL_BY_WAY