OpenOCD
armv8_cache.c File Reference
Include dependency graph for armv8_cache.c:

Go to the source code of this file.

Macros

#define CACHE_LEVEL_HAS_D_CACHE   0x2
 
#define CACHE_LEVEL_HAS_I_CACHE   0x1
 
#define CACHE_LEVEL_HAS_UNIFIED_CACHE   0x4
 

Functions

static int _armv8_flush_all_data (struct target *target)
 
static int armv8_cache_d_inner_clean_inval_all (struct armv8_common *armv8)
 
static int armv8_cache_d_inner_flush_level (struct armv8_common *armv8, struct armv8_cachesize *size, int cl)
 
int armv8_cache_d_inner_flush_virt (struct armv8_common *armv8, target_addr_t va, size_t size)
 
int armv8_cache_i_inner_inval_virt (struct armv8_common *armv8, target_addr_t va, size_t size)
 
static int armv8_d_cache_sanity_check (struct armv8_common *armv8)
 
static int armv8_flush_all_data (struct target *target)
 
static int armv8_handle_inner_cache_info_command (struct command_invocation *cmd, struct armv8_cache_common *armv8_cache)
 
static int armv8_i_cache_sanity_check (struct armv8_common *armv8)
 
int armv8_identify_cache (struct armv8_common *armv8)
 
static struct armv8_cachesize decode_cache_reg (uint32_t cache_reg)
 
static int get_cache_info (struct arm_dpm *dpm, int cl, int ct, uint32_t *cache_reg)
 

Macro Definition Documentation

◆ CACHE_LEVEL_HAS_D_CACHE

#define CACHE_LEVEL_HAS_D_CACHE   0x2

Definition at line 19 of file armv8_cache.c.

◆ CACHE_LEVEL_HAS_I_CACHE

#define CACHE_LEVEL_HAS_I_CACHE   0x1

Definition at line 20 of file armv8_cache.c.

◆ CACHE_LEVEL_HAS_UNIFIED_CACHE

#define CACHE_LEVEL_HAS_UNIFIED_CACHE   0x4

Definition at line 18 of file armv8_cache.c.

Function Documentation

◆ _armv8_flush_all_data()

static int _armv8_flush_all_data ( struct target target)
static

Definition at line 224 of file armv8_cache.c.

References armv8_cache_d_inner_clean_inval_all(), and target_to_armv8().

Referenced by armv8_flush_all_data().

◆ armv8_cache_d_inner_clean_inval_all()

◆ armv8_cache_d_inner_flush_level()

static int armv8_cache_d_inner_flush_level ( struct armv8_common armv8,
struct armv8_cachesize size,
int  cl 
)
static

◆ armv8_cache_d_inner_flush_virt()

◆ armv8_cache_i_inner_inval_virt()

◆ armv8_d_cache_sanity_check()

static int armv8_d_cache_sanity_check ( struct armv8_common armv8)
static

◆ armv8_flush_all_data()

◆ armv8_handle_inner_cache_info_command()

◆ armv8_i_cache_sanity_check()

static int armv8_i_cache_sanity_check ( struct armv8_common armv8)
static

◆ armv8_identify_cache()

◆ decode_cache_reg()

static struct armv8_cachesize decode_cache_reg ( uint32_t  cache_reg)
static

◆ get_cache_info()

static int get_cache_info ( struct arm_dpm dpm,
int  cl,
int  ct,
uint32_t *  cache_reg 
)
static

Definition at line 255 of file armv8_cache.c.

Referenced by armv8_identify_cache().