X-Git-Url: https://review.openocd.org/gitweb?p=openocd.git;a=blobdiff_plain;f=src%2Fjtag%2Fft2232.c;h=1a058675cd3b88f6c9ed8f1e256a2606012c213c;hp=d5c4af25421d994a49ab21696b754e905b0a56fd;hb=796fa81a2b361fa0606f141906734672c910b343;hpb=5a15c6d8079ac3e8b0677ae9665e841856a42772 diff --git a/src/jtag/ft2232.c b/src/jtag/ft2232.c index d5c4af2542..1a058675cd 100644 --- a/src/jtag/ft2232.c +++ b/src/jtag/ft2232.c @@ -459,12 +459,14 @@ void ft2232_add_pathmove(pathmove_command_t *cmd) tms_byte = 0x0; int bit_count = 0; + int num_states_batch = num_states > 7 ? 7 : num_states; + /* command "Clock Data to TMS/CS Pin (no Read)" */ BUFFER_ADD = 0x4b; /* number of states remaining */ - BUFFER_ADD = (num_states % 7) - 1; + BUFFER_ADD = num_states_batch - 1; - while (num_states % 7) + while (num_states_batch--) { if (tap_transitions[cur_state].low == cmd->path[state_count]) buf_set_u32(&tms_byte, bit_count++, 1, 0x0);