X-Git-Url: https://review.openocd.org/gitweb?a=blobdiff_plain;f=src%2Fjtag%2Fcore.c;h=5d5803a3604a4c2350d72f5dfc19c82195801cf1;hb=6055d952c3efd2e6b12924c5ec42407fff99b453;hp=99a9eb75aeadd81bc925d4d99e04241703fc174c;hpb=7743e0fb4390d09c315ce9c6edbb2c3ba6b8c2d9;p=openocd.git diff --git a/src/jtag/core.c b/src/jtag/core.c index 99a9eb75ae..5d5803a360 100644 --- a/src/jtag/core.c +++ b/src/jtag/core.c @@ -894,7 +894,7 @@ void jtag_sleep(uint32_t us) /* A reserved manufacturer ID is used in END_OF_CHAIN_FLAG, so we * know that no valid TAP will have it as an IDCODE value. */ -#define END_OF_CHAIN_FLAG 0x000000ff +#define END_OF_CHAIN_FLAG 0xffffffff /* a larger IR length than we ever expect to autoprobe */ #define JTAG_IRLEN_MAX 60 @@ -962,10 +962,10 @@ static bool jtag_idcode_is_final(uint32_t idcode) { /* * Some devices, such as AVR8, will output all 1's instead - * of TDI input value at end of chain. Allow those values + * of TDI input value at end of chain. Allow those values * instead of failing. */ - return idcode == END_OF_CHAIN_FLAG || idcode == 0xFFFFFFFF; + return idcode == END_OF_CHAIN_FLAG; } /** @@ -1314,13 +1314,13 @@ void jtag_tap_init(struct jtag_tap *tap) /* register the reset callback for the TAP */ jtag_register_event_callback(&jtag_reset_callback, tap); + jtag_tap_add(tap); LOG_DEBUG("Created Tap: %s @ abs position %d, " - "irlen %d, capture: 0x%x mask: 0x%x", tap->dotted_name, - tap->abs_chain_position, tap->ir_length, - (unsigned) tap->ir_capture_value, - (unsigned) tap->ir_capture_mask); - jtag_tap_add(tap); + "irlen %d, capture: 0x%x mask: 0x%x", tap->dotted_name, + tap->abs_chain_position, tap->ir_length, + (unsigned) tap->ir_capture_value, + (unsigned) tap->ir_capture_mask); } void jtag_tap_free(struct jtag_tap *tap)