summaryrefslogtreecommitdiff
path: root/src/jtag/jtag.c
Commit message (Collapse)AuthorAgeFilesLines
...
* Factoring of jtag_examine_chain for maintainability:zwelch2009-06-071-4/+3
| | | | | | | - Move definition of maximum JTAG chain size closer to its only uses. git-svn-id: svn://svn.berlios.de/openocd/trunk@2079 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Factoring of jtag_examine_chain for maintainability:zwelch2009-06-071-3/+4
| | | | | | | - Move JTAG EXTRACT macros out from the middle of jtag_examine_chain. git-svn-id: svn://svn.berlios.de/openocd/trunk@2078 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Clean up handle_endstate_command():zwelch2009-06-071-13/+10
| | | | | | | | - Merge declaration of state with first use. - Unindent and remove unnecessary 'else' block. git-svn-id: svn://svn.berlios.de/openocd/trunk@2077 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Eliminate MixedCaps symbol from public JTAG TAP API:zwelch2009-06-051-5/+5
| | | | | | | | - Purely mechanical transformations to the source files. - Rename 'jtag_NextEnabledTap' as 'jtag_tap_next_enabled.' git-svn-id: svn://svn.berlios.de/openocd/trunk@2069 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Eliminate MixedCaps symbol from public JTAG TAP API:zwelch2009-06-051-3/+3
| | | | | | | | - Purely mechanical transformations to the source files. - Rename 'jtag_NumEnabledTaps' as 'jtag_tap_count_enabled.' git-svn-id: svn://svn.berlios.de/openocd/trunk@2068 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Eliminate MixedCaps symbol from public JTAG TAP API:zwelch2009-06-051-4/+4
| | | | | | | | - Purely mechanical transformations to the source files. - Rename 'jtag_NumTotalTaps' as 'jtag_tap_count.' git-svn-id: svn://svn.berlios.de/openocd/trunk@2067 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Eliminate MixedCaps symbol from public JTAG TAP API:zwelch2009-06-051-5/+5
| | | | | | | | - Purely mechanical transformations to the source files. - Rename 'jtag_TapByJimObj' as 'jtag_tap_by_jim_obj.' git-svn-id: svn://svn.berlios.de/openocd/trunk@2066 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Eliminate MixedCaps symbol from public JTAG TAP API:zwelch2009-06-051-3/+3
| | | | | | | | - Purely mechanical transformations to the source files. - Rename 'jtag_TapByString' as 'jtag_tap_by_string.' git-svn-id: svn://svn.berlios.de/openocd/trunk@2065 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Eliminate MixedCaps symbol from public JTAG TAP API:zwelch2009-06-051-2/+2
| | | | | | | | - Purely mechanical transformations to the source files. - Rename 'jtag_TapByAbsPosition' as 'jtag_tap_by_abs_position.' git-svn-id: svn://svn.berlios.de/openocd/trunk@2064 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Eliminate MixedCaps symbol from public JTAG TAP API:zwelch2009-06-051-5/+5
| | | | | | | | - Purely mechanical transformations to the source files. - Rename 'jtag_AllTaps' as 'jtag_all_taps.' git-svn-id: svn://svn.berlios.de/openocd/trunk@2062 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Eliminate MixedCaps symbol from public JTAG TAP API:zwelch2009-06-051-4/+4
| | | | | | | | | - Purely mechanical transformations to the source files. - Rename 'jtag_all_taps' as '__jtag_all_taps.' - Frees original symbol name to rename the accessor function. git-svn-id: svn://svn.berlios.de/openocd/trunk@2061 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Add accessors for jtag_verify; use them in jim command handler.zwelch2009-06-051-12/+18
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@2060 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Add accessors for reset delays; use them in jim command handlers.zwelch2009-06-051-2/+13
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@2059 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Add accessors for speed_khz; use them in jim command handler.zwelch2009-06-051-12/+19
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@2058 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Add jtag_get_flush_queue_count accessor to help future factoring.zwelch2009-06-041-1/+6
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@2057 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Clean up the JTAG TAP creation handler:zwelch2009-06-041-41/+45
| | | | | | | | | | - Factor jtag_tap_init() helper out of the end of jim_newtap_cmd. - Factor jtag_tap_free() helper out of the error case in jim_newtap_cmd. - Invert test to improve indentation at the end of jim_newtap_cmd. - Improve whitespace in the newly factored functions. git-svn-id: svn://svn.berlios.de/openocd/trunk@2056 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Clean up the core JTAG TAP APIs:zwelch2009-06-041-32/+33
| | | | | | | | | | - Move jtag_tap_name to same location as other TAP functions; export it. - Factor new jtag_tap_add() from jim_newtap_cmd(); appends TAP to global list. - Move static chain position counter to global; use in jtag_NumTotalTaps(). - Use jtag_AllTaps for reading tap list, instead of accessing global directly. git-svn-id: svn://svn.berlios.de/openocd/trunk@2055 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Change hasKHz to use bool type.zwelch2009-06-041-3/+3
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@2054 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Add missing static keywords in JTAG source file.zwelch2009-06-041-4/+5
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@2053 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Rename jtag_add_end_state to jtag_set_end_state since "add" implies thatoharboe2009-06-041-3/+3
| | | | | | this fn has something to do with the queue, which it does not as such. git-svn-id: svn://svn.berlios.de/openocd/trunk@2050 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Introduce jtag_get_end_state() fn to clarify code a bit.oharboe2009-06-041-1/+6
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@2049 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* do not modify global end state from jtag_add_xxx()oharboe2009-06-041-12/+8
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@2047 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* use assert() to catch TAP_INVALID passed to jtag_add_xxx() fn's.oharboe2009-06-041-4/+6
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@2043 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* remove TAP_INVALID as argument to jtag_add_xxx() fn'soharboe2009-06-041-1/+1
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@2042 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* jtag_add_end_state() now returns the value of the global variable and does ↵oharboe2009-06-041-3/+6
| | | | | | not modify the global variable if passed TAP_INVALID. This patch has no effect on the current code and is just to prepare upcoming patches. git-svn-id: svn://svn.berlios.de/openocd/trunk@2041 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* JTAG_TRST_ASSERTED event cleanup. More clear where and when it is invoked ↵oharboe2009-06-041-8/+6
| | | | | | and some duplicate(harmless) invocations avoided. git-svn-id: svn://svn.berlios.de/openocd/trunk@2040 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* David Brownell <david-b@pacbell.net>:zwelch2009-06-041-1/+1
| | | | | | | | Remove pernicious whitespace from src/jtag/*c files; mostly the end-of-line flavor for now, although there's more. git-svn-id: svn://svn.berlios.de/openocd/trunk@2036 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* use assert() for obscure check on illegal arguments upon trst being asserted ↵oharboe2009-06-031-6/+1
| | | | | | while commands are queued git-svn-id: svn://svn.berlios.de/openocd/trunk@2033 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Move JTAG command handling implementation into its own source file.zwelch2009-06-031-222/+0
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@2030 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Finish JTAG header file modularization; command factoring follows.zwelch2009-06-031-1/+0
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@2029 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Remove interface.h from public JTAG header, include it where required.zwelch2009-06-031-0/+1
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@2016 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Move the JTAG cable interface API implementationzwelch2009-06-031-440/+0
| | | | | | | | | - Cloned the src/jtag/jtag.c file to src/jtag/interface.c. - For each for of those files, deleted the contents of the other. - Add new source file to automake input. git-svn-id: svn://svn.berlios.de/openocd/trunk@2012 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Add missed accessor for checking the current TMS table.zwelch2009-06-031-1/+6
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@2011 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Split and simplify handle_tms_sequence_command for further factoring.zwelch2009-06-031-11/+14
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@2010 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Make tap_state_by_name available in new JTAG interface API header.zwelch2009-06-031-9/+1
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@2009 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Finish removing '#ifdef HAVE_JTAG_MINIDRIVER_H' from jtag.h:zwelch2009-06-021-0/+10
| | | | | | | | | | | | | - Wraps JTAG callback API functions: - Outlines jtag_add_callback() and jtag_add_callback4(). - Adds interface_ prefix to existing in-tree driver implementation. - Declare the driver interfaces routines in miniheader.h file. This patch requires renaming the equivalent macros in out-of-tree jtag_minidriver.h implementations. git-svn-id: svn://svn.berlios.de/openocd/trunk@2007 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Add header file for JTAG minidriver:zwelch2009-06-021-1/+18
| | | | | | | | | | | | | | | - Wraps all minidriver API functions using API front-ends: - Outlines jtag_add_dr_out() and jtag_alloc_in_value32(). - Adds interface_ prefix to existing jtag_alloc_invalue_32 routines. - Re-inline these interface definitions in new header file. - Re-inline parts of the (mini)driver implementations in minidriver.h. - Replace INCLUDE_JTAG_MINIDRIVER_H with #include directives. The next patch will finish removing '#ifdef HAVE_JTAG_MINIDRIVER_H' from jtag.h. git-svn-id: svn://svn.berlios.de/openocd/trunk@2006 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Move interface_jtag_add_scan_check_alloc implementations to theirzwelch2009-06-021-21/+0
| | | | | | | respective implementation files. git-svn-id: svn://svn.berlios.de/openocd/trunk@1999 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Continue clean-up of JTAG driver interface:zwelch2009-06-021-501/+1
| | | | | | | | | - Move all interface_jtag_* functions to jtag_driver.c. - Extern command queue routines in jtag.h (with INCLUDE_JTAG_INTERFACE_H). - Add new source file to automake inputs. git-svn-id: svn://svn.berlios.de/openocd/trunk@1996 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* More JTAG interface driver cleanup:zwelch2009-06-021-10/+9
| | | | | | | | | | | | | | - Moves references to global jtag interface to default core implementation. - Missed this reference in the earlier "pointless" patch. Mea culpa. Important: this has a side-effect. Previously, the error return inside the interface routine short-circuited the remainder of that function when 'init' has not been called. With this patch, the command queue will be cleared in the case that 'init' has been called. Since that case indicates a buggy script, this does not seem to be a problem. git-svn-id: svn://svn.berlios.de/openocd/trunk@1995 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* More JTAG interface driver cleanup:zwelch2009-06-021-3/+7
| | | | | | | | - Add jtag_callback_queue_reset() to reset the callback queue. - Make interface_jtag_execute_queue() use new helper function. git-svn-id: svn://svn.berlios.de/openocd/trunk@1994 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* More JTAG interface driver cleanup:zwelch2009-06-021-1/+6
| | | | | | | | | | | | - Make interface_jtag_execute_queue call new helper function. - Add default_interface_jtag_execute_queue to wrap jtag interface access. This patch may look useless on its own, but it helps to isolate the core JTAG variables from the interface_jtag_* routines, so the later can be moved into jtag_driver.c in a pending patch. git-svn-id: svn://svn.berlios.de/openocd/trunk@1993 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Clean up jtag command queue handling:zwelch2009-06-021-32/+17
| | | | | | | | | | | | | - Rename last_command_pointer as next_command_pointer, because this variable stores the address where jtag_queue_command() will store a command pointer. - Make that variable static, since it is only used internally in jtag.c. - Remove superfluous accessor for that now-static variable. - Deobfuscate use of variables in jtag_command_queue. - Add jtag_command_queue_reset helper function. - Use it in interface_jtag_execute_queue. git-svn-id: svn://svn.berlios.de/openocd/trunk@1992 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Start clean-up of JTAG driver interface:zwelch2009-06-021-20/+28
| | | | | | | | | - Factor jtag_add_scan_check to call new jtag_add_scan_check_alloc helper. - Use conditional logic to define two versions of the helper. - These helpers will be moved to other files in future patches. git-svn-id: svn://svn.berlios.de/openocd/trunk@1989 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* David Brownell <david-b@pacbell.net>:zwelch2009-06-011-8/+39
| | | | | | | | | | | | | | | | | Make the TCL "drscan" and "irscan" commands finish in RUN/IDLE unless the user specifies otherwise ... usually they'd choose something like DRPAUSE or IRPAUSE, avoiding RUN/IDLE. The current "end" state is whatever the preceding commands left in "cmd_queue_end_state", which to TCL scripts isn't knowable. This change should forestall various surprises/bugs. Also check that any "end" state specified is safe in case this adapter's JTAG clock is free-running. For now, just issue a warning; eventually a hard failure is probably correct. git-svn-id: svn://svn.berlios.de/openocd/trunk@1988 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* David Brownell <david-b@pacbell.net>:zwelch2009-06-011-13/+11
| | | | | | | | Whitespace fixes in jtag.c ... mostly end-of-line crap. Flag "jtag_device" command as obsolete in its helptext. git-svn-id: svn://svn.berlios.de/openocd/trunk@1987 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Encapsulate JTAG Cable API and interface structure, plan for new header file.zwelch2009-06-011-0/+1
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@1984 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Encapsulate JTAG minidriver functions, plan for new header file.zwelch2009-06-011-0/+1
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@1983 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* added jtag_add_statemove() helper fn(actual fn written by Dick Hollonbeck, I ↵oharboe2009-06-011-0/+87
| | | | | | just moved it). git-svn-id: svn://svn.berlios.de/openocd/trunk@1980 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Encapsulate the global "jtag" jtag_interface pointer:zwelch2009-05-301-1/+15
| | | | | | | | | - Add jtag_interface_quit, factored from exit_handler() in openocd.c. - Remove its extern declaration. - Add static keyword to its definition. git-svn-id: svn://svn.berlios.de/openocd/trunk@1952 b42882b7-edfa-0310-969c-e2dbd0fdcd60