Relax polling check if not in JTAG mode
Polling was disabled based on global variables jtag_trst and jtag_srst which were never touched in non-JTAG mode. Modify the check and remove the ugly workaround to avoid calls to a possibly uninitialized JTAG subsystem. Change-Id: I3b18c81e0fba7aaf35afe6f08c3fe8fa6f8443fd Signed-off-by: Andreas Fritiofson <andreas.fritiofson@gmail.com> Reviewed-on: http://openocd.zylin.com/2143 Tested-by: jenkins Reviewed-by: Paul Fertser <fercerpav@gmail.com>__archive__
parent
baf998b9f8
commit
12e9f6292b
|
@ -166,6 +166,9 @@ bool is_jtag_poll_safe(void)
|
||||||
* It is also implicitly disabled while TRST is active and
|
* It is also implicitly disabled while TRST is active and
|
||||||
* while SRST is gating the JTAG clock.
|
* while SRST is gating the JTAG clock.
|
||||||
*/
|
*/
|
||||||
|
if (!transport_is_jtag())
|
||||||
|
return jtag_poll;
|
||||||
|
|
||||||
if (!jtag_poll || jtag_trst != 0)
|
if (!jtag_poll || jtag_trst != 0)
|
||||||
return false;
|
return false;
|
||||||
return jtag_srst == 0 || (jtag_reset_config & RESET_SRST_NO_GATING);
|
return jtag_srst == 0 || (jtag_reset_config & RESET_SRST_NO_GATING);
|
||||||
|
|
|
@ -429,9 +429,6 @@ static int swd_init(struct command_context *ctx)
|
||||||
if (status == ERROR_OK)
|
if (status == ERROR_OK)
|
||||||
LOG_INFO("SWD IDCODE %#8.8" PRIx32, idcode);
|
LOG_INFO("SWD IDCODE %#8.8" PRIx32, idcode);
|
||||||
|
|
||||||
/* this is a workaround to get polling working */
|
|
||||||
jtag_add_reset(0, 0);
|
|
||||||
|
|
||||||
return status;
|
return status;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue