Commit db4fe036 authored by drath's avatar drath
Browse files

- concretize JTAG state transition rules (previously implied behaviour is now documented)


git-svn-id: svn://svn.berlios.de/openocd/trunk@329 b42882b7-edfa-0310-969c-e2dbd0fdcd60
parent 3fe23f94
......@@ -248,11 +248,24 @@ extern int jtag_add_ir_scan(int num_fields, scan_field_t *fields, enum tap_state
extern int jtag_add_dr_scan(int num_fields, scan_field_t *fields, enum tap_state endstate, void *dummy_anachronism);
extern int jtag_add_plain_ir_scan(int num_fields, scan_field_t *fields, enum tap_state endstate, void *dummy_anachronism);
extern int jtag_add_plain_dr_scan(int num_fields, scan_field_t *fields, enum tap_state endstate, void *dummy_anachronism);
/* execute a state transition within the JTAG standard, but nothing is defined
* w.r.t. the path that is taken. Many implementations use precisely
/* execute a state transition within the JTAG standard, but the exact path
* path that is taken is undefined. Many implementations use precisely
* 7 clocks to perform a transition, but it could be more or less
* than that.
*/
*
* The following assertions are made about certain common state moves:
*
* - A state move from Pause-[ID]R to Pause-[ID]R should always go through
* Update-[ID]R and Capture-[ID]R before returning to Pause-[ID]R, otherwise
* there's no way force a register update, if you can't go to Run-Test/Idle for
* some reason.
*
* - A state move from Pause-[ID]R to Shift-[ID]R must not go through
* Update-[ID]R.
*
* - Run-Test/Idle must not be entered unless requested, because R-T/I may have
* side effects.
*/
extern int jtag_add_statemove(enum tap_state endstate);
/* A list of unambigious single clock state transitions, not
* all drivers can support this, but it is required for e.g.
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment