X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=src%2Ftarget%2Farm9tdmi.c;h=7eb5641de9297f003c3cc2075135defa6dd57dae;hb=68889ea02f28bfd61f0b4b85aad4b0bf8826a947;hp=3f074be86bee15d45cd272cbe23ffa2c27b452dd;hpb=23402315ce01071f30d7ec0c5ca7563ce41f1cc6;p=openocd diff --git a/src/target/arm9tdmi.c b/src/target/arm9tdmi.c index 3f074be8..7eb5641d 100644 --- a/src/target/arm9tdmi.c +++ b/src/target/arm9tdmi.c @@ -664,7 +664,7 @@ static void arm9tdmi_branch_resume_thumb(struct target *target) LOG_DEBUG("-"); struct arm7_9_common *arm7_9 = target_to_arm7_9(target); - struct armv4_5_common_s *armv4_5 = &arm7_9->armv4_5_common; + struct arm *armv4_5 = &arm7_9->armv4_5_common; struct arm_jtag *jtag_info = &arm7_9->jtag_info; struct reg *dbg_stat = &arm7_9->eice_cache->reg_list[EICE_DBG_STAT]; @@ -751,10 +751,9 @@ void arm9tdmi_disable_single_step(struct target *target) static void arm9tdmi_build_reg_cache(struct target *target) { struct reg_cache **cache_p = register_get_last_cache_p(&target->reg_cache); - struct armv4_5_common_s *armv4_5 = target_to_armv4_5(target); + struct arm *armv4_5 = target_to_armv4_5(target); (*cache_p) = armv4_5_build_reg_cache(target, armv4_5); - armv4_5->core_cache = (*cache_p); } int arm9tdmi_init_target(struct command_context *cmd_ctx, @@ -831,7 +830,7 @@ static int arm9tdmi_target_create(struct target *target, Jim_Interp *interp) COMMAND_HANDLER(handle_arm9tdmi_catch_vectors_command) { - struct target *target = get_current_target(cmd_ctx); + struct target *target = get_current_target(CMD_CTX); struct arm7_9_common *arm7_9 = target_to_arm7_9(target); struct reg *vector_catch; uint32_t vector_catch_value; @@ -839,7 +838,7 @@ COMMAND_HANDLER(handle_arm9tdmi_catch_vectors_command) /* it's uncommon, but some ARM7 chips can support this */ if (arm7_9->common_magic != ARM7_9_COMMON_MAGIC || !arm7_9->has_vector_catch) { - command_print(cmd_ctx, "target doesn't have EmbeddedICE " + command_print(CMD_CTX, "target doesn't have EmbeddedICE " "with vector_catch"); return ERROR_TARGET_INVALID; } @@ -882,7 +881,7 @@ COMMAND_HANDLER(handle_arm9tdmi_catch_vectors_command) /* complain if vector wasn't found */ if (!arm9tdmi_vectors[j].name) { - command_print(cmd_ctx, "vector '%s' not found, leaving current setting unchanged", CMD_ARGV[i]); + command_print(CMD_CTX, "vector '%s' not found, leaving current setting unchanged", CMD_ARGV[i]); /* reread current setting */ vector_catch_value = buf_get_u32( @@ -901,7 +900,7 @@ COMMAND_HANDLER(handle_arm9tdmi_catch_vectors_command) /* output current settings */ for (unsigned i = 0; arm9tdmi_vectors[i].name; i++) { - command_print(cmd_ctx, "%s: %s", arm9tdmi_vectors[i].name, + command_print(CMD_CTX, "%s: %s", arm9tdmi_vectors[i].name, (vector_catch_value & arm9tdmi_vectors[i].value) ? "catch" : "don't catch"); } @@ -909,21 +908,27 @@ COMMAND_HANDLER(handle_arm9tdmi_catch_vectors_command) return ERROR_OK; } -int arm9tdmi_register_commands(struct command_context *cmd_ctx) -{ - int retval; - struct command *arm9tdmi_cmd; - - retval = arm7_9_register_commands(cmd_ctx); - arm9tdmi_cmd = register_command(cmd_ctx, NULL, "arm9", - NULL, COMMAND_ANY, - "arm9 specific commands"); - register_command(cmd_ctx, arm9tdmi_cmd, "vector_catch", - handle_arm9tdmi_catch_vectors_command, COMMAND_EXEC, - "arm9 vector_catch [all|none|reset|undef|swi|pabt|dabt|irq|fiq] ..."); - - return retval; -} +static const struct command_registration arm9tdmi_exec_command_handlers[] = { + { + .name = "vector_catch", + .handler = handle_arm9tdmi_catch_vectors_command, + .mode = COMMAND_EXEC, + .usage = "[all|none|reset|undef|swi|pabt|dabt|irq|fiq] ...", + }, + COMMAND_REGISTRATION_DONE +}; +const struct command_registration arm9tdmi_command_handlers[] = { + { + .chain = arm7_9_command_handlers, + }, + { + .name = "arm9tdmi", + .mode = COMMAND_ANY, + .help = "arm9tdmi command group", + .chain = arm9tdmi_exec_command_handlers, + }, + COMMAND_REGISTRATION_DONE +}; /** Holds methods for ARM9TDMI targets. */ struct target_type arm9tdmi_target = @@ -959,7 +964,7 @@ struct target_type arm9tdmi_target = .add_watchpoint = arm7_9_add_watchpoint, .remove_watchpoint = arm7_9_remove_watchpoint, - .register_commands = arm9tdmi_register_commands, + .commands = arm9tdmi_command_handlers, .target_create = arm9tdmi_target_create, .init_target = arm9tdmi_init_target, .examine = arm7_9_examine,