diff options
author | oharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60> | 2008-03-12 16:01:30 +0000 |
---|---|---|
committer | oharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60> | 2008-03-12 16:01:30 +0000 |
commit | 45af9d83c90134ec929599bf4a05360e8bd1e8be (patch) | |
tree | 18e1bc3344ec897f2a701faccde8a08059b61de9 | |
parent | 9bf8a4e48b9c84c0ccd4057537eab37b2be0a2a8 (diff) | |
download | openocd+libswd-45af9d83c90134ec929599bf4a05360e8bd1e8be.tar.gz openocd+libswd-45af9d83c90134ec929599bf4a05360e8bd1e8be.tar.bz2 openocd+libswd-45af9d83c90134ec929599bf4a05360e8bd1e8be.tar.xz openocd+libswd-45af9d83c90134ec929599bf4a05360e8bd1e8be.zip |
The bitbang driver leaves the TCK 0 when in idle
git-svn-id: svn://svn.berlios.de/openocd/trunk@505 b42882b7-edfa-0310-969c-e2dbd0fdcd60
-rw-r--r-- | src/jtag/bitbang.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/jtag/bitbang.c b/src/jtag/bitbang.c index b5ea8fe2..77d60ba1 100644 --- a/src/jtag/bitbang.c +++ b/src/jtag/bitbang.c @@ -41,6 +41,9 @@ bitbang_interface_t *bitbang_interface; int bitbang_execute_queue(void); +/* The bitbang driver leaves the TCK 0 when in idle */ + + void bitbang_end_state(enum tap_state state) { if (tap_move_map[state] != -1) @@ -96,6 +99,7 @@ void bitbang_path_move(pathmove_command_t *cmd) state_count++; num_states--; } + bitbang_interface->write(0, tms, 0); end_state = cur_state; } @@ -125,6 +129,8 @@ void bitbang_runtest(int num_cycles) bitbang_end_state(saved_end_state); if (cur_state != end_state) bitbang_state_move(); + else + bitbang_interface->write(0, tms, 0); } void bitbang_scan(int ir_scan, enum scan_type type, u8 *buffer, int scan_size) @@ -178,6 +184,8 @@ void bitbang_scan(int ir_scan, enum scan_type type, u8 *buffer, int scan_size) if (cur_state != end_state) bitbang_state_move(); + else + bitbang_interface->write(0, tms, 0); } int bitbang_execute_queue(void) |