X-Git-Url: https://review.openocd.org/gitweb?p=openocd.git;a=blobdiff_plain;f=src%2Ftarget%2Fmips_m4k.c;h=0a566c3444175ee8df3f534f48270ecfd7033c8e;hp=94a73280c83e8a7aca65722d87b99b7ad6ff6788;hb=a1777fc6493b4c1879ef133c565327212859d37c;hpb=0f1163e823c6ca3c2a81fa296157f5dde0635fea diff --git a/src/target/mips_m4k.c b/src/target/mips_m4k.c index 94a73280c8..0a566c3444 100644 --- a/src/target/mips_m4k.c +++ b/src/target/mips_m4k.c @@ -23,10 +23,12 @@ #include "config.h" #endif +#include "breakpoints.h" #include "mips32.h" #include "mips_m4k.h" #include "mips32_dmaacc.h" #include "target_type.h" +#include "register.h" /* cli handling */ @@ -39,8 +41,8 @@ int mips_m4k_resume(struct target *target, int current, uint32_t address, int ha int mips_m4k_step(struct target *target, int current, uint32_t address, int handle_breakpoints); int mips_m4k_read_memory(struct target *target, uint32_t address, uint32_t size, uint32_t count, uint8_t *buffer); int mips_m4k_write_memory(struct target *target, uint32_t address, uint32_t size, uint32_t count, uint8_t *buffer); -int mips_m4k_register_commands(struct command_context_s *cmd_ctx); -int mips_m4k_init_target(struct command_context_s *cmd_ctx, struct target *target); +int mips_m4k_register_commands(struct command_context *cmd_ctx); +int mips_m4k_init_target(struct command_context *cmd_ctx, struct target *target); int mips_m4k_target_create(struct target *target, Jim_Interp *interp); int mips_m4k_examine(struct target *target); @@ -307,7 +309,7 @@ int mips_m4k_assert_reset(struct target *target) target->state = TARGET_RESET; jtag_add_sleep(50000); - mips32_invalidate_core_regs(target); + register_cache_invalidate(mips32->core_cache); if (target->reset_halt) { @@ -408,7 +410,7 @@ int mips_m4k_resume(struct target *target, int current, uint32_t address, int ha target->debug_reason = DBG_REASON_NOTHALTED; /* registers are now invalid */ - mips32_invalidate_core_regs(target); + register_cache_invalidate(mips32->core_cache); if (!debug_execution) { @@ -465,7 +467,7 @@ int mips_m4k_step(struct target *target, int current, uint32_t address, int hand mips_ejtag_exit_debug(ejtag_info); /* registers are now invalid */ - mips32_invalidate_core_regs(target); + register_cache_invalidate(mips32->core_cache); if (breakpoint) mips_m4k_set_breakpoint(target, breakpoint); @@ -511,10 +513,9 @@ int mips_m4k_set_breakpoint(struct target *target, struct breakpoint *breakpoint bp_num++; if (bp_num >= mips32->num_inst_bpoints) { - LOG_DEBUG("ERROR Can not find free FP Comparator(bpid: %d)", + LOG_ERROR("Can not find free FP Comparator(bpid: %d)", breakpoint->unique_id ); - LOG_WARNING("ERROR Can not find free FP Comparator"); - exit(-1); + return ERROR_FAIL; } breakpoint->set = bp_num + 1; comparator_list[bp_num].used = 1; @@ -722,9 +723,8 @@ int mips_m4k_set_watchpoint(struct target *target, struct watchpoint *watchpoint wp_num++; if (wp_num >= mips32->num_data_bpoints) { - LOG_DEBUG("ERROR Can not find free FP Comparator"); - LOG_WARNING("ERROR Can not find free FP Comparator"); - exit(-1); + LOG_ERROR("Can not find free FP Comparator"); + return ERROR_FAIL; } if (watchpoint->length != 4) @@ -902,7 +902,7 @@ int mips_m4k_write_memory(struct target *target, uint32_t address, uint32_t size return mips32_dmaacc_write_mem(ejtag_info, address, size, count, (void *)buffer); } -int mips_m4k_register_commands(struct command_context_s *cmd_ctx) +int mips_m4k_register_commands(struct command_context *cmd_ctx) { int retval; @@ -910,7 +910,7 @@ int mips_m4k_register_commands(struct command_context_s *cmd_ctx) return retval; } -int mips_m4k_init_target(struct command_context_s *cmd_ctx, struct target *target) +int mips_m4k_init_target(struct command_context *cmd_ctx, struct target *target) { mips32_build_reg_cache(target);