![]() |
RTEMS 6.1-rc7
|
Functions that configure Instruction and Data cache. More...
Macros | |
#define | CCSIDR_WAYS(x) (((x) & SCB_CCSIDR_ASSOCIATIVITY_Msk) >> SCB_CCSIDR_ASSOCIATIVITY_Pos) |
#define | CCSIDR_SETS(x) (((x) & SCB_CCSIDR_NUMSETS_Msk ) >> SCB_CCSIDR_NUMSETS_Pos ) |
#define | __SCB_DCACHE_LINE_SIZE 32U |
#define | __SCB_ICACHE_LINE_SIZE 32U |
Functions | |
__STATIC_FORCEINLINE void | SCB_EnableICache (void) |
Enable I-Cache. | |
__STATIC_FORCEINLINE void | SCB_DisableICache (void) |
Disable I-Cache. | |
__STATIC_FORCEINLINE void | SCB_InvalidateICache (void) |
Invalidate I-Cache. | |
__STATIC_FORCEINLINE void | SCB_InvalidateICache_by_Addr (volatile void *addr, int32_t isize) |
I-Cache Invalidate by address. | |
__STATIC_FORCEINLINE void | SCB_EnableDCache (void) |
Enable D-Cache. | |
__STATIC_FORCEINLINE void | SCB_DisableDCache (void) |
Disable D-Cache. | |
__STATIC_FORCEINLINE void | SCB_InvalidateDCache (void) |
Invalidate D-Cache. | |
__STATIC_FORCEINLINE void | SCB_CleanDCache (void) |
Clean D-Cache. | |
__STATIC_FORCEINLINE void | SCB_CleanInvalidateDCache (void) |
Clean & Invalidate D-Cache. | |
__STATIC_FORCEINLINE void | SCB_InvalidateDCache_by_Addr (volatile void *addr, int32_t dsize) |
D-Cache Invalidate by address. | |
__STATIC_FORCEINLINE void | SCB_CleanDCache_by_Addr (volatile void *addr, int32_t dsize) |
D-Cache Clean by address. | |
__STATIC_FORCEINLINE void | SCB_CleanInvalidateDCache_by_Addr (volatile void *addr, int32_t dsize) |
D-Cache Clean and Invalidate by address. | |
Functions that configure Instruction and Data cache.
#define __SCB_DCACHE_LINE_SIZE 32U |
Cortex-M7 cache line size is fixed to 32 bytes (8 words). See also register SCB_CCSIDR
#define __SCB_ICACHE_LINE_SIZE 32U |
Cortex-M7 cache line size is fixed to 32 bytes (8 words). See also register SCB_CCSIDR
__STATIC_FORCEINLINE void SCB_CleanDCache | ( | void | ) |
Clean D-Cache.
Cleans D-Cache
__STATIC_FORCEINLINE void SCB_CleanDCache_by_Addr | ( | volatile void * | addr, |
int32_t | dsize | ||
) |
D-Cache Clean by address.
Cleans D-Cache for the given address D-Cache is cleaned starting from a 32 byte aligned address in 32 byte granularity. D-Cache memory blocks which are part of given address + given size are cleaned.
[in] | addr | address |
[in] | dsize | size of memory block (in number of bytes) |
__STATIC_FORCEINLINE void SCB_CleanInvalidateDCache | ( | void | ) |
Clean & Invalidate D-Cache.
Cleans and Invalidates D-Cache
__STATIC_FORCEINLINE void SCB_CleanInvalidateDCache_by_Addr | ( | volatile void * | addr, |
int32_t | dsize | ||
) |
D-Cache Clean and Invalidate by address.
Cleans and invalidates D_Cache for the given address D-Cache is cleaned and invalidated starting from a 32 byte aligned address in 32 byte granularity. D-Cache memory blocks which are part of given address + given size are cleaned and invalidated.
[in] | addr | address (aligned to 32-byte boundary) |
[in] | dsize | size of memory block (in number of bytes) |
__STATIC_FORCEINLINE void SCB_DisableDCache | ( | void | ) |
Disable D-Cache.
Turns off D-Cache
__STATIC_FORCEINLINE void SCB_DisableICache | ( | void | ) |
Disable I-Cache.
Turns off I-Cache
__STATIC_FORCEINLINE void SCB_EnableDCache | ( | void | ) |
Enable D-Cache.
Turns on D-Cache
__STATIC_FORCEINLINE void SCB_EnableICache | ( | void | ) |
Enable I-Cache.
Turns on I-Cache
__STATIC_FORCEINLINE void SCB_InvalidateDCache | ( | void | ) |
Invalidate D-Cache.
Invalidates D-Cache
__STATIC_FORCEINLINE void SCB_InvalidateDCache_by_Addr | ( | volatile void * | addr, |
int32_t | dsize | ||
) |
D-Cache Invalidate by address.
Invalidates D-Cache for the given address. D-Cache is invalidated starting from a 32 byte aligned address in 32 byte granularity. D-Cache memory blocks which are part of given address + given size are invalidated.
[in] | addr | address |
[in] | dsize | size of memory block (in number of bytes) |
__STATIC_FORCEINLINE void SCB_InvalidateICache | ( | void | ) |
Invalidate I-Cache.
Invalidates I-Cache
__STATIC_FORCEINLINE void SCB_InvalidateICache_by_Addr | ( | volatile void * | addr, |
int32_t | isize | ||
) |
I-Cache Invalidate by address.
Invalidates I-Cache for the given address. I-Cache is invalidated starting from a 32 byte aligned address in 32 byte granularity. I-Cache memory blocks which are part of given address + given size are invalidated.
[in] | addr | address |
[in] | isize | size of memory block (in number of bytes) |