X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=src%2Ftarget%2Fetb.c;h=63dee18bc4ec1770fbd09773a296eea602439b6c;hb=144e3678bd2d518388b6c2d7f3d2a912a9ac2abd;hp=2ad51565f195e11ff10e45ec941f389c2f4b0a4d;hpb=7bf1a86e473a12882bf6f71cb4d0d416394b69d4;p=openocd diff --git a/src/target/etb.c b/src/target/etb.c index 2ad51565..63dee18b 100644 --- a/src/target/etb.c +++ b/src/target/etb.c @@ -359,25 +359,25 @@ COMMAND_HANDLER(handle_etb_config_command) return ERROR_COMMAND_SYNTAX_ERROR; } - target = get_target(args[0]); + target = get_target(CMD_ARGV[0]); if (!target) { - LOG_ERROR("ETB: target '%s' not defined", args[0]); + LOG_ERROR("ETB: target '%s' not defined", CMD_ARGV[0]); return ERROR_FAIL; } arm = target_to_arm(target); if (!is_arm(arm)) { - command_print(cmd_ctx, "ETB: '%s' isn't an ARM", args[0]); + command_print(CMD_CTX, "ETB: '%s' isn't an ARM", CMD_ARGV[0]); return ERROR_FAIL; } - tap = jtag_tap_by_string(args[1]); + tap = jtag_tap_by_string(CMD_ARGV[1]); if (tap == NULL) { - command_print(cmd_ctx, "ETB: TAP %s does not exist", args[1]); + command_print(CMD_CTX, "ETB: TAP %s does not exist", CMD_ARGV[1]); return ERROR_FAIL; } @@ -402,16 +402,28 @@ COMMAND_HANDLER(handle_etb_config_command) return ERROR_OK; } +static const struct command_registration etb_config_command_handlers[] = { + { + .name = "config", + .handler = &handle_etb_config_command, + .mode = COMMAND_CONFIG, + .usage = " ", + }, + COMMAND_REGISTRATION_DONE +}; +static const struct command_registration etb_command_handlers[] = { + { + .name = "etb", + .mode = COMMAND_ANY, + .help = "Emebdded Trace Buffer command group", + .chain = etb_config_command_handlers, + }, + COMMAND_REGISTRATION_DONE +}; + static int etb_register_commands(struct command_context *cmd_ctx) { - struct command *etb_cmd = register_command(cmd_ctx, NULL, "etb", - NULL, COMMAND_ANY, "Embedded Trace Buffer"); - - register_command(cmd_ctx, etb_cmd, "config", - handle_etb_config_command, COMMAND_CONFIG, - NULL); - - return ERROR_OK; + return register_commands(cmd_ctx, NULL, etb_command_handlers); } static int etb_init(struct etm_context *etm_ctx)