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

Go to the source code of this file.

Macros

#define MIPS32_GDB_DUMMY_FP_REG   1
 
#define MIPS32_NUM_REGS   ARRAY_SIZE(mips32_regs)
 

Functions

 COMMAND_HANDLER (mips32_handle_cp0_command)
 MIPS32 targets expose command interface to manipulate CP0 registers. More...
 
 COMMAND_HANDLER (mips32_handle_scan_delay_command)
 
int mips32_arch_state (struct target *target)
 
int mips32_blank_check_memory (struct target *target, struct target_memory_check_block *blocks, int num_blocks, uint8_t erased_value)
 Checks whether a memory region is erased. More...
 
struct reg_cachemips32_build_reg_cache (struct target *target)
 
int mips32_checksum_memory (struct target *target, target_addr_t address, uint32_t count, uint32_t *checksum)
 
int mips32_configure_break_unit (struct target *target)
 
static int mips32_configure_dbs (struct target *target)
 
static int mips32_configure_ibs (struct target *target)
 
int mips32_enable_interrupts (struct target *target, int enable)
 
int mips32_examine (struct target *target)
 
static int mips32_get_core_reg (struct reg *reg)
 
int mips32_get_gdb_reg_list (struct target *target, struct reg **reg_list[], int *reg_list_size, enum target_register_class reg_class)
 
int mips32_init_arch_info (struct target *target, struct mips32_common *mips32, struct jtag_tap *tap)
 
int mips32_read_config_regs (struct target *target)
 
static int mips32_read_core_reg (struct target *target, unsigned int num)
 
int mips32_restore_context (struct target *target)
 
int mips32_run_algorithm (struct target *target, int num_mem_params, struct mem_param *mem_params, int num_reg_params, struct reg_param *reg_params, target_addr_t entry_point, target_addr_t exit_point, int timeout_ms, void *arch_info)
 
static int mips32_run_and_wait (struct target *target, target_addr_t entry_point, int timeout_ms, target_addr_t exit_point, struct mips32_common *mips32)
 
int mips32_save_context (struct target *target)
 
static int mips32_set_core_reg (struct reg *reg, uint8_t *buf)
 
static int mips32_verify_pointer (struct command_invocation *cmd, struct mips32_common *mips32)
 
static int mips32_write_core_reg (struct target *target, unsigned int num)
 

Variables

const struct command_registration mips32_command_handlers []
 
static const struct command_registration mips32_exec_command_handlers []
 
static uint8_t mips32_gdb_dummy_fp_value [] = {0, 0, 0, 0}
 
static const struct reg_arch_type mips32_reg_type
 
struct {
   const char *   feature
 
   int   flag
 
   const char *   group
 
   unsigned   id
 
   const char *   name
 
   enum reg_type   type
 
mips32_regs []
 
static const char * mips_isa_strings []
 

Macro Definition Documentation

◆ MIPS32_GDB_DUMMY_FP_REG

#define MIPS32_GDB_DUMMY_FP_REG   1

Definition at line 29 of file mips32.c.

◆ MIPS32_NUM_REGS

#define MIPS32_NUM_REGS   ARRAY_SIZE(mips32_regs)

Definition at line 153 of file mips32.c.

Function Documentation

◆ COMMAND_HANDLER() [1/2]

COMMAND_HANDLER ( mips32_handle_cp0_command  )

◆ COMMAND_HANDLER() [2/2]

◆ mips32_arch_state()

◆ mips32_blank_check_memory()

◆ mips32_build_reg_cache()

◆ mips32_checksum_memory()

◆ mips32_configure_break_unit()

◆ mips32_configure_dbs()

◆ mips32_configure_ibs()

◆ mips32_enable_interrupts()

int mips32_enable_interrupts ( struct target target,
int  enable 
)

◆ mips32_examine()

◆ mips32_get_core_reg()

static int mips32_get_core_reg ( struct reg reg)
static

◆ mips32_get_gdb_reg_list()

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

◆ mips32_init_arch_info()

◆ mips32_read_config_regs()

◆ mips32_read_core_reg()

static int mips32_read_core_reg ( struct target target,
unsigned int  num 
)
static

◆ mips32_restore_context()

◆ mips32_run_algorithm()

◆ mips32_run_and_wait()

static int mips32_run_and_wait ( struct target target,
target_addr_t  entry_point,
int  timeout_ms,
target_addr_t  exit_point,
struct mips32_common mips32 
)
static

◆ mips32_save_context()

◆ mips32_set_core_reg()

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

◆ mips32_verify_pointer()

static int mips32_verify_pointer ( struct command_invocation cmd,
struct mips32_common mips32 
)
static

◆ mips32_write_core_reg()

static int mips32_write_core_reg ( struct target target,
unsigned int  num 
)
static

Variable Documentation

◆ feature

const char* feature

Definition at line 40 of file mips32.c.

Referenced by mips32_build_reg_cache().

◆ flag

◆ group

const char* group

Definition at line 39 of file mips32.c.

◆ id

unsigned id

Definition at line 36 of file mips32.c.

◆ mips32_command_handlers

const struct command_registration mips32_command_handlers[]
Initial value:
= {
{
.name = "mips32",
.mode = COMMAND_ANY,
.help = "mips32 command group",
.usage = "",
},
}
#define COMMAND_REGISTRATION_DONE
Use this as the last entry in an array of command_registration records.
Definition: command.h:247
@ COMMAND_ANY
Definition: command.h:42
static const struct command_registration mips32_exec_command_handlers[]
Definition: mips32.c:990

Definition at line 967 of file mips32.c.

◆ mips32_exec_command_handlers

const struct command_registration mips32_exec_command_handlers[]
static
Initial value:
= {
{
.name = "cp0",
.handler = mips32_handle_cp0_command,
.mode = COMMAND_EXEC,
.usage = "regnum select [value]",
.help = "display/modify cp0 register",
},
{
.name = "scan_delay",
.handler = mips32_handle_scan_delay_command,
.mode = COMMAND_ANY,
.help = "display/set scan delay in nano seconds",
.usage = "[value]",
},
}
@ COMMAND_EXEC
Definition: command.h:40

Definition at line 967 of file mips32.c.

◆ mips32_gdb_dummy_fp_value

uint8_t mips32_gdb_dummy_fp_value[] = {0, 0, 0, 0}
static

Definition at line 155 of file mips32.c.

Referenced by mips32_build_reg_cache().

◆ mips32_reg_type

const struct reg_arch_type mips32_reg_type
static
Initial value:
= {
}
static int mips32_set_core_reg(struct reg *reg, uint8_t *buf)
Definition: mips32.c:172
static int mips32_get_core_reg(struct reg *reg)
Definition: mips32.c:157

Definition at line 280 of file mips32.c.

Referenced by mips32_build_reg_cache().

◆ 

const { ... } mips32_regs[]

Referenced by mips32_build_reg_cache().

◆ mips_isa_strings

const char* mips_isa_strings[]
static
Initial value:
= {
"MIPS32", "MIPS16", "", "MICRO MIPS32",
}

Definition at line 25 of file mips32.c.

Referenced by mips32_arch_state().

◆ name

const char* name

Definition at line 37 of file mips32.c.

◆ type

enum reg_type type

Definition at line 37 of file mips32.c.