Skip to content

Commit 8ca73e7

Browse files
henrikbrixandersensobuch
authored andcommitted
jtag: drivers: xlnx-pcie-xvc: use correct TMS polarity during pathmove
The xlnx_pcie_xvc_execute_pathmove() function checks whether TMS should be high or low for transitioning from the current state to the next state, but then calls xlnx_pcie_xvc_transact() with the opposite level, leading to invalid state transitions. Fix the polarity of TMS in the calls to xlnx_pcie_xvc_transact() to match the required TMS level. Change-Id: I2383e41fb70063e26aa69fabcf728df597607934 Signed-off-by: Henrik Brix Andersen <hebad@vestas.com> Reviewed-on: https://review.openocd.org/c/openocd/+/8613 Reviewed-by: Moritz Fischer <moritzf@google.com> Tested-by: jenkins Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com> Reviewed-by: Nicolas Derumigny <nicolas.derumigny@inria.fr>
1 parent 198ffa2 commit 8ca73e7

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

src/jtag/drivers/xlnx-pcie-xvc.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -210,9 +210,9 @@ static int xlnx_pcie_xvc_execute_pathmove(struct jtag_command *cmd)
210210

211211
for (unsigned int i = 0; i < num_states; i++) {
212212
if (path[i] == tap_state_transition(tap_get_state(), false)) {
213-
err = xlnx_pcie_xvc_transact(1, 1, 0, NULL);
214-
} else if (path[i] == tap_state_transition(tap_get_state(), true)) {
215213
err = xlnx_pcie_xvc_transact(1, 0, 0, NULL);
214+
} else if (path[i] == tap_state_transition(tap_get_state(), true)) {
215+
err = xlnx_pcie_xvc_transact(1, 1, 0, NULL);
216216
} else {
217217
LOG_ERROR("BUG: %s -> %s isn't a valid TAP transition.",
218218
tap_state_name(tap_get_state()),

0 commit comments

Comments
 (0)