jtag: retire tap field
[fw/openocd] / src / xsvf / xsvf.c
index 82ddb84b992a19a57de62b49921f4426296129db..faa55421638e70e7c8f1d971287e0d8bc19e9232 100644 (file)
@@ -41,8 +41,8 @@
 #endif
 
 #include "xsvf.h"
-#include "jtag.h"
-#include "svf.h"
+#include <jtag/jtag.h>
+#include <svf/svf.h>
 
 
 /* XSVF commands, from appendix B of xapp503.pdf  */
@@ -476,7 +476,6 @@ COMMAND_HANDLER(handle_xsvf_command)
                                                        LOG_USER("%s mismatch, xsdrsize=%d retry=%d", op_name, xsdrsize, attempt);
                                        }
 
-                                       field.tap = tap;
                                        field.num_bits = xsdrsize;
                                        field.out_value = dr_out_buf;
                                        field.in_value = calloc(DIV_ROUND_UP(field.num_bits, 8), 1);
@@ -484,7 +483,7 @@ COMMAND_HANDLER(handle_xsvf_command)
                                        if (tap == NULL)
                                                jtag_add_plain_dr_scan(1, &field, jtag_set_end_state(TAP_DRPAUSE));
                                        else
-                                               jtag_add_dr_scan(1, &field, jtag_set_end_state(TAP_DRPAUSE));
+                                               jtag_add_dr_scan(tap, 1, &field, jtag_set_end_state(TAP_DRPAUSE));
 
                                        jtag_check_value_mask(&field, dr_in_buf, dr_in_mask);
 
@@ -694,7 +693,6 @@ COMMAND_HANDLER(handle_xsvf_command)
                                {
                                        struct scan_field field;
 
-                                       field.tap = tap;
                                        field.num_bits = bitcount;
                                        field.out_value = ir_buf;
 
@@ -706,7 +704,7 @@ COMMAND_HANDLER(handle_xsvf_command)
                                        if (tap == NULL)
                                                jtag_add_plain_ir_scan(1, &field, my_end_state);
                                        else
-                                               jtag_add_ir_scan(1, &field, my_end_state);
+                                               jtag_add_ir_scan(tap, 1, &field, my_end_state);
 
                                        if (xruntest)
                                        {
@@ -930,7 +928,6 @@ COMMAND_HANDLER(handle_xsvf_command)
                                        jtag_add_clocks(loop_clocks);
                                        jtag_add_sleep(loop_usecs);
 
-                                       field.tap = tap;
                                        field.num_bits = xsdrsize;
                                        field.out_value = dr_out_buf;
                                        field.in_value = calloc(DIV_ROUND_UP(field.num_bits, 8), 1);
@@ -941,7 +938,7 @@ COMMAND_HANDLER(handle_xsvf_command)
                                        if (tap == NULL)
                                                jtag_add_plain_dr_scan(1, &field, jtag_set_end_state(TAP_DRPAUSE));
                                        else
-                                               jtag_add_dr_scan(1, &field, jtag_set_end_state(TAP_DRPAUSE));
+                                               jtag_add_dr_scan(tap, 1, &field, jtag_set_end_state(TAP_DRPAUSE));
 
                                        jtag_check_value_mask(&field, dr_in_buf, dr_in_mask);
 
@@ -1050,13 +1047,23 @@ COMMAND_HANDLER(handle_xsvf_command)
        return ERROR_OK;
 }
 
+static const struct command_registration xsvf_command_handlers[] = {
+       {
+               .name = "xsvf",
+               .handler = handle_xsvf_command,
+               .mode = COMMAND_EXEC,
+               .help = "Runs a XSVF file.  If 'virt2' is given, xruntest "
+                       "counts are interpreted as TCK cycles rather than "
+                       "as microseconds.  Without the 'quiet' option, all "
+                       "comments, retries, and mismatches will be reported.",
+               .usage = "(tapname|'plain') filename ['virt2'] ['quiet']",
+       },
+       COMMAND_REGISTRATION_DONE
+};
+
 int xsvf_register_commands(struct command_context *cmd_ctx)
 {
-       COMMAND_REGISTER(cmd_ctx, NULL, "xsvf",
-                       &handle_xsvf_command, COMMAND_EXEC,
-                       "run xsvf <file> [virt2] [quiet]");
-
-       return ERROR_OK;
+       return register_commands(cmd_ctx, NULL, xsvf_command_handlers);
 }
 
 #if 0   /* this comment style used to try and keep uncrustify from adding * at begin of line */