if (strcmp(CMD_ARGV[0], jtag_interfaces[i]->name) != 0)
continue;
- if (NULL != jtag_interfaces[i]->register_commands)
+ if (NULL != jtag_interfaces[i]->commands)
{
- int retval = jtag_interfaces[i]->register_commands(CMD_CTX);
+ int retval = register_commands(CMD_CTX, NULL,
+ jtag_interfaces[i]->commands);
if (ERROR_OK != retval)
return retval;
}
{
tap_state_t states[8];
- if ((argc < 2) || ((size_t)argc > (sizeof(states)/sizeof(*states) + 1)))
+ if ((argc < 2) || ((size_t)argc > (ARRAY_SIZE(states) + 1)))
{
Jim_WrongNumArgs(interp, 1, args, "wrong arguments");
return JIM_ERR;
.help = "choose short(default) or long tms_sequence",
.usage = "<short | long>",
},
+ // jim commands
+ {
+ .name = "jtag",
+ .mode = COMMAND_ANY,
+ .jim_handler = &jim_jtag_command,
+ .help = "perform jtag tap actions",
+ },
+ {
+ .name = "drscan",
+ .mode = COMMAND_EXEC,
+ .jim_handler = &Jim_Command_drscan,
+ .help = "execute DR scan <device> "
+ "<num_bits> <value> <num_bits1> <value2> ...",
+ },
+ {
+ .name = "flush_count",
+ .mode = COMMAND_EXEC,
+ .jim_handler = &Jim_Command_flush_count,
+ .help = "returns number of times the JTAG queue has been flushed",
+ },
+ {
+ .name = "pathmove",
+ .mode = COMMAND_EXEC,
+ .jim_handler = &Jim_Command_pathmove,
+ .usage = "<state1>,<state2>,<state3>... ",
+ .help = "move JTAG to state1 then to state2, state3, etc.",
+ },
COMMAND_REGISTRATION_DONE
};
int jtag_register_commands(struct command_context *cmd_ctx)
{
- register_jim(cmd_ctx, "jtag", jim_jtag_command,
- "perform jtag tap actions");
-
- register_jim(cmd_ctx, "drscan", Jim_Command_drscan,
- "execute DR scan <device> "
- "<num_bits> <value> <num_bits1> <value2> ...");
-
- register_jim(cmd_ctx, "flush_count", Jim_Command_flush_count,
- "returns number of times the JTAG queue has been flushed");
-
- register_jim(cmd_ctx, "pathmove", Jim_Command_pathmove,
- "<state1>,<state2>,<state3>... "
- "- move JTAG to state1 then to state2, state3, etc.");
-
return register_commands(cmd_ctx, NULL, jtag_command_handlers);
}
-
-