#define RISCV_H
riscv_program
#include <stdint.h>
#include "opcodes.h"
#include "gdb_regs.h"
#include "jtag/jtag.h"
#include "target/register.h"
#include "target/semihosting_common.h"
#include <helper/command.h>
#define RISCV_COMMON_MAGIC
#define RISCV_MAX_HARTS
#define RISCV_MAX_REGISTERS
#define RISCV_MAX_TRIGGERS
#define RISCV_MAX_HWBPS
#define DEFAULT_COMMAND_TIMEOUT_SEC
#define DEFAULT_RESET_TIMEOUT_SEC
#define RISCV_SATP_MODE
#define RISCV_SATP_PPN
#define RISCV_PGSHIFT
#define RISCV_NUM_MEM_ACCESS_METHODS
riscv011_target;
riscv013_target;
riscv_reg_t
riscv_insn_t
riscv_addr_t
riscv_mem_access_method
RISCV_MEM_ACCESS_UNSPECIFIED
RISCV_MEM_ACCESS_PROGBUF
RISCV_MEM_ACCESS_SYSBUS
RISCV_MEM_ACCESS_ABSTRACT
riscv_halt_reason
RISCV_HALT_INTERRUPT
RISCV_HALT_BREAKPOINT
RISCV_HALT_SINGLESTEP
RISCV_HALT_TRIGGER
RISCV_HALT_UNKNOWN
RISCV_HALT_GROUP
RISCV_HALT_ERROR
riscv_reg_info_t
target
custom_number
#define RISCV_SAMPLE_BUF_TIMESTAMP_BEFORE
#define RISCV_SAMPLE_BUF_TIMESTAMP_AFTER
riscv_sample_buf
buf
used
size
riscv_sample_config_t
enabled
<anonymous struct>
enabled
address
size_bytes
bucket
range_list_t
list
low
high
name
riscv_info
common_magic
dtm_version
cmd_ctx
version_specific
current_hartid
reg_names
xlen
misa
vlenb
trigger_count
trigger_unique_id
debug_buffer_size
impebreak
triggers_enumerated
reset_delays_wait
prepped
selected
get_register
set_register
get_register_buf
set_register_buf
select_current_hart
is_halted
resume_go
step_current_hart
on_halt
resume_prep
halt_prep
halt_go
on_step
halt_reason
write_debug_buffer
read_debug_buffer
execute_debug_buffer
dmi_write_u64_bits
fill_dmi_write_u64
fill_dmi_read_u64
fill_dmi_nop_u64
authdata_read
authdata_write
dmi_read
dmi_write
sample_memory
read_memory
hart_count
data_bits
print_info
vector_uint8
vector_uint16
vector_uint32
vector_uint64
vector_uint128
type_uint8_vector
type_uint16_vector
type_uint32_vector
type_uint64_vector
type_uint128_vector
vector_fields
vector_union
type_vector
manual_hwbp_set
mem_access_methods
mem_access_progbuf_warn
mem_access_sysbus_warn
mem_access_abstract_warn
expose_csr
expose_custom
sample_config
sample_buf
riscv_print_info_line(struct command_invocation *, const char *, const char *, unsigned int);
riscv_bscan_tunneled_scan_context_t
tunneled_dr_width
tunneled_dr
virt2phys_info_t
name
level
va_bits
pte_shift
vpn_shift
vpn_mask
pte_ppn_shift
pte_ppn_mask
pa_ppn_shift
pa_ppn_mask
riscv_command_timeout_sec;
riscv_reset_timeout_sec;
riscv_enable_virtual;
riscv_ebreakm;
riscv_ebreaks;
riscv_ebreaku;
riscv_info(const struct target *);
riscv_info(const struct target *)
#define RISCV_INFO
is_riscv(const struct riscv_info *)
select_dtmcontrol;
select_dbus;
select_idcode;
bscan_tunneled_select_dmi;
bscan_tunneled_select_dmi_num_fields;
bscan_tunnel_type_t
BSCAN_TUNNEL_NESTED_TAP
BSCAN_TUNNEL_DATA_REGISTER
bscan_tunnel_ir_width;
dtmcontrol_scan_via_bscan(struct target *, uint32_t);
select_dmi_via_bscan(struct target *);
riscv_openocd_poll(struct target *);
riscv_halt(struct target *);
riscv_openocd_step(struct target *, int, target_addr_t, int);
riscv_openocd_assert_reset(struct target *);
riscv_openocd_deassert_reset(struct target *);
riscv_supports_extension(struct target *, char);
riscv_xlen(const struct target *);
riscv_xlen_of_hart(const struct target *);
riscv_set_current_hartid(struct target *, int);
riscv_select_current_hart(struct target *);
riscv_current_hartid(const struct target *);
riscv_count_harts(struct target *);
riscv_set_register(struct target *, enum gdb_regno, riscv_reg_t);
riscv_get_register(struct target *, riscv_reg_t *, enum gdb_regno);
riscv_is_halted(struct target *);
riscv_debug_buffer_size(struct target *);
riscv_read_debug_buffer(struct target *, int);
riscv_write_debug_buffer(struct target *, int, riscv_insn_t);
riscv_execute_debug_buffer(struct target *);
riscv_fill_dmi_nop_u64(struct target *, char *);
riscv_fill_dmi_write_u64(struct target *, char *, int, uint64_t);
riscv_fill_dmi_read_u64(struct target *, char *, int);
riscv_dmi_write_u64_bits(struct target *);
riscv_enumerate_triggers(struct target *);
riscv_add_watchpoint(struct target *, struct watchpoint *);
riscv_remove_watchpoint(struct target *, struct watchpoint *);
riscv_init_registers(struct target *);
riscv_semihosting_init(struct target *);
riscv_semihosting(struct target *, int *);
riscv_add_bscan_tunneled_scan(struct target *, struct scan_field *, riscv_bscan_tunneled_scan_context_t *);
riscv_read_by_any_size(struct target *, target_addr_t, uint32_t, uint8_t *);
riscv_write_by_any_size(struct target *, target_addr_t, uint32_t, uint8_t *);