diff options
author | Roman Reichel <romanreichel@aol.de> | 2013-01-15 23:13:08 +0100 |
---|---|---|
committer | Spencer Oliver <spen@spen-soft.co.uk> | 2013-01-16 11:21:49 +0000 |
commit | df7a6b08a69cdf13d4a0adc9b6fc9e56cdcaa18e (patch) | |
tree | 40741fe515122c6f52bea7d43f43e20f18eccf2e /src | |
parent | 7ae9154846f6e268c4fbc0c237c1b2c6301da2ce (diff) | |
download | riscv-openocd-df7a6b08a69cdf13d4a0adc9b6fc9e56cdcaa18e.zip riscv-openocd-df7a6b08a69cdf13d4a0adc9b6fc9e56cdcaa18e.tar.gz riscv-openocd-df7a6b08a69cdf13d4a0adc9b6fc9e56cdcaa18e.tar.bz2 |
opendous: Inhibit unnecessary state transitions
When current tap state and end state are the same, transitions are added which is not what should happen.
The usbprog driver was already patched like this long time ago.
Change-Id: I339e87156bdc7b5c83c10c14025b749605d3871a
Signed-off-by: Roman Reichel <romanreichel@aol.de>
Reviewed-on: http://openocd.zylin.com/1113
Tested-by: jenkins
Reviewed-by: Spencer Oliver <spen@spen-soft.co.uk>
Diffstat (limited to 'src')
-rw-r--r-- | src/jtag/drivers/opendous.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/jtag/drivers/opendous.c b/src/jtag/drivers/opendous.c index 1b74bd5..3a6cf5c 100644 --- a/src/jtag/drivers/opendous.c +++ b/src/jtag/drivers/opendous.c @@ -422,7 +422,9 @@ void opendous_scan(int ir_scan, enum scan_type type, uint8_t *buffer, int scan_s /* Move to appropriate scan state */ opendous_end_state(ir_scan ? TAP_IRSHIFT : TAP_DRSHIFT); - opendous_state_move(); + if (tap_get_state() != tap_get_end_state()) + opendous_state_move(); + opendous_end_state(saved_end_state); /* Scan */ |