From: Andreas Fritiofson Date: Wed, 14 May 2014 20:14:10 +0000 (+0200) Subject: Relax polling check if not in JTAG mode X-Git-Tag: v0.9.0-rc1~349 X-Git-Url: https://review.openocd.org/gitweb?p=openocd.git;a=commitdiff_plain;h=12e9f6292b391d475214704843504c5817bf783e 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 Reviewed-on: http://openocd.zylin.com/2143 Tested-by: jenkins Reviewed-by: Paul Fertser --- diff --git a/src/jtag/core.c b/src/jtag/core.c index 24f6a511d7..f82b05e1e3 100644 --- a/src/jtag/core.c +++ b/src/jtag/core.c @@ -166,6 +166,9 @@ bool is_jtag_poll_safe(void) * It is also implicitly disabled while TRST is active and * while SRST is gating the JTAG clock. */ + if (!transport_is_jtag()) + return jtag_poll; + if (!jtag_poll || jtag_trst != 0) return false; return jtag_srst == 0 || (jtag_reset_config & RESET_SRST_NO_GATING); diff --git a/src/target/adi_v5_swd.c b/src/target/adi_v5_swd.c index f08b0be0e8..f8d3650edb 100644 --- a/src/target/adi_v5_swd.c +++ b/src/target/adi_v5_swd.c @@ -429,9 +429,6 @@ static int swd_init(struct command_context *ctx) if (status == ERROR_OK) LOG_INFO("SWD IDCODE %#8.8" PRIx32, idcode); - /* this is a workaround to get polling working */ - jtag_add_reset(0, 0); - return status; }