OpenOCD
riscv_info_t Struct Reference
Collaboration diagram for riscv_info_t:

Data Fields

int(* authdata_read )(struct target *target, uint32_t *value)
 
int(* authdata_write )(struct target *target, uint32_t value)
 
struct command_contextcmd_ctx
 
int current_hartid
 
unsigned(* data_bits )(struct target *target)
 
int debug_buffer_size [RISCV_MAX_HARTS]
 
int(* dmi_read )(struct target *target, uint32_t *value, uint32_t address)
 
int(* dmi_write )(struct target *target, uint32_t address, uint32_t value)
 
int(* dmi_write_u64_bits )(struct target *target)
 
unsigned dtm_version
 
int(* execute_debug_buffer )(struct target *target)
 
void(* fill_dmi_nop_u64 )(struct target *target, char *buf)
 
void(* fill_dmi_read_u64 )(struct target *target, char *buf, int a)
 
void(* fill_dmi_write_u64 )(struct target *target, char *buf, int a, uint64_t d)
 
int(* get_register )(struct target *target, riscv_reg_t *value, int hid, int rid)
 
int(* get_register_buf )(struct target *target, uint8_t *buf, int regno)
 
int(* halt_go )(struct target *target)
 
int(* halt_prep )(struct target *target)
 
enum riscv_halt_reason(* halt_reason )(struct target *target)
 
int(* hart_count )(struct target *target)
 
bool impebreak
 
bool(* is_halted )(struct target *target)
 
bool manual_hwbp_set
 
riscv_reg_t misa [RISCV_MAX_HARTS]
 
int(* on_halt )(struct target *target)
 
int(* on_step )(struct target *target)
 
bool prepped
 
riscv_insn_t(* read_debug_buffer )(struct target *target, unsigned index)
 
int(* read_memory )(struct target *target, target_addr_t address, uint32_t size, uint32_t count, uint8_t *buffer, uint32_t increment)
 
uint8_t reg_cache_values [RISCV_MAX_REGISTERS][8]
 
char * reg_names
 
bool registers_initialized
 
int reset_delays_wait
 
int(* resume_go )(struct target *target)
 
int(* resume_prep )(struct target *target)
 
int rtos_hartid
 
int(* select_current_hart )(struct target *target)
 
bool selected
 
int(* set_register )(struct target *target, int hartid, int regid, uint64_t value)
 
int(* set_register_buf )(struct target *target, int regno, const uint8_t *buf)
 
int(* step_current_hart )(struct target *target)
 
int(* test_compliance )(struct target *target)
 
int(* test_sba_config_reg )(struct target *target, target_addr_t legal_address, uint32_t num_words, target_addr_t illegal_address, bool run_sbbusyerror_test)
 
unsigned trigger_count [RISCV_MAX_HARTS]
 
int 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
 
unsigned vlenb [RISCV_MAX_HARTS]
 
int(* write_debug_buffer )(struct target *target, unsigned index, riscv_insn_t d)
 
int xlen [RISCV_MAX_HARTS]
 

Detailed Description

Definition at line 54 of file riscv.h.

Field Documentation

◆ authdata_read

int(* riscv_info_t::authdata_read) (struct target *target, uint32_t *value)

Definition at line 146 of file riscv.h.

Referenced by init_target().

◆ authdata_write

int(* riscv_info_t::authdata_write) (struct target *target, uint32_t value)

Definition at line 147 of file riscv.h.

Referenced by init_target().

◆ cmd_ctx

struct command_context* riscv_info_t::cmd_ctx

Definition at line 57 of file riscv.h.

Referenced by riscv_examine(), and riscv_init_target().

◆ current_hartid

int riscv_info_t::current_hartid

Definition at line 67 of file riscv.h.

Referenced by riscv_info_init(), and riscv_openocd_poll().

◆ data_bits

unsigned(* riscv_info_t::data_bits) (struct target *target)

Definition at line 162 of file riscv.h.

Referenced by init_target().

◆ debug_buffer_size

int riscv_info_t::debug_buffer_size[RISCV_MAX_HARTS]

Definition at line 94 of file riscv.h.

◆ dmi_read

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

Definition at line 149 of file riscv.h.

Referenced by init_target().

◆ dmi_write

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

Definition at line 150 of file riscv.h.

Referenced by init_target().

◆ dmi_write_u64_bits

int(* riscv_info_t::dmi_write_u64_bits) (struct target *target)

Definition at line 141 of file riscv.h.

Referenced by init_target().

◆ dtm_version

unsigned riscv_info_t::dtm_version

Definition at line 55 of file riscv.h.

Referenced by get_target_type(), riscv_examine(), and riscv_info_init().

◆ execute_debug_buffer

int(* riscv_info_t::execute_debug_buffer) (struct target *target)

Definition at line 140 of file riscv.h.

Referenced by init_target().

◆ fill_dmi_nop_u64

void(* riscv_info_t::fill_dmi_nop_u64) (struct target *target, char *buf)

Definition at line 144 of file riscv.h.

Referenced by init_target().

◆ fill_dmi_read_u64

void(* riscv_info_t::fill_dmi_read_u64) (struct target *target, char *buf, int a)

Definition at line 143 of file riscv.h.

Referenced by init_target().

◆ fill_dmi_write_u64

void(* riscv_info_t::fill_dmi_write_u64) (struct target *target, char *buf, int a, uint64_t d)

Definition at line 142 of file riscv.h.

Referenced by init_target().

◆ get_register

int(* riscv_info_t::get_register) (struct target *target, riscv_reg_t *value, int hid, int rid)

Definition at line 115 of file riscv.h.

Referenced by init_target().

◆ get_register_buf

int(* riscv_info_t::get_register_buf) (struct target *target, uint8_t *buf, int regno)

Definition at line 119 of file riscv.h.

Referenced by init_target().

◆ halt_go

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

Definition at line 134 of file riscv.h.

Referenced by init_target().

◆ halt_prep

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

Definition at line 133 of file riscv.h.

Referenced by init_target().

◆ halt_reason

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

Definition at line 136 of file riscv.h.

Referenced by init_target().

◆ hart_count

int(* riscv_info_t::hart_count) (struct target *target)

Definition at line 161 of file riscv.h.

Referenced by init_target().

◆ impebreak

bool riscv_info_t::impebreak

Definition at line 100 of file riscv.h.

◆ is_halted

bool(* riscv_info_t::is_halted) (struct target *target)

Definition at line 123 of file riscv.h.

Referenced by halt_go(), init_target(), and resume_go().

◆ manual_hwbp_set

bool riscv_info_t::manual_hwbp_set

Definition at line 181 of file riscv.h.

◆ misa

riscv_reg_t riscv_info_t::misa[RISCV_MAX_HARTS]

Definition at line 80 of file riscv.h.

◆ on_halt

int(* riscv_info_t::on_halt) (struct target *target)

Definition at line 129 of file riscv.h.

Referenced by init_target().

◆ on_step

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

Definition at line 135 of file riscv.h.

Referenced by init_target().

◆ prepped

bool riscv_info_t::prepped

Definition at line 109 of file riscv.h.

Referenced by riscv_halt(), riscv_resume(), and select_prepped_harts().

◆ read_debug_buffer

riscv_insn_t(* riscv_info_t::read_debug_buffer) (struct target *target, unsigned index)

Definition at line 139 of file riscv.h.

Referenced by init_target().

◆ read_memory

int(* riscv_info_t::read_memory) (struct target *target, target_addr_t address, uint32_t size, uint32_t count, uint8_t *buffer, uint32_t increment)

Definition at line 157 of file riscv.h.

Referenced by init_target().

◆ reg_cache_values

uint8_t riscv_info_t::reg_cache_values[RISCV_MAX_REGISTERS][8]

Definition at line 72 of file riscv.h.

◆ reg_names

char* riscv_info_t::reg_names

Definition at line 76 of file riscv.h.

Referenced by riscv_deinit_target().

◆ registers_initialized

bool riscv_info_t::registers_initialized

Definition at line 97 of file riscv.h.

Referenced by riscv_info_init().

◆ reset_delays_wait

int riscv_info_t::reset_delays_wait

Definition at line 106 of file riscv.h.

◆ resume_go

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

Definition at line 127 of file riscv.h.

Referenced by init_target().

◆ resume_prep

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

Definition at line 132 of file riscv.h.

Referenced by init_target().

◆ rtos_hartid

int riscv_info_t::rtos_hartid

Definition at line 61 of file riscv.h.

◆ select_current_hart

int(* riscv_info_t::select_current_hart) (struct target *target)

Definition at line 122 of file riscv.h.

Referenced by init_target().

◆ selected

bool riscv_info_t::selected

Definition at line 111 of file riscv.h.

Referenced by select_prepped_harts().

◆ set_register

int(* riscv_info_t::set_register) (struct target *target, int hartid, int regid, uint64_t value)

Definition at line 117 of file riscv.h.

Referenced by init_target().

◆ set_register_buf

int(* riscv_info_t::set_register_buf) (struct target *target, int regno, const uint8_t *buf)

Definition at line 120 of file riscv.h.

Referenced by init_target().

◆ step_current_hart

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

Definition at line 128 of file riscv.h.

Referenced by init_target().

◆ test_compliance

int(* riscv_info_t::test_compliance) (struct target *target)

Definition at line 155 of file riscv.h.

Referenced by init_target().

◆ test_sba_config_reg

int(* riscv_info_t::test_sba_config_reg) (struct target *target, target_addr_t legal_address, uint32_t num_words, target_addr_t illegal_address, bool run_sbbusyerror_test)

Definition at line 152 of file riscv.h.

Referenced by init_target().

◆ trigger_count

unsigned riscv_info_t::trigger_count[RISCV_MAX_HARTS]

Definition at line 85 of file riscv.h.

◆ trigger_unique_id

int riscv_info_t::trigger_unique_id[RISCV_MAX_HWBPS]

Definition at line 91 of file riscv.h.

Referenced by riscv_info_init().

◆ triggers_enumerated

bool riscv_info_t::triggers_enumerated

Definition at line 102 of file riscv.h.

◆ type_uint128_vector

struct reg_data_type riscv_info_t::type_uint128_vector

Definition at line 174 of file riscv.h.

◆ type_uint16_vector

struct reg_data_type riscv_info_t::type_uint16_vector

Definition at line 171 of file riscv.h.

◆ type_uint32_vector

struct reg_data_type riscv_info_t::type_uint32_vector

Definition at line 172 of file riscv.h.

◆ type_uint64_vector

struct reg_data_type riscv_info_t::type_uint64_vector

Definition at line 173 of file riscv.h.

◆ type_uint8_vector

struct reg_data_type riscv_info_t::type_uint8_vector

Definition at line 170 of file riscv.h.

◆ type_vector

struct reg_data_type riscv_info_t::type_vector

Definition at line 177 of file riscv.h.

◆ vector_fields

struct reg_data_type_union_field riscv_info_t::vector_fields[5]

Definition at line 175 of file riscv.h.

◆ vector_uint128

struct reg_data_type_vector riscv_info_t::vector_uint128

Definition at line 169 of file riscv.h.

◆ vector_uint16

struct reg_data_type_vector riscv_info_t::vector_uint16

Definition at line 166 of file riscv.h.

◆ vector_uint32

struct reg_data_type_vector riscv_info_t::vector_uint32

Definition at line 167 of file riscv.h.

◆ vector_uint64

struct reg_data_type_vector riscv_info_t::vector_uint64

Definition at line 168 of file riscv.h.

◆ vector_uint8

struct reg_data_type_vector riscv_info_t::vector_uint8

Definition at line 165 of file riscv.h.

◆ vector_union

struct reg_data_type_union riscv_info_t::vector_union

Definition at line 176 of file riscv.h.

◆ version_specific

void* riscv_info_t::version_specific

Definition at line 58 of file riscv.h.

Referenced by deinit_target(), get_info(), and init_target().

◆ vlenb

unsigned riscv_info_t::vlenb[RISCV_MAX_HARTS]

Definition at line 82 of file riscv.h.

◆ write_debug_buffer

int(* riscv_info_t::write_debug_buffer) (struct target *target, unsigned index, riscv_insn_t d)

Definition at line 137 of file riscv.h.

Referenced by init_target().

◆ xlen

int riscv_info_t::xlen[RISCV_MAX_HARTS]

Definition at line 79 of file riscv.h.

Referenced by examine(), init_target(), riscv_info_init(), and riscv_run_algorithm().


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