OpenOCD
riscv_info Struct Reference
Collaboration diagram for riscv_info:

Public Member Functions

 COMMAND_HELPER ((*print_info), struct target *target)
 

Data Fields

int(* access_memory )(struct target *target, const struct riscv_mem_access_args args)
 
int(* authdata_read )(struct target *target, uint32_t *value, unsigned int index)
 
int(* authdata_write )(struct target *target, uint32_t value, unsigned int index)
 
bool autofence
 
struct command_contextcmd_ctx
 
unsigned int common_magic
 
struct reg_name_table custom_register_names
 
unsigned int(* data_bits )(struct target *target)
 
int(* dmi_read )(struct target *target, uint32_t *value, uint32_t address)
 
int(* dmi_write )(struct target *target, uint32_t address, uint32_t value)
 
unsigned int dtm_version
 
int(* execute_progbuf )(struct target *target, uint32_t *cmderr)
 
struct list_head expose_csr
 
struct list_head expose_custom
 
void(* fill_dm_nop )(const struct target *target, uint8_t *buf)
 
void(* fill_dmi_read )(const struct target *target, uint8_t *buf, uint32_t a)
 
void(* fill_dmi_write )(const struct target *target, uint8_t *buf, uint32_t a, uint32_t d)
 
uint32_t(* get_dmi_address )(const struct target *target, uint32_t dm_address)
 
unsigned int(* get_dmi_address_bits )(const struct target *target)
 
int(* get_hart_state )(struct target *target, enum riscv_hart_state *state)
 
bool(* get_impebreak )(const struct target *target)
 
unsigned int(* get_progbufsize )(const struct target *target)
 
int(* halt_go )(struct target *target)
 
unsigned int halt_group_repoll_count
 
int(* halt_prep )(struct target *target)
 
enum riscv_halt_reason(* halt_reason )(struct target *target)
 
enum target_event halted_callback_event
 
bool halted_needs_event_callback
 
int(* handle_became_halted )(struct target *target, enum riscv_hart_state previous_riscv_state)
 
int(* handle_became_running )(struct target *target, enum riscv_hart_state previous_riscv_state)
 
int(* handle_became_unavailable )(struct target *target, enum riscv_hart_state previous_riscv_state)
 
struct list_head hide_csr
 
int(* invalidate_cached_progbuf )(struct target *target)
 
enum riscv_isrmasking_mode isrmask_mode
 
int64_t last_activity
 
enum riscv_mem_access_method mem_access_methods [RISCV_MEM_ACCESS_MAX_METHODS_NUM]
 
bool mem_access_warn [RISCV_MEM_ACCESS_MAX_METHODS_NUM]
 
riscv_reg_t misa
 
bool need_single_step
 
unsigned int num_enabled_mem_access_methods
 
int(* on_step )(struct target *target)
 
bool prepped
 
bool range_trigger_fallback_encountered
 
riscv_insn_t(* read_progbuf )(struct target *target, unsigned int index)
 
char ** reg_names
 
bool * reserved_triggers
 
int reset_delays_wait
 
int(* resume_go )(struct target *target)
 
int(* resume_prep )(struct target *target)
 
struct riscv_sample_buf sample_buf
 
riscv_sample_config_t sample_config
 
int(* sample_memory )(struct target *target, struct riscv_sample_buf *buf, riscv_sample_config_t *config, int64_t until_ms)
 
int(* select_target )(struct target *target)
 
bool selected
 
riscv_reg_info_t shared_reg_info
 
int(* step_current_hart )(struct target *target)
 
int(* tick )(struct target *target)
 
int tinfo_version
 
unsigned int trigger_count
 
int64_t trigger_hit
 
unsigned int trigger_tinfo [RISCV_MAX_TRIGGERS]
 
int64_t trigger_unique_id [RISCV_MAX_HWBPS]
 
bool triggers_enumerated
 
struct reg_data_type type_uint128_vector
 
struct reg_data_type type_uint16_vector
 
struct reg_data_type type_uint32_vector
 
struct reg_data_type type_uint64_vector
 
struct reg_data_type type_uint8_vector
 
struct reg_data_type type_vector
 
struct reg_data_type_union_field vector_fields [5]
 
struct reg_data_type_vector vector_uint128
 
struct reg_data_type_vector vector_uint16
 
struct reg_data_type_vector vector_uint32
 
struct reg_data_type_vector vector_uint64
 
struct reg_data_type_vector vector_uint8
 
struct reg_data_type_union vector_union
 
void * version_specific
 
enum riscv_virt2phys_mode virt2phys_mode
 
unsigned int vlenb
 
enum yes_no_maybe vsew64_supported
 
bool wp_allow_equality_match_trigger
 
bool wp_allow_ge_lt_trigger
 
bool wp_allow_napot_trigger
 
struct list_headwp_triggers_negative_cache
 
int(* write_progbuf )(struct target *target, unsigned int index, riscv_insn_t d)
 
int xlen
 

Detailed Description

Definition at line 168 of file riscv.h.

Member Function Documentation

◆ COMMAND_HELPER()

riscv_info::COMMAND_HELPER ( print_info,
struct target target 
)

Field Documentation

◆ access_memory

int(* riscv_info::access_memory) (struct target *target, const struct riscv_mem_access_args args)

Definition at line 306 of file riscv.h.

◆ authdata_read

int(* riscv_info::authdata_read) (struct target *target, uint32_t *value, unsigned int index)

Definition at line 286 of file riscv.h.

◆ authdata_write

int(* riscv_info::authdata_write) (struct target *target, uint32_t value, unsigned int index)

Definition at line 287 of file riscv.h.

◆ autofence

bool riscv_info::autofence

Definition at line 367 of file riscv.h.

Referenced by riscv_info_init().

◆ cmd_ctx

struct command_context* riscv_info::cmd_ctx

Definition at line 173 of file riscv.h.

◆ common_magic

unsigned int riscv_info::common_magic

Definition at line 169 of file riscv.h.

Referenced by is_riscv(), and riscv_info_init().

◆ custom_register_names

struct reg_name_table riscv_info::custom_register_names

Definition at line 174 of file riscv.h.

◆ data_bits

unsigned int(* riscv_info::data_bits) (struct target *target)

Definition at line 308 of file riscv.h.

◆ dmi_read

int(* riscv_info::dmi_read) (struct target *target, uint32_t *value, uint32_t address)

Definition at line 289 of file riscv.h.

◆ dmi_write

int(* riscv_info::dmi_write) (struct target *target, uint32_t address, uint32_t value)

Definition at line 290 of file riscv.h.

◆ dtm_version

unsigned int riscv_info::dtm_version

Definition at line 171 of file riscv.h.

Referenced by riscv_info_init().

◆ execute_progbuf

int(* riscv_info::execute_progbuf) (struct target *target, uint32_t *cmderr)

Definition at line 279 of file riscv.h.

◆ expose_csr

struct list_head riscv_info::expose_csr

Definition at line 339 of file riscv.h.

Referenced by riscv_info_init().

◆ expose_custom

struct list_head riscv_info::expose_custom

Definition at line 339 of file riscv.h.

Referenced by riscv_info_init().

◆ fill_dm_nop

void(* riscv_info::fill_dm_nop) (const struct target *target, uint8_t *buf)

Definition at line 284 of file riscv.h.

◆ fill_dmi_read

void(* riscv_info::fill_dmi_read) (const struct target *target, uint8_t *buf, uint32_t a)

Definition at line 283 of file riscv.h.

◆ fill_dmi_write

void(* riscv_info::fill_dmi_write) (const struct target *target, uint8_t *buf, uint32_t a, uint32_t d)

Definition at line 282 of file riscv.h.

◆ get_dmi_address

uint32_t(* riscv_info::get_dmi_address) (const struct target *target, uint32_t dm_address)

Definition at line 299 of file riscv.h.

◆ get_dmi_address_bits

unsigned int(* riscv_info::get_dmi_address_bits) (const struct target *target)

Definition at line 281 of file riscv.h.

◆ get_hart_state

int(* riscv_info::get_hart_state) (struct target *target, enum riscv_hart_state *state)

Definition at line 249 of file riscv.h.

◆ get_impebreak

bool(* riscv_info::get_impebreak) (const struct target *target)

Definition at line 292 of file riscv.h.

◆ get_progbufsize

unsigned int(* riscv_info::get_progbufsize) (const struct target *target)

Definition at line 293 of file riscv.h.

◆ halt_go

int(* riscv_info::halt_go) (struct target *target)

Definition at line 274 of file riscv.h.

◆ halt_group_repoll_count

unsigned int riscv_info::halt_group_repoll_count

Definition at line 242 of file riscv.h.

Referenced by riscv_openocd_poll().

◆ halt_prep

int(* riscv_info::halt_prep) (struct target *target)

Definition at line 273 of file riscv.h.

◆ halt_reason

enum riscv_halt_reason(* riscv_info::halt_reason) (struct target *target)

Definition at line 275 of file riscv.h.

◆ halted_callback_event

enum target_event riscv_info::halted_callback_event

Definition at line 240 of file riscv.h.

◆ halted_needs_event_callback

bool riscv_info::halted_needs_event_callback

Definition at line 240 of file riscv.h.

◆ handle_became_halted

int(* riscv_info::handle_became_halted) (struct target *target, enum riscv_hart_state previous_riscv_state)

Definition at line 259 of file riscv.h.

◆ handle_became_running

int(* riscv_info::handle_became_running) (struct target *target, enum riscv_hart_state previous_riscv_state)

Definition at line 261 of file riscv.h.

◆ handle_became_unavailable

int(* riscv_info::handle_became_unavailable) (struct target *target, enum riscv_hart_state previous_riscv_state)

Definition at line 263 of file riscv.h.

◆ hide_csr

struct list_head riscv_info::hide_csr

Definition at line 339 of file riscv.h.

Referenced by riscv_info_init().

◆ invalidate_cached_progbuf

int(* riscv_info::invalidate_cached_progbuf) (struct target *target)

Definition at line 280 of file riscv.h.

◆ isrmask_mode

enum riscv_isrmasking_mode riscv_info::isrmask_mode

Definition at line 242 of file riscv.h.

Referenced by riscv_info_init().

◆ last_activity

int64_t riscv_info::last_activity

Definition at line 357 of file riscv.h.

◆ mem_access_methods

enum riscv_mem_access_method riscv_info::mem_access_methods[RISCV_MEM_ACCESS_MAX_METHODS_NUM]

Definition at line 330 of file riscv.h.

Referenced by riscv_info_init().

◆ mem_access_warn

bool riscv_info::mem_access_warn[RISCV_MEM_ACCESS_MAX_METHODS_NUM]

Definition at line 339 of file riscv.h.

Referenced by riscv_info_init().

◆ misa

riscv_reg_t riscv_info::misa

Definition at line 182 of file riscv.h.

◆ need_single_step

bool riscv_info::need_single_step

Definition at line 210 of file riscv.h.

◆ num_enabled_mem_access_methods

unsigned int riscv_info::num_enabled_mem_access_methods

Definition at line 335 of file riscv.h.

Referenced by riscv_info_init().

◆ on_step

int(* riscv_info::on_step) (struct target *target)

Definition at line 275 of file riscv.h.

◆ prepped

bool riscv_info::prepped

Definition at line 235 of file riscv.h.

Referenced by riscv_halt(), and riscv_resume().

◆ range_trigger_fallback_encountered

bool riscv_info::range_trigger_fallback_encountered

Definition at line 361 of file riscv.h.

◆ read_progbuf

riscv_insn_t(* riscv_info::read_progbuf) (struct target *target, unsigned int index)

Definition at line 278 of file riscv.h.

◆ reg_names

char** riscv_info::reg_names

Definition at line 177 of file riscv.h.

◆ reserved_triggers

bool* riscv_info::reserved_triggers

Definition at line 330 of file riscv.h.

◆ reset_delays_wait

int riscv_info::reset_delays_wait

Definition at line 232 of file riscv.h.

◆ resume_go

int(* riscv_info::resume_go) (struct target *target)

Definition at line 253 of file riscv.h.

◆ resume_prep

int(* riscv_info::resume_prep) (struct target *target)

Definition at line 272 of file riscv.h.

◆ sample_buf

struct riscv_sample_buf riscv_info::sample_buf

Definition at line 353 of file riscv.h.

◆ sample_config

riscv_sample_config_t riscv_info::sample_config

Definition at line 353 of file riscv.h.

◆ sample_memory

int(* riscv_info::sample_memory) (struct target *target, struct riscv_sample_buf *buf, riscv_sample_config_t *config, int64_t until_ms)

Definition at line 301 of file riscv.h.

◆ select_target

int(* riscv_info::select_target) (struct target *target)

Definition at line 248 of file riscv.h.

◆ selected

bool riscv_info::selected

Definition at line 237 of file riscv.h.

◆ shared_reg_info

riscv_reg_info_t riscv_info::shared_reg_info

Definition at line 313 of file riscv.h.

◆ step_current_hart

int(* riscv_info::step_current_hart) (struct target *target)

Definition at line 254 of file riscv.h.

◆ tick

int(* riscv_info::tick) (struct target *target)

Definition at line 268 of file riscv.h.

◆ tinfo_version

int riscv_info::tinfo_version

Definition at line 202 of file riscv.h.

◆ trigger_count

unsigned int riscv_info::trigger_count

Definition at line 190 of file riscv.h.

◆ trigger_hit

int64_t riscv_info::trigger_hit

Definition at line 223 of file riscv.h.

◆ trigger_tinfo

unsigned int riscv_info::trigger_tinfo[RISCV_MAX_TRIGGERS]

Definition at line 199 of file riscv.h.

◆ trigger_unique_id

int64_t riscv_info::trigger_unique_id[RISCV_MAX_HWBPS]

Definition at line 219 of file riscv.h.

Referenced by riscv_info_init().

◆ triggers_enumerated

bool riscv_info::triggers_enumerated

Definition at line 228 of file riscv.h.

◆ type_uint128_vector

struct reg_data_type riscv_info::type_uint128_vector

Definition at line 313 of file riscv.h.

◆ type_uint16_vector

struct reg_data_type riscv_info::type_uint16_vector

Definition at line 313 of file riscv.h.

◆ type_uint32_vector

struct reg_data_type riscv_info::type_uint32_vector

Definition at line 313 of file riscv.h.

◆ type_uint64_vector

struct reg_data_type riscv_info::type_uint64_vector

Definition at line 313 of file riscv.h.

◆ type_uint8_vector

struct reg_data_type riscv_info::type_uint8_vector

Definition at line 313 of file riscv.h.

◆ type_vector

struct reg_data_type riscv_info::type_vector

Definition at line 313 of file riscv.h.

◆ vector_fields

struct reg_data_type_union_field riscv_info::vector_fields[5]

Definition at line 313 of file riscv.h.

◆ vector_uint128

struct reg_data_type_vector riscv_info::vector_uint128

Definition at line 313 of file riscv.h.

◆ vector_uint16

struct reg_data_type_vector riscv_info::vector_uint16

Definition at line 313 of file riscv.h.

◆ vector_uint32

struct reg_data_type_vector riscv_info::vector_uint32

Definition at line 313 of file riscv.h.

◆ vector_uint64

struct reg_data_type_vector riscv_info::vector_uint64

Definition at line 313 of file riscv.h.

◆ vector_uint8

struct reg_data_type_vector riscv_info::vector_uint8

Definition at line 313 of file riscv.h.

◆ vector_union

struct reg_data_type_union riscv_info::vector_union

Definition at line 313 of file riscv.h.

◆ version_specific

void* riscv_info::version_specific

Definition at line 174 of file riscv.h.

Referenced by riscv_info_init().

◆ virt2phys_mode

enum riscv_virt2phys_mode riscv_info::virt2phys_mode

Definition at line 223 of file riscv.h.

Referenced by riscv_info_init().

◆ vlenb

unsigned int riscv_info::vlenb

Definition at line 187 of file riscv.h.

◆ vsew64_supported

enum yes_no_maybe riscv_info::vsew64_supported

Definition at line 357 of file riscv.h.

Referenced by riscv_info_init().

◆ wp_allow_equality_match_trigger

bool riscv_info::wp_allow_equality_match_trigger

Definition at line 363 of file riscv.h.

Referenced by riscv_info_init().

◆ wp_allow_ge_lt_trigger

bool riscv_info::wp_allow_ge_lt_trigger

Definition at line 365 of file riscv.h.

Referenced by riscv_info_init().

◆ wp_allow_napot_trigger

bool riscv_info::wp_allow_napot_trigger

Definition at line 364 of file riscv.h.

Referenced by riscv_info_init().

◆ wp_triggers_negative_cache

struct list_head* riscv_info::wp_triggers_negative_cache

Definition at line 196 of file riscv.h.

◆ write_progbuf

int(* riscv_info::write_progbuf) (struct target *target, unsigned int index, riscv_insn_t d)

Definition at line 277 of file riscv.h.

◆ xlen

int riscv_info::xlen

Definition at line 180 of file riscv.h.

Referenced by examine(), fespi_write(), and riscv_info_init().


The documentation for this struct was generated from the following file: