/* The specification for SVF is available here:
* http://www.asset-intertech.com/support/svf.pdf
- * Below, this document is refered to as the "SVF spec".
+ * Below, this document is referred to as the "SVF spec".
*
* The specification for XSVF is available here:
* http://www.xilinx.com/support/documentation/application_notes/xapp503.pdf
- * Below, this document is refered to as the "XSVF spec".
+ * Below, this document is referred to as the "XSVF spec".
*/
#ifdef HAVE_CONFIG_H
#endif
#include "xsvf.h"
+#include "helper/system.h"
#include <jtag/jtag.h>
#include <svf/svf.h>
unsigned pathlen = 0;
/* a flag telling whether to clock TCK during waits,
- * or simply sleep, controled by virt2
+ * or simply sleep, controlled by virt2
*/
int runtest_requires_tck = 0;
xsdrsize = be_to_h_u32(xsdrsize_buf);
LOG_DEBUG("XSDRSIZE %d", xsdrsize);
- if (dr_out_buf)
- free(dr_out_buf);
- if (dr_in_buf)
- free(dr_in_buf);
- if (dr_in_mask)
- free(dr_in_mask);
+ free(dr_out_buf);
+ free(dr_in_buf);
+ free(dr_in_mask);
dr_out_buf = malloc((xsdrsize + 7) / 8);
dr_in_buf = malloc((xsdrsize + 7) / 8);
if (attempt > 0) {
/* perform the XC9500 exception handling sequence shown in xapp067.pdf and
- * illustrated in psuedo code at end of this file. We start from state
+ * illustrated in pseudo code at end of this file. We start from state
* DRPAUSE:
* go to Exit2-DR
* go to Shift-DR
field.out_value = dr_out_buf;
field.in_value = calloc(DIV_ROUND_UP(field.num_bits, 8), 1);
- if (tap == NULL)
+ if (!tap)
jtag_add_plain_dr_scan(field.num_bits,
field.out_value,
field.in_value,
field.in_value = NULL;
- if (tap == NULL)
+ if (!tap)
jtag_add_plain_ir_scan(field.num_bits,
field.out_value, field.in_value, my_end_state);
else
if (attempt > 0 && verbose)
LOG_USER("LSDR retry %d", attempt);
- if (tap == NULL)
+ if (!tap)
jtag_add_plain_dr_scan(field.num_bits,
field.out_value,
field.in_value,
return ERROR_FAIL;
}
- if (dr_out_buf)
- free(dr_out_buf);
-
- if (dr_in_buf)
- free(dr_in_buf);
-
- if (dr_in_mask)
- free(dr_in_mask);
+ free(dr_out_buf);
+ free(dr_in_buf);
+ free(dr_in_mask);
close(xsvf_fd);
/*
-PSUEDO-Code from Xilinx Appnote XAPP067.pdf :
+PSEUDO-Code from Xilinx Appnote XAPP067.pdf :
the following pseudo code clarifies the intent of the xrepeat support.The
flow given is for the entire processing of an SVF file, not an XSVF file.