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

Go to the source code of this file.

Macros

#define RESET_TIMEOUT   5000 /* 5s */
 
#define STEP_TIMEOUT   1000 /* 1s */
 

Functions

 COMMAND_HANDLER (handle_esirisc_cache_arch_command)
 
 COMMAND_HANDLER (handle_esirisc_flush_caches_command)
 
 COMMAND_HANDLER (handle_esirisc_hwdc_command)
 
static int esirisc_add_breakpoint (struct target *target, struct breakpoint *breakpoint)
 
static int esirisc_add_breakpoints (struct target *target)
 
static int esirisc_add_watchpoint (struct target *target, struct watchpoint *watchpoint)
 
static int esirisc_add_watchpoints (struct target *target)
 
static int esirisc_arch_state (struct target *target)
 
static int esirisc_assert_reset (struct target *target)
 
static struct reg_cacheesirisc_build_reg_cache (struct target *target)
 
static int esirisc_checksum_memory (struct target *target, target_addr_t address, uint32_t count, uint32_t *checksum)
 
static int esirisc_deassert_reset (struct target *target)
 
static int esirisc_debug_enable (struct target *target)
 
static int esirisc_debug_entry (struct target *target)
 
static int esirisc_debug_reset (struct target *target)
 
static int esirisc_debug_step (struct target *target)
 
static void esirisc_deinit_target (struct target *target)
 
static int esirisc_disable_interrupts (struct target *target)
 
static int esirisc_disable_step (struct target *target)
 
static int esirisc_enable_step (struct target *target)
 
static int esirisc_examine (struct target *target)
 
static int esirisc_find_hwdc_mask (const char *name)
 
static int esirisc_flush_caches (struct target *target)
 
static void esirisc_free_reg_cache (struct target *target)
 
static const char * esirisc_get_gdb_arch (const struct target *target)
 
static int esirisc_get_gdb_reg_list (struct target *target, struct reg **reg_list[], int *reg_list_size, enum target_register_class reg_class)
 
static int esirisc_get_reg (struct reg *reg)
 
static int esirisc_halt (struct target *target)
 
static int esirisc_identify (struct target *target)
 
static int esirisc_init_target (struct command_context *cmd_ctx, struct target *target)
 
static int esirisc_next_breakpoint (struct target *target)
 
static int esirisc_next_watchpoint (struct target *target)
 
static int esirisc_poll (struct target *target)
 
static int esirisc_read_csr (struct reg *reg)
 
static int esirisc_read_memory (struct target *target, target_addr_t address, uint32_t size, uint32_t count, uint8_t *buffer)
 
static int esirisc_read_reg (struct reg *reg)
 
static int esirisc_remove_breakpoint (struct target *target, struct breakpoint *breakpoint)
 
static int esirisc_remove_breakpoints (struct target *target)
 
static int esirisc_remove_watchpoint (struct target *target, struct watchpoint *watchpoint)
 
static int esirisc_remove_watchpoints (struct target *target)
 
static int esirisc_reset_entry (struct target *target)
 
static int esirisc_restore_context (struct target *target)
 
static int esirisc_restore_hwdc (struct target *target)
 
static int esirisc_restore_interrupts (struct target *target)
 
static int esirisc_resume (struct target *target, int current, target_addr_t address, int handle_breakpoints, int debug_execution)
 
static int esirisc_resume_or_step (struct target *target, int current, target_addr_t address, int handle_breakpoints, int debug_execution, bool step)
 
static int esirisc_save_context (struct target *target)
 
static int esirisc_save_interrupts (struct target *target)
 
static int esirisc_set_reg (struct reg *reg, uint8_t *buf)
 
static int esirisc_step (struct target *target, int current, target_addr_t address, int handle_breakpoints)
 
static int esirisc_target_create (struct target *target, Jim_Interp *interp)
 
static int esirisc_wait_debug_active (struct esirisc_common *esirisc, int ms)
 
static int esirisc_write_csr (struct reg *reg)
 
static int esirisc_write_memory (struct target *target, target_addr_t address, uint32_t size, uint32_t count, const uint8_t *buffer)
 
static int esirisc_write_reg (struct reg *reg)
 

Variables

static const struct command_registration esirisc_any_command_handlers []
 
static const struct command_registration esirisc_command_handlers []
 
struct {
   uint8_t   bank
 
   uint8_t   csr
 
   const char *   group
 
   const char *   name
 
   enum esirisc_reg_num   number
 
   enum reg_type   type
 
esirisc_csrs []
 
static const char *const esirisc_exception_strings []
 
static const struct command_registration esirisc_exec_command_handlers []
 
struct {
   int   mask
 
   const char *   name
 
esirisc_hwdc_masks []
 
static const struct reg_arch_type esirisc_reg_type
 
struct {
   const char *   group
 
   const char *   name
 
   enum esirisc_reg_num   number
 
   enum reg_type   type
 
esirisc_regs []
 
struct target_type esirisc_target
 

Macro Definition Documentation

◆ RESET_TIMEOUT

#define RESET_TIMEOUT   5000 /* 5s */

Definition at line 26 of file esirisc.c.

◆ STEP_TIMEOUT

#define STEP_TIMEOUT   1000 /* 1s */

Definition at line 27 of file esirisc.c.

Function Documentation

◆ COMMAND_HANDLER() [1/3]

◆ COMMAND_HANDLER() [2/3]

COMMAND_HANDLER ( handle_esirisc_flush_caches_command  )

◆ COMMAND_HANDLER() [3/3]

◆ esirisc_add_breakpoint()

◆ esirisc_add_breakpoints()

static int esirisc_add_breakpoints ( struct target target)
static

◆ esirisc_add_watchpoint()

◆ esirisc_add_watchpoints()

static int esirisc_add_watchpoints ( struct target target)
static

◆ esirisc_arch_state()

◆ esirisc_assert_reset()

◆ esirisc_build_reg_cache()

◆ esirisc_checksum_memory()

static int esirisc_checksum_memory ( struct target target,
target_addr_t  address,
uint32_t  count,
uint32_t *  checksum 
)
static

Definition at line 451 of file esirisc.c.

References ERROR_FAIL.

◆ esirisc_deassert_reset()

◆ esirisc_debug_enable()

◆ esirisc_debug_entry()

◆ esirisc_debug_reset()

◆ esirisc_debug_step()

◆ esirisc_deinit_target()

static void esirisc_deinit_target ( struct target target)
static

◆ esirisc_disable_interrupts()

static int esirisc_disable_interrupts ( struct target target)
static

◆ esirisc_disable_step()

◆ esirisc_enable_step()

static int esirisc_enable_step ( struct target target)
static

◆ esirisc_examine()

◆ esirisc_find_hwdc_mask()

static int esirisc_find_hwdc_mask ( const char *  name)
static

Definition at line 1750 of file esirisc.c.

References ARRAY_SIZE, esirisc_hwdc_masks, mask, and name.

Referenced by COMMAND_HANDLER().

◆ esirisc_flush_caches()

◆ esirisc_free_reg_cache()

static void esirisc_free_reg_cache ( struct target target)
static

◆ esirisc_get_gdb_arch()

static const char* esirisc_get_gdb_arch ( const struct target target)
static

◆ esirisc_get_gdb_reg_list()

static int esirisc_get_gdb_reg_list ( struct target target,
struct reg **  reg_list[],
int *  reg_list_size,
enum target_register_class  reg_class 
)
static

◆ esirisc_get_reg()

static int esirisc_get_reg ( struct reg reg)
static

◆ esirisc_halt()

◆ esirisc_identify()

◆ esirisc_init_target()

static int esirisc_init_target ( struct command_context cmd_ctx,
struct target target 
)
static

Definition at line 1603 of file esirisc.c.

References ERROR_OK, HWDC_D, HWDC_E, HWDC_R, esirisc_common::hwdc_save, and target_to_esirisc().

◆ esirisc_next_breakpoint()

static int esirisc_next_breakpoint ( struct target target)
static

◆ esirisc_next_watchpoint()

static int esirisc_next_watchpoint ( struct target target)
static

◆ esirisc_poll()

◆ esirisc_read_csr()

◆ esirisc_read_memory()

static int esirisc_read_memory ( struct target target,
target_addr_t  address,
uint32_t  size,
uint32_t  count,
uint8_t *  buffer 
)
static

◆ esirisc_read_reg()

◆ esirisc_remove_breakpoint()

static int esirisc_remove_breakpoint ( struct target target,
struct breakpoint breakpoint 
)
static

◆ esirisc_remove_breakpoints()

static int esirisc_remove_breakpoints ( struct target target)
static

◆ esirisc_remove_watchpoint()

static int esirisc_remove_watchpoint ( struct target target,
struct watchpoint watchpoint 
)
static

◆ esirisc_remove_watchpoints()

◆ esirisc_reset_entry()

◆ esirisc_restore_context()

static int esirisc_restore_context ( struct target target)
static

◆ esirisc_restore_hwdc()

◆ esirisc_restore_interrupts()

static int esirisc_restore_interrupts ( struct target target)
static

◆ esirisc_resume()

static int esirisc_resume ( struct target target,
int  current,
target_addr_t  address,
int  handle_breakpoints,
int  debug_execution 
)
static

Definition at line 921 of file esirisc.c.

References breakpoint::address, esirisc_resume_or_step(), and LOG_DEBUG.

◆ esirisc_resume_or_step()

◆ esirisc_save_context()

static int esirisc_save_context ( struct target target)
static

◆ esirisc_save_interrupts()

static int esirisc_save_interrupts ( struct target target)
static

◆ esirisc_set_reg()

static int esirisc_set_reg ( struct reg reg,
uint8_t *  buf 
)
static

Definition at line 1401 of file esirisc.c.

◆ esirisc_step()

static int esirisc_step ( struct target target,
int  current,
target_addr_t  address,
int  handle_breakpoints 
)
static

Definition at line 930 of file esirisc.c.

References breakpoint::address, esirisc_resume_or_step(), and LOG_DEBUG.

◆ esirisc_target_create()

static int esirisc_target_create ( struct target target,
Jim_Interp *  interp 
)
static

◆ esirisc_wait_debug_active()

static int esirisc_wait_debug_active ( struct esirisc_common esirisc,
int  ms 
)
static

◆ esirisc_write_csr()

◆ esirisc_write_memory()

static int esirisc_write_memory ( struct target target,
target_addr_t  address,
uint32_t  size,
uint32_t  count,
const uint8_t *  buffer 
)
static

◆ esirisc_write_reg()

Variable Documentation

◆ bank

uint8_t bank

Definition at line 135 of file esirisc.c.

Referenced by _sam3_probe(), aduc702x_build_sector_list(), aduc702x_erase(), aduc702x_write(), aduc702x_write_block(), aduc702x_write_single(), aducm360_build_sector_list(), aducm360_erase(), aducm360_write(), aducm360_write_block(), aducm360_write_block_async(), aducm360_write_block_sync(), aducm360_write_modified(), ambiqmicro_erase(), ambiqmicro_mass_erase(), ambiqmicro_otp_program(), ambiqmicro_probe(), ambiqmicro_protect(), ambiqmicro_protect_check(), ambiqmicro_read_part_info(), ambiqmicro_write(), ambiqmicro_write_block(), at91sam7_erase(), at91sam7_erase_check(), at91sam7_flash_command(), at91sam7_probe(), at91sam7_protect(), at91sam7_protect_check(), at91sam7_read_clock_info(), at91sam7_read_part_info(), at91sam7_set_flash_mode(), at91sam7_wait_status_busy(), at91sam7_write(), ath79_auto_probe(), ath79_erase(), ath79_erase_sector(), ath79_probe(), ath79_protect(), ath79_read(), ath79_read_buffer(), ath79_spi_bitbang_bytes(), ath79_spi_bitbang_chunk(), ath79_spi_bitbang_prepare(), ath79_write(), ath79_write_buffer(), ath79_write_enable(), ath79_write_page(), avrf_auto_probe(), avrf_erase(), avrf_info(), avrf_mass_erase(), avrf_probe(), avrf_write(), bluenrgx_auto_probe(), bluenrgx_erase(), bluenrgx_get_flash_reg(), bluenrgx_probe(), bluenrgx_read_flash_reg(), bluenrgx_write(), bluenrgx_write_flash_reg(), calculate_number_of_sectors(), cc26xx_auto_probe(), cc26xx_erase(), cc26xx_init(), cc26xx_mass_erase(), cc26xx_probe(), cc26xx_quit(), cc26xx_wait_algo_done(), cc26xx_write(), cc3220sf_auto_probe(), cc3220sf_erase(), cc3220sf_mass_erase(), cc3220sf_probe(), cc3220sf_write(), cfi_auto_probe(), cfi_command(), cfi_command_val(), cfi_erase(), cfi_fixup(), cfi_fixup_0002_erase_regions(), cfi_fixup_0002_polling_bits(), cfi_fixup_0002_unlock_addresses(), cfi_fixup_0002_write_buffer(), cfi_fixup_non_cfi(), cfi_fixup_reversed_erase_regions(), cfi_flash_address(), cfi_flash_bank_cmd(), cfi_get_info(), cfi_get_u8(), cfi_intel_clear_status_register(), cfi_intel_erase(), cfi_intel_info(), cfi_intel_protect(), cfi_intel_protect_check(), cfi_intel_wait_status_busy(), cfi_intel_write_block(), cfi_intel_write_word(), cfi_intel_write_words(), cfi_probe(), cfi_protect(), cfi_protect_check(), cfi_query_string(), cfi_query_u16(), cfi_query_u32(), cfi_query_u8(), cfi_read(), cfi_read_0002_pri_ext(), cfi_read_atmel_pri_ext(), cfi_read_intel_pri_ext(), cfi_read_spansion_pri_ext(), cfi_reset(), cfi_send_command(), cfi_spansion_erase(), cfi_spansion_info(), cfi_spansion_protect_check(), cfi_spansion_unlock_seq(), cfi_spansion_wait_status_busy(), cfi_spansion_write_block(), cfi_spansion_write_block_mips(), cfi_spansion_write_word(), cfi_spansion_write_words(), cfi_target_read_memory(), cfi_target_write_memory(), cfi_write(), cfi_write_word(), cfi_write_words(), COMMAND_HANDLER(), COMMAND_HELPER(), default_flash_blank_check(), default_flash_free_driver_priv(), default_flash_mem_blank_check(), default_flash_read(), default_flash_verify(), dsp5680xx_build_sector_list(), dsp5680xx_flash_erase(), dsp5680xx_flash_protect(), dsp5680xx_flash_protect_check(), dsp5680xx_flash_write(), efm32x_auto_probe(), efm32x_erase(), efm32x_erase_page(), efm32x_free_driver_priv(), efm32x_get_flash_size(), efm32x_get_page_lock(), efm32x_get_part_family(), efm32x_get_part_num(), efm32x_get_prod_rev(), efm32x_get_ram_size(), efm32x_msc_lock(), efm32x_priv_write(), efm32x_probe(), efm32x_protect(), efm32x_protect_check(), efm32x_read_info(), efm32x_read_lock_data(), efm32x_read_reg_u32(), efm32x_set_page_lock(), efm32x_set_reg_bits(), efm32x_set_wren(), efm32x_wait_status(), efm32x_write(), efm32x_write_block(), efm32x_write_lock_data(), efm32x_write_only_lockbits(), efm32x_write_reg_u32(), efm32x_write_word(), em357_auto_probe(), em357_erase(), em357_erase_options(), em357_get_flash_status(), em357_mass_erase(), em357_probe(), em357_protect(), em357_protect_check(), em357_read_options(), em357_wait_status_busy(), em357_write(), em357_write_block(), em357_write_options(), eneispi_erase_sector(), eneispif_auto_probe(), eneispif_erase(), eneispif_probe(), eneispif_protect(), eneispif_read_flash_id(), eneispif_read_reg(), eneispif_wait(), eneispif_write(), eneispif_write_reg(), erase_command(), esirisc_flash_auto_probe(), esirisc_flash_check_status(), esirisc_flash_clear_status(), esirisc_flash_control(), esirisc_flash_disable_protect(), esirisc_flash_enable_protect(), esirisc_flash_erase(), esirisc_flash_fill_pb(), esirisc_flash_info(), esirisc_flash_init(), esirisc_flash_mass_erase(), esirisc_flash_num_cycles(), esirisc_flash_probe(), esirisc_flash_recall(), esirisc_flash_ref_erase(), esirisc_flash_unlock(), esirisc_flash_wait(), esirisc_flash_write(), esirisc_jtag_read_csr(), esirisc_jtag_write_csr(), faux_erase(), faux_write(), fespi_auto_probe(), fespi_disable_hw_mode(), fespi_enable_hw_mode(), fespi_erase(), fespi_erase_sector(), fespi_probe(), fespi_protect(), fespi_read_flash_id(), fespi_read_reg(), fespi_rx(), fespi_set_dir(), fespi_tx(), fespi_txwm_wait(), fespi_wip(), fespi_write(), fespi_write_reg(), fill_sector_table(), find_sfdp_dummy(), flash_bank_add(), FLASH_BANK_COMMAND_HANDLER(), flash_driver_erase(), flash_driver_protect(), flash_driver_read(), flash_driver_unprotect(), flash_driver_verify(), flash_driver_write(), flash_free_all_banks(), flash_write_align_end(), flash_write_align_start(), flash_write_check_gap(), fm3_auto_probe(), fm3_chip_erase(), fm3_erase(), fm3_probe(), fm3_write_block(), fm4_auto_probe(), fm4_flash_erase(), fm4_flash_write(), fm4_get_info_command(), fm4_probe(), fpga_configure(), get_ambiqmicro_info(), get_at91sam7_info(), get_efm32x_info(), get_flash_bank_by_name(), get_flash_bank_by_name_noprobe(), get_flash_bank_by_num(), get_info(), get_lpc2000_info(), get_lpc2000_part_id(), get_lpcspifi_info(), get_mdr_info(), get_niietcm4_info(), get_psoc4_info(), get_sam3_bank_private(), get_sam4_bank_private(), get_stellaris_info(), get_stm32l4_bank_type_str(), get_stm32l4_info(), get_stm32l4_rev_str(), get_stm32x_info(), get_stmqspi_info(), get_stmsmi_info(), get_tms470_info(), get_w600_info(), gucr_num(), is_flash_protected(), is_mflash_bank(), is_sflash_bank(), is_wflash_bank(), isc_adr_shift(), isc_clear_protect(), isc_data_read_out(), isc_enter(), isc_erase_sectors(), isc_leave(), isc_program_ccb(), isc_program_data_page(), isc_program_register(), isc_program_singe_revision_sucr(), isc_program_single_revision_btc(), isc_read_ccb(), isc_read_register(), isc_set_data_done(), isc_set_protect(), isc_set_register(), isc_wait_erase_program(), jep106_table_manufacturer(), jtagspi_auto_probe(), jtagspi_bulk_erase(), jtagspi_cmd(), jtagspi_erase(), jtagspi_page_write(), jtagspi_probe(), jtagspi_protect(), jtagspi_read(), jtagspi_read_status(), jtagspi_sector_erase(), jtagspi_wait(), jtagspi_write(), jtagspi_write_enable(), kinetis_auto_probe(), kinetis_blank_check(), kinetis_create_missing_banks(), kinetis_erase(), kinetis_fill_fcf(), kinetis_free_driver_priv(), kinetis_info(), kinetis_ke_auto_probe(), kinetis_ke_blank_check(), kinetis_ke_erase(), kinetis_ke_ftmrx_command(), kinetis_ke_info(), kinetis_ke_prepare_flash(), kinetis_ke_probe(), kinetis_ke_protect(), kinetis_ke_protect_check(), kinetis_ke_write(), kinetis_ke_write_words(), kinetis_probe(), kinetis_protect(), kinetis_protect_check(), kinetis_write(), kinetis_write_block(), kinetis_write_inner(), kinetis_write_sections(), lpc2000_auto_probe_flash(), lpc2000_build_sector_list(), lpc2000_erase(), lpc2000_erase_check(), lpc2000_iap_blank_check(), lpc2000_iap_call(), lpc2000_iap_working_area_init(), lpc2000_probe(), lpc2000_write(), lpc288x_set_flash_clk(), lpc2900_address2sector(), lpc2900_erase(), lpc2900_erase_check(), lpc2900_is_ready(), lpc2900_probe(), lpc2900_read_security_status(), lpc2900_run_bist128(), lpc2900_setup(), lpc2900_wait_status(), lpc2900_write(), lpc2900_write_index_page(), lpcspifi_auto_probe(), lpcspifi_bulk_erase(), lpcspifi_erase(), lpcspifi_probe(), lpcspifi_protect(), lpcspifi_read_flash_id(), lpcspifi_set_hw_mode(), lpcspifi_set_sw_mode(), lpcspifi_write(), lpcspifi_write_enable(), max32xxx_erase(), max32xxx_flash_op_post(), max32xxx_flash_op_pre(), max32xxx_mass_erase(), max32xxx_probe(), max32xxx_protect(), max32xxx_protect_check(), max32xxx_write(), max32xxx_write_block(), mb9bf_bank_setup(), mb9bf_probe(), mdr_auto_probe(), mdr_erase(), mdr_mass_erase(), mdr_probe(), mdr_read(), mdr_write(), mdr_write_block(), mrvlqspi_auto_probe(), mrvlqspi_block_erase(), mrvlqspi_bulk_erase(), mrvlqspi_fifo_flush(), mrvlqspi_flash_busy_status(), mrvlqspi_flash_erase(), mrvlqspi_flash_read(), mrvlqspi_flash_write(), mrvlqspi_get_info(), mrvlqspi_get_reg(), mrvlqspi_probe(), mrvlqspi_read_byte(), mrvlqspi_read_id(), mrvlqspi_set_addr(), mrvlqspi_set_conf(), mrvlqspi_set_din_cnt(), mrvlqspi_set_hdr_cnt(), mrvlqspi_set_instr(), mrvlqspi_set_ss_state(), mrvlqspi_set_write_status(), mrvlqspi_start_transfer(), mrvlqspi_stop_transfer(), msp432_auto_probe(), msp432_erase(), msp432_info(), msp432_init(), msp432_mass_erase(), msp432_probe(), msp432_quit(), msp432_write(), niietcm4_auto_probe(), niietcm4_dump_uflash_page(), niietcm4_erase(), niietcm4_load_uflash_page(), niietcm4_mass_erase(), niietcm4_opstatus_check(), niietcm4_probe(), niietcm4_probe_k1921vk01t(), niietcm4_protect(), niietcm4_protect_check(), niietcm4_uflash_page_erase(), niietcm4_uflash_protect(), niietcm4_uopstatus_check(), niietcm4_write(), niietcm4_write_block(), npcx_auto_probe(), npcx_chip_erase(), npcx_erase(), npcx_get_flash_id(), npcx_init(), npcx_probe(), npcx_quit(), npcx_write(), nrf51_protect_check_clenr0(), nrf51_protect_clenr0(), nrf52_protect_check_bprot(), nrf5_auto_probe(), nrf5_bank_is_probed(), nrf5_chip_is_probed(), nrf5_erase(), nrf5_erase_page(), nrf5_free_driver_priv(), nrf5_info(), nrf5_probe(), nrf5_probe_chip(), nrf5_protect(), nrf5_protect_check(), nrf5_setup_bank(), nrf5_write(), numicro_auto_probe(), numicro_erase(), numicro_get_flash_size(), numicro_probe(), numicro_protect_check(), numicro_write(), numicro_writeblock(), ocl_auto_probe(), ocl_erase(), ocl_probe(), ocl_write(), octospi_cmd(), pic32mx_auto_probe(), pic32mx_erase(), pic32mx_get_flash_status(), pic32mx_info(), pic32mx_nvm_exec(), pic32mx_probe(), pic32mx_protect(), pic32mx_protect_check(), pic32mx_wait_status_busy(), pic32mx_write(), pic32mx_write_block(), pic32mx_write_word(), poll_busy(), product_name(), psoc4_auto_probe(), psoc4_erase(), psoc4_flash_prepare(), psoc4_get_silicon_id(), psoc4_mass_erase(), psoc4_probe(), psoc4_protect(), psoc4_protect_check(), psoc4_sysreq(), psoc4_write(), psoc5lp_auto_probe(), psoc5lp_eeprom_auto_probe(), psoc5lp_eeprom_erase(), psoc5lp_eeprom_get_info_command(), psoc5lp_eeprom_probe(), psoc5lp_eeprom_write(), psoc5lp_erase(), psoc5lp_erase_check(), psoc5lp_get_info_command(), psoc5lp_nvl_auto_probe(), psoc5lp_nvl_erase_check(), psoc5lp_nvl_get_info_command(), psoc5lp_nvl_probe(), psoc5lp_nvl_read(), psoc5lp_nvl_write(), psoc5lp_probe(), psoc5lp_protect_check(), psoc5lp_write(), psoc6_auto_probe(), psoc6_erase(), psoc6_erase_row(), psoc6_erase_sector(), psoc6_get_info(), psoc6_probe(), psoc6_program(), psoc6_program_row(), psoc6_protect(), psoc6_protect_check(), qn908x_auto_probe(), qn908x_erase(), qn908x_get_info(), qn908x_probe(), qn908x_protect(), qn908x_protect_check(), qn908x_read_page_lock(), qn908x_write(), qspi_erase_sector(), qspi_read_write_block(), qspi_verify(), qspi_write_enable(), read_flash_id(), read_sfdp_block(), read_status_reg(), read_write_data(), rp2040_finalize_stack_free(), rp2040_flash_auto_probe(), rp2040_flash_erase(), rp2040_flash_free_driver_priv(), rp2040_flash_probe(), rp2040_flash_write(), rp2040_stack_grab_and_prep(), rpchf_spansion_write_words(), rpchf_target_read_memory(), rpchf_target_write_memory(), rpchf_write(), rpchf_write_words(), rsl10_auto_probe(), rsl10_bank_is_probed(), rsl10_check_device(), rsl10_erase(), rsl10_free_driver_priv(), rsl10_get_probed_chip_if_halted(), rsl10_probe(), rsl10_protect(), rsl10_protect_check(), rsl10_write(), s6e2cc_bank_setup(), s6e2cc_probe(), s6e2dh_probe(), sam3_auto_probe(), sam3_erase(), sam3_probe(), sam3_protect(), sam3_protect_check(), sam3_write(), sam4_auto_probe(), sam4_erase(), sam4_info(), sam4_probe(), sam4_protect(), sam4_protect_check(), sam4_write(), sam4l_check_page_erased(), sam4l_erase(), sam4l_probe(), sam4l_protect(), sam4l_protect_check(), sam4l_write(), sam4l_write_page_partial(), samd_erase(), samd_probe(), samd_protect(), samd_protect_check(), samd_write(), same5_erase(), same5_probe(), same5_protect(), same5_protect_check(), same5_write(), samv_auto_probe(), samv_erase(), samv_get_device_id(), samv_get_info(), samv_probe(), samv_protect(), samv_protect_check(), samv_write(), set_mm_mode(), setup_bank(), setup_sector(), sh_qspi_auto_probe(), sh_qspi_cs_activate(), sh_qspi_cs_deactivate(), sh_qspi_erase(), sh_qspi_erase_sector(), sh_qspi_get_info(), sh_qspi_init(), sh_qspi_probe(), sh_qspi_protect(), sh_qspi_read(), sh_qspi_upload_helper(), sh_qspi_wait_for_bit(), sh_qspi_write(), sh_qspi_write_enable(), sh_qspi_xfer_common(), sim3x_auto_probe(), sim3x_erase_page(), sim3x_flash_erase(), sim3x_flash_info(), sim3x_flash_lock_check(), sim3x_flash_protect(), sim3x_flash_protect_check(), sim3x_flash_write(), sim3x_init(), sim3x_probe(), sim3x_read_deviceid(), sim3x_read_info(), sim3x_write_block(), slow_fespi_write_buffer(), smi_erase_sector(), smi_write_buffer(), smi_write_enable(), spi_sfdp(), stellaris_erase(), stellaris_mass_erase(), stellaris_probe(), stellaris_protect(), stellaris_protect_check(), stellaris_read_clock_info(), stellaris_read_part_info(), stellaris_set_flash_timing(), stellaris_write(), stellaris_write_block(), stm32l4_auto_probe(), stm32l4_erase(), stm32l4_get_all_wrpxy(), stm32l4_get_flash_cr_with_lock_index(), stm32l4_get_flash_reg(), stm32l4_get_flash_reg_by_index(), stm32l4_get_one_wrpxy(), stm32l4_is_otp(), stm32l4_mass_erase(), stm32l4_otp_enable(), stm32l4_otp_is_enabled(), stm32l4_perform_obl_launch(), stm32l4_probe(), stm32l4_protect(), stm32l4_protect_check(), stm32l4_protect_same_bank(), stm32l4_read_flash_reg(), stm32l4_read_flash_reg_by_index(), stm32l4_read_idcode(), stm32l4_set_secbb(), stm32l4_sync_rdp_tzen(), stm32l4_unlock_option_reg(), stm32l4_unlock_reg(), stm32l4_wait_status_busy(), stm32l4_write(), stm32l4_write_all_wrpxy(), stm32l4_write_block(), stm32l4_write_block_without_loader(), stm32l4_write_flash_reg(), stm32l4_write_flash_reg_by_index(), stm32l4_write_one_wrpxy(), stm32l4_write_option(), stm32lx_auto_probe(), stm32lx_enable_write_half_page(), stm32lx_erase(), stm32lx_erase_sector(), stm32lx_get_flash_status(), stm32lx_lock(), stm32lx_lock_program_memory(), stm32lx_mass_erase(), stm32lx_obl_launch(), stm32lx_probe(), stm32lx_protect_check(), stm32lx_unlock(), stm32lx_unlock_options_bytes(), stm32lx_unlock_program_memory(), stm32lx_update_part_info(), stm32lx_wait_until_bsy_clear(), stm32lx_wait_until_bsy_clear_timeout(), stm32lx_write(), stm32lx_write_half_pages(), stm32x_auto_probe(), stm32x_check_operation_supported(), stm32x_erase(), stm32x_erase_options(), stm32x_get_device_id(), stm32x_get_flash_reg(), stm32x_get_flash_size(), stm32x_get_flash_status(), stm32x_get_info(), stm32x_is_otp(), stm32x_is_otp_unlocked(), stm32x_lock_option_reg(), stm32x_lock_reg(), stm32x_mass_erase(), stm32x_modify_option(), stm32x_otp_disable(), stm32x_otp_enable(), stm32x_otp_is_f7(), stm32x_otp_protect(), stm32x_otp_read_protect(), stm32x_probe(), stm32x_protect(), stm32x_protect_check(), stm32x_read_flash_reg(), stm32x_read_id_code(), stm32x_read_options(), stm32x_set_rdp(), stm32x_unlock_option_reg(), stm32x_unlock_reg(), stm32x_wait_flash_op_queue(), stm32x_wait_status_busy(), stm32x_write(), stm32x_write_block(), stm32x_write_block_async(), stm32x_write_block_riscv(), stm32x_write_flash_reg(), stm32x_write_option(), stm32x_write_options(), stmqspi_abort(), stmqspi_auto_probe(), stmqspi_blank_check(), stmqspi_erase(), stmqspi_probe(), stmqspi_protect(), stmqspi_read(), stmqspi_verify(), stmqspi_write(), stmsmi_auto_probe(), stmsmi_erase(), stmsmi_probe(), stmsmi_protect(), stmsmi_write(), str7x_build_block_list(), str7x_erase(), str7x_get_flash_adr(), str7x_protect(), str7x_protect_check(), str7x_result(), str7x_waitbusy(), str7x_write(), str7x_write_block(), str9x_build_block_list(), str9x_erase(), str9x_protect(), str9x_protect_check(), str9x_write(), str9x_write_block(), str9xpec_blank_check(), str9xpec_build_block_list(), str9xpec_erase(), str9xpec_erase_area(), str9xpec_erase_check(), str9xpec_isc_disable(), str9xpec_isc_enable(), str9xpec_lock_device(), str9xpec_protect(), str9xpec_protect_check(), str9xpec_read_config(), str9xpec_set_address(), str9xpec_unlock_device(), str9xpec_write(), str9xpec_write_options(), sucr_num(), swm050_erase(), swm050_mass_erase(), swm050_write(), tms470_auto_probe(), tms470_erase(), tms470_erase_check(), tms470_flash_initialize_internal_state_machine(), tms470_flash_status(), tms470_probe(), tms470_protect(), tms470_protect_check(), tms470_read_part_info(), tms470_unlock_flash(), tms470_write(), virtual_auto_probe(), virtual_blank_check(), virtual_erase(), virtual_get_master_bank(), virtual_info(), virtual_probe(), virtual_protect(), virtual_protect_check(), virtual_update_bank_info(), virtual_write(), w600_auto_probe(), w600_erase(), w600_get_delay(), w600_get_flash_id(), w600_probe(), w600_start(), w600_start_do(), w600_write(), w600_write_disable(), w600_write_enable(), wait_till_ready(), xcf_auto_probe(), xcf_erase(), xcf_erase_check(), xcf_info(), xcf_probe(), xcf_protect(), xcf_protect_check(), xcf_read(), xcf_write(), xds110_legacy_read_reg(), xds110_legacy_write_reg(), xmc1xxx_auto_probe(), xmc1xxx_erase(), xmc1xxx_erase_check(), xmc1xxx_get_info_command(), xmc1xxx_probe(), xmc1xxx_protect_check(), xmc1xxx_write(), xmc4xxx_clear_flash_status(), xmc4xxx_enter_page_mode(), xmc4xxx_erase(), xmc4xxx_erase_sector(), xmc4xxx_flash_protect(), xmc4xxx_flash_unprotect(), xmc4xxx_get_flash_status(), xmc4xxx_get_info_command(), xmc4xxx_get_sector_start_addr(), xmc4xxx_load_bank_layout(), xmc4xxx_probe(), xmc4xxx_protect(), xmc4xxx_protect_check(), xmc4xxx_temp_unprotect(), xmc4xxx_wait_status_busy(), xmc4xxx_write(), xmc4xxx_write_command_sequence(), and xmc4xxx_write_page().

◆ csr

◆ esirisc_any_command_handlers

const struct command_registration esirisc_any_command_handlers[]
static
Initial value:
= {
{
.name = "cache_arch",
.handler = handle_esirisc_cache_arch_command,
.mode = COMMAND_ANY,
.help = "configure cache architecture",
.usage = "['harvard'|'von_neumann']",
},
{
.name = "hwdc",
.handler = handle_esirisc_hwdc_command,
.mode = COMMAND_ANY,
.help = "configure hardware debug control",
.usage = "['all'|'none'|mask ...]",
},
{
},
{
},
}
#define COMMAND_REGISTRATION_DONE
Use this as the last entry in an array of command_registration records.
Definition: command.h:253
@ COMMAND_ANY
Definition: command.h:42
static const struct command_registration esirisc_exec_command_handlers[]
Definition: esirisc.c:1789
const struct command_registration esirisc_trace_command_handlers[]
const struct command_registration * chain
If non-NULL, the commands in chain will be registered in the same context and scope of this registrat...
Definition: command.h:249

Definition at line 1759 of file esirisc.c.

◆ esirisc_command_handlers

const struct command_registration esirisc_command_handlers[]
static
Initial value:
= {
{
.name = "esirisc",
.mode = COMMAND_ANY,
.help = "eSi-RISC command group",
.usage = "",
},
}
static const struct command_registration esirisc_any_command_handlers[]
Definition: esirisc.c:1800

Definition at line 1759 of file esirisc.c.

◆ 

const { ... } esirisc_csrs[]
Initial value:
= {
}
#define CSR_INTERRUPT_IS
Definition: esirisc_regs.h:130
#define CSR_INTERRUPT_IM
Definition: esirisc_regs.h:129
@ ESIRISC_IS
Definition: esirisc_regs.h:99
@ ESIRISC_IT
Definition: esirisc_regs.h:100
@ ESIRISC_CAS
Definition: esirisc_regs.h:89
@ ESIRISC_IM
Definition: esirisc_regs.h:98
@ ESIRISC_PC
Definition: esirisc_regs.h:88
@ ESIRISC_ECAS
Definition: esirisc_regs.h:94
@ ESIRISC_IP
Definition: esirisc_regs.h:97
@ ESIRISC_ETC
Definition: esirisc_regs.h:92
@ ESIRISC_TC
Definition: esirisc_regs.h:90
@ ESIRISC_EPC
Definition: esirisc_regs.h:93
@ ESIRISC_EID
Definition: esirisc_regs.h:95
@ ESIRISC_ED
Definition: esirisc_regs.h:96
@ ESIRISC_ETA
Definition: esirisc_regs.h:91
#define CSR_THREAD_ETA
Definition: esirisc_regs.h:119
#define CSR_INTERRUPT_IP
Definition: esirisc_regs.h:127
#define CSR_THREAD_ETC
Definition: esirisc_regs.h:120
#define CSR_THREAD
Definition: esirisc_regs.h:106
#define CSR_THREAD_ECAS
Definition: esirisc_regs.h:122
#define CSR_INTERRUPT
Definition: esirisc_regs.h:107
#define CSR_THREAD_EPC
Definition: esirisc_regs.h:121
#define CSR_INTERRUPT_IT
Definition: esirisc_regs.h:131
#define CSR_THREAD_ED
Definition: esirisc_regs.h:124
#define CSR_THREAD_EID
Definition: esirisc_regs.h:123
@ REG_TYPE_INT
Definition: register.h:21
@ REG_TYPE_CODE_PTR
Definition: register.h:33

Referenced by esirisc_build_reg_cache(), and esirisc_free_reg_cache().

◆ esirisc_exception_strings

const char* const esirisc_exception_strings[]
static

Definition at line 33 of file esirisc.c.

Referenced by esirisc_arch_state().

◆ esirisc_exec_command_handlers

const struct command_registration esirisc_exec_command_handlers[]
static
Initial value:
= {
{
.name = "flush_caches",
.handler = handle_esirisc_flush_caches_command,
.mode = COMMAND_EXEC,
.help = "flush instruction and data caches",
.usage = "",
},
}
@ COMMAND_EXEC
Definition: command.h:40

Definition at line 1759 of file esirisc.c.

◆ 

const { ... } esirisc_hwdc_masks[]
Initial value:
= {
{ "reset", HWDC_R },
{ "interrupt", HWDC_I },
{ "syscall", HWDC_S },
{ "error", HWDC_E },
{ "debug", HWDC_D },
}
#define HWDC_D
Definition: esirisc.h:57
#define HWDC_S
Definition: esirisc.h:55
#define HWDC_E
Definition: esirisc.h:56
#define HWDC_R
Definition: esirisc.h:53
#define HWDC_I
Definition: esirisc.h:54

Referenced by COMMAND_HANDLER(), and esirisc_find_hwdc_mask().

◆ esirisc_reg_type

const struct reg_arch_type esirisc_reg_type
static
Initial value:
= {
}
static int esirisc_set_reg(struct reg *reg, uint8_t *buf)
Definition: esirisc.c:1401
static int esirisc_get_reg(struct reg *reg)
Definition: esirisc.c:1387

Definition at line 1401 of file esirisc.c.

Referenced by esirisc_build_reg_cache().

◆ 

const { ... } esirisc_regs[]

◆ esirisc_target

struct target_type esirisc_target

Definition at line 1759 of file esirisc.c.

◆ group

const char* group

Definition at line 90 of file esirisc.c.

◆ mask

int mask

Definition at line 1741 of file esirisc.c.

Referenced by aarch64_check_state_one(), ap_poll_register(), arm11_step(), arm7_9_full_context(), arm7_9_restore_context(), arm7_9_set_breakpoint(), arm7_9_set_watchpoint(), arm7tdmi_load_word_regs(), arm7tdmi_read_core_regs(), arm7tdmi_read_core_regs_target_buffer(), arm7tdmi_store_word_regs(), arm7tdmi_write_core_regs(), arm9tdmi_load_word_regs(), arm9tdmi_read_core_regs(), arm9tdmi_read_core_regs_target_buffer(), arm9tdmi_store_word_regs(), arm9tdmi_write_core_regs(), arm_cti_mod_reg_bits(), armv8_get_pauth_mask(), armv8_set_dbgreg_bits(), buf_eq_mask(), buf_eq_trailing(), cfi_fixup_non_cfi(), clear_bit(), cmsis_dap_cmd_dap_swj_pins(), COMMAND_HANDLER(), cortex_a_wait_dscr_bits(), cortex_m_add_watchpoint(), cortex_m_endreset_event(), cortex_m_set_maskints(), cortex_m_set_watchpoint(), dap_dp_poll_register(), decode_dmi(), efm32x_get_page_lock(), efm32x_set_page_lock(), esirisc_find_hwdc_mask(), esp32s2_set_peri_reg_mask(), fa526_read_core_regs(), fa526_read_core_regs_target_buffer(), fa526_write_core_regs(), feroceon_read_core_regs(), feroceon_read_core_regs_target_buffer(), feroceon_write_core_regs(), gowin_check_status_flag(), jtag_check_value_mask(), jtag_examine_chain_match_tap(), kinetis_ke_mdm_poll_register(), kinetis_mdm_poll_register(), lattice_certus_load(), lattice_ecp2_3_erase_device(), lattice_ecp2_load(), lattice_ecp3_load(), lattice_verify_status_register_u32(), lattice_verify_status_register_u64(), lattice_verify_usercode(), lpc2900_wait_status(), qn908x_protect(), qn908x_update_reg(), riscv_address_translate(), samd_get_reservedmask(), samd_modify_user_row(), same5_modify_user_row_masked(), same5_protect(), set_bit(), sh_qspi_wait_for_bit(), stm32l4_write_option(), stm32x_modify_option(), str_to_buf(), test_iomux_settings(), usbtogpio_config(), usbtogpio_in(), usbtogpio_out(), usbtopoll_checkfail(), usbtopoll_checkok(), watchpoint_add(), and watchpoint_add_internal().

◆ name

const char* name

Definition at line 88 of file esirisc.c.

Referenced by COMMAND_HANDLER(), and esirisc_find_hwdc_mask().

◆ number

◆ type

enum reg_type type

Definition at line 88 of file esirisc.c.