extern jtag_interface_t parport_interface;
#endif
-#if BUILD_FTDI2232 == 1
- extern jtag_interface_t ftdi2232_interface;
+#if BUILD_FT2232_FTD2XX == 1
+ extern jtag_interface_t ft2232_interface;
#endif
-#if BUILD_FTD2XX == 1
- extern jtag_interface_t ftd2xx_interface;
+#if BUILD_FT2232_LIBFTDI == 1
+ extern jtag_interface_t ft2232_interface;
#endif
#if BUILD_AMTJTAGACCEL == 1
#if BUILD_PARPORT == 1
&parport_interface,
#endif
-#if BUILD_FTDI2232 == 1
- &ftdi2232_interface,
+#if BUILD_FT2232_FTD2XX == 1
+ &ft2232_interface,
#endif
-#if BUILD_FTD2XX == 1
- &ftd2xx_interface,
+#if BUILD_FT2232_LIBFTDI == 1
+ &ft2232_interface,
#endif
#if BUILD_AMTJTAGACCEL == 1
&amt_jtagaccel_interface,
{
jtag_call_event_callbacks(JTAG_SRST_RELEASED);
if (jtag_nsrst_delay)
- jtag_add_sleep(jtag_nsrst_delay);
+ jtag_add_sleep(jtag_nsrst_delay * 1000);
}
if (trst_with_tms)
* but we might want to add a delay to give the TAP time to settle
*/
if (jtag_ntrst_delay)
- jtag_add_sleep(jtag_ntrst_delay);
+ jtag_add_sleep(jtag_ntrst_delay * 1000);
}
}
{
if (buf_get_u32(ir_test, chain_pos, 2) != 0x1)
{
- ERROR("Error validating JTAG scan chain, IR mismatch");
+ char *cbuf = buf_to_char(ir_test, total_ir_length);
+ ERROR("Error validating JTAG scan chain, IR mismatch, scan returned %s", cbuf);
+ free(cbuf);
exit(-1);
}
chain_pos += device->ir_length;
if (buf_get_u32(ir_test, chain_pos, 2) != 0x3)
{
- ERROR("Error validating JTAG scan chain, IR mismatch");
+ char *cbuf = buf_to_char(ir_test, total_ir_length);
+ ERROR("Error validating JTAG scan chain, IR mismatch, scan returned %s", cbuf);
+ free(cbuf);
exit(-1);
}
COMMAND_CONFIG, NULL);
register_command(cmd_ctx, NULL, "reset_config", handle_reset_config_command,
COMMAND_CONFIG, NULL);
- register_command(cmd_ctx, NULL, "nsrst_delay", handle_jtag_nsrst_delay_command,
+ register_command(cmd_ctx, NULL, "jtag_nsrst_delay", handle_jtag_nsrst_delay_command,
COMMAND_CONFIG, NULL);
- register_command(cmd_ctx, NULL, "ntrst_delay", handle_jtag_ntrst_delay_command,
+ register_command(cmd_ctx, NULL, "jtag_ntrst_delay", handle_jtag_ntrst_delay_command,
COMMAND_CONFIG, NULL);
register_command(cmd_ctx, NULL, "scan_chain", handle_scan_chain_command,
* didn't match one of the compiled-in interfaces
*/
ERROR("No valid jtag interface found (%s)", jtag_interface);
+ ERROR("compiled-in jtag interfaces:");
+ for (i = 0; jtag_interfaces[i]; i++)
+ {
+ ERROR("%i: %s", i, jtag_interfaces[i]->name);
+ }
+
jtag = NULL;
return ERROR_JTAG_INVALID_INTERFACE;
}
{
if (argc < 1)
{
- ERROR("nsrst_delay <ms> command takes one required argument");
+ ERROR("jtag_nsrst_delay <ms> command takes one required argument");
exit(-1);
}
else
{
if (argc < 1)
{
- ERROR("ntrst_delay <ms> command takes one required argument");
+ ERROR("jtag_ntrst_delay <ms> command takes one required argument");
exit(-1);
}
else