RTEMS
Files | Functions
Cache Manager

The Cache Manager provides functions to perform maintenance operations for data and instruction caches. More...

Files

file  cache.h
 This header file defines the Cache Manager API.
 

Functions

void * rtems_cache_aligned_malloc (size_t nbytes)
 % More...
 
void rtems_cache_coherent_add_area (void *area_begin, uintptr_t area_size)
 % More...
 
void * rtems_cache_coherent_allocate (size_t size, uintptr_t alignment, uintptr_t boundary)
 % More...
 
void rtems_cache_coherent_free (void *ptr)
 % More...
 
void rtems_cache_disable_data (void)
 %
 
void rtems_cache_disable_instruction (void)
 %
 
void rtems_cache_enable_data (void)
 %
 
void rtems_cache_enable_instruction (void)
 %
 
void rtems_cache_flush_entire_data (void)
 %
 
void rtems_cache_flush_multiple_data_lines (const void *addr, size_t size)
 % More...
 
void rtems_cache_freeze_data (void)
 %
 
void rtems_cache_freeze_instruction (void)
 %
 
size_t rtems_cache_get_data_line_size (void)
 %
 
size_t rtems_cache_get_data_cache_size (uint32_t level)
 % More...
 
size_t rtems_cache_get_instruction_line_size (void)
 %
 
size_t rtems_cache_get_instruction_cache_size (uint32_t level)
 % More...
 
size_t rtems_cache_get_maximal_line_size (void)
 %
 
void rtems_cache_instruction_sync_after_code_change (const void *code_addr, size_t n_bytes)
 % More...
 
void rtems_cache_invalidate_entire_data (void)
 %
 
void rtems_cache_invalidate_entire_instruction (void)
 %
 
void rtems_cache_invalidate_multiple_data_lines (const void *addr, size_t size)
 % More...
 
void rtems_cache_invalidate_multiple_instruction_lines (const void *addr, size_t size)
 % More...
 
void rtems_cache_unfreeze_data (void)
 %
 
void rtems_cache_unfreeze_instruction (void)
 %
 

Detailed Description

The Cache Manager provides functions to perform maintenance operations for data and instruction caches.

Function Documentation

◆ rtems_cache_aligned_malloc()

void* rtems_cache_aligned_malloc ( size_t  nbytes)

%

Parameters
nbytes%

◆ rtems_cache_coherent_add_area()

void rtems_cache_coherent_add_area ( void *  area_begin,
uintptr_t  area_size 
)

%

Parameters
area_begin%
area_size%

◆ rtems_cache_coherent_allocate()

void* rtems_cache_coherent_allocate ( size_t  size,
uintptr_t  alignment,
uintptr_t  boundary 
)

%

Parameters
size%
alignment%
boundary%

◆ rtems_cache_coherent_free()

void rtems_cache_coherent_free ( void *  ptr)

%

Parameters
ptr%

◆ rtems_cache_flush_multiple_data_lines()

void rtems_cache_flush_multiple_data_lines ( const void *  addr,
size_t  size 
)

%

Parameters
addr%
size%

Definition at line 109 of file cacheimpl.h.

◆ rtems_cache_get_data_cache_size()

size_t rtems_cache_get_data_cache_size ( uint32_t  level)

%

Parameters
level%

Definition at line 216 of file cacheimpl.h.

◆ rtems_cache_get_instruction_cache_size()

size_t rtems_cache_get_instruction_cache_size ( uint32_t  level)

%

Parameters
level%

Definition at line 390 of file cacheimpl.h.

◆ rtems_cache_instruction_sync_after_code_change()

void rtems_cache_instruction_sync_after_code_change ( const void *  code_addr,
size_t  n_bytes 
)

%

Parameters
code_addr%
n_bytes%

Definition at line 465 of file cacheimpl.h.

◆ rtems_cache_invalidate_multiple_data_lines()

void rtems_cache_invalidate_multiple_data_lines ( const void *  addr,
size_t  size 
)

%

Parameters
addr%
size%

Definition at line 143 of file cacheimpl.h.

◆ rtems_cache_invalidate_multiple_instruction_lines()

void rtems_cache_invalidate_multiple_instruction_lines ( const void *  addr,
size_t  size 
)

%

Parameters
addr%
size%

Definition at line 344 of file cacheimpl.h.