summaryrefslogtreecommitdiff
path: root/src/xsvf/xsvf.c
Commit message (Collapse)AuthorAgeFilesLines
* XSVF: bugfix handling state pathsDavid Brownell2009-10-291-15/+100
| | | | | | | | | | | | | | | | | | | | | | | Implement XSVF support for detailed state path transitions, by collecting sequences of XSTATE transitions into paths and then calling pathmove(). It seems that the Xilinx tools want to force state-by-state transitions instead of relying on the standardized SVF paths. Like maybe there are XSVF tools not implementing SVF paths, which are all that we support using svf_statemove(). So from IRPAUSE, instead of just issuing "XSTATE DRPAUSE" they will issue XSTATES for each intermediate state: first IREXIT2, then IRUPDATE, DRSELECT, DRCAPTURE, DREXIT1, and finally DRPAUSE. This works now. Handling of paths that go *through* reset is a trifle dodgey, but it should be safe. Tested-by: Wookey <wookey@wookware.org> Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* XSVF: use svf_add_statemove()David Brownell2009-10-201-34/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | XSVF improvements: - Layer parts of XSVF directly over SVF, calling svf_add_statemove() instead of expecting jtag_add_statemove() to conform to the SVF/XSVF requirements (which it doesn't). This should improve XSTATE handling a lot; it removes most users of jtag_add_statemove(), and the comments about how it should really do what svf_add_statemove() does. - Update XSTATE logic to be a closer match to the XSVF spec. The main open issue here is (still) that this implementation doesn't know how to build and submit paths from single-state transitions ... but now it will report that error case. - Update the User's Guide to mention the two utility scripts for working with XSVF, and to mention the five extension opcodes. Handling of state transition paths is, overall, still a mess. I think they should all be specified as paths not unlike SVF uses, and compiled to the bitstrings later ... so that we can actually make sense of the paths. (And see the extra clocks, detours through RUN, etc.) Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* SVF/XSVF: comment and whitespace fixesDavid Brownell2009-10-191-39/+38
| | | | | | | | SVF: comment the predefined/default paths; make them static const SVF, XSVF: whitespace fixes, mostly so copyrights display sanely Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* Andreas Fritiofson <andreas.fritiofson@gmail.com> UTF8 fixesoharboe2009-07-171-1/+1
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@2549 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Remove whitespace at end of lines, step 2.zwelch2009-06-231-1/+1
| | | | | | | - Replace '\s*$' with ''. git-svn-id: svn://svn.berlios.de/openocd/trunk@2380 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Remove whitespace that occurs before ')'.zwelch2009-06-231-44/+44
| | | | | | | - Replace '[ \t]*[)]' with ')'. git-svn-id: svn://svn.berlios.de/openocd/trunk@2377 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Remove whitespace that occurs after '('.zwelch2009-06-231-40/+40
| | | | | | | - Replace '([ \t]*' with '('. git-svn-id: svn://svn.berlios.de/openocd/trunk@2376 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - Fixes '[<>]' whitespacezwelch2009-06-231-3/+3
| | | | | | | | | | - Replace ')\([<>]\)(' with ') \1 ('. - Replace ')\([<>]\)\(\w\)' with ') \1 \2'. - Replace '\(\w\)\([<>]\)(' with '\1 \2 ('. - Replace '\(\w\)\([<>]\)\(\w\)' with '\1 \2 \3'. git-svn-id: svn://svn.berlios.de/openocd/trunk@2375 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - Fixes '+' whitespacezwelch2009-06-231-2/+2
| | | | | | | | | | - Replace ')\(+\)(' with ') \1 ('. - Replace ')\(+\)\(\w\)' with ') \1 \2'. - Replace '\(\w\)\(+\)(' with '\1 \2 ('. - Replace '\(\w\)\(+\)\(\w\)' with '\1 \2 \3'. git-svn-id: svn://svn.berlios.de/openocd/trunk@2373 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - Fixes '=' whitespacezwelch2009-06-231-2/+2
| | | | | | | | | - Replace ')\(=\)\(\w\)' with ') \1 \2'. - Replace '\(\w\)\(=\)(' with '\1 \2 ('. - Replace '\(\w\)\(=\)\(\w\)' with '\1 \2 \3'. git-svn-id: svn://svn.berlios.de/openocd/trunk@2372 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - Replace 'for(' with 'for ('.zwelch2009-06-231-2/+2
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@2360 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - Replace 'switch(' with 'switch ('.zwelch2009-06-231-2/+2
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@2359 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - Replace 'while(' with 'while ('.zwelch2009-06-231-1/+1
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@2358 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - Replace 'if(' with 'if ('.zwelch2009-06-231-13/+13
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@2357 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Finish transforming 'u32' to 'uint32_t'.zwelch2009-06-181-4/+4
| | | | | | | | - Replace '\([^_]\)u32' with '\1uint32_t'. - Replace '^u32' with 'uint32_t'. git-svn-id: svn://svn.berlios.de/openocd/trunk@2281 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Transform 'u8' to 'uint8_t'zwelch2009-06-181-27/+27
| | | | | | | | - Replace '\([^_]\)u8' with '\1uint8_t'. - Replace '^u8' with 'uint8_t'. git-svn-id: svn://svn.berlios.de/openocd/trunk@2276 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Eliminate MixedCaps symbol from public JTAG TAP API:zwelch2009-06-051-1/+1
| | | | | | | | - 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
* Rename jtag_add_end_state to jtag_set_end_state since "add" implies thatoharboe2009-06-041-4/+4
| | | | | | 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
* no longer use jtag_add_xxx() to set end state to TAP_DRPAUSEoharboe2009-06-041-4/+4
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@2045 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Remove interface.h from public JTAG header, include it where required.zwelch2009-06-031-1/+0
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@2016 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
* added jtag_add_statemove() helper fn(actual fn written by Dick Hollonbeck, I ↵oharboe2009-06-011-94/+9
| | | | | | just moved it). git-svn-id: svn://svn.berlios.de/openocd/trunk@1980 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* More printf fixes stemming from format string change in r1882.zwelch2009-05-231-2/+3
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@1888 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Author: Rick Altherr <kc8apf@kc8apf.net>kc8apf2009-05-221-1/+1
| | | | | | | - printf conversion fixes for variably-sized types git-svn-id: svn://svn.berlios.de/openocd/trunk@1882 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Include assert.h in system.h to promote tree-wide use of assertions.zwelch2009-05-121-2/+0
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@1750 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Audit and eliminate redundant #include directives in src/{pld,svf,xsvf}.zwelch2009-05-111-12/+1
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@1710 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Remove redundant sys/types.h #include directives (now in types.h).zwelch2009-05-111-1/+0
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@1700 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* in_handler in_check_mask and in_check_value now removed from field. Last big ↵oharboe2009-05-081-1/+1
| | | | | | patch in the series of JTAG API cleanup. git-svn-id: svn://svn.berlios.de/openocd/trunk@1672 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* retire jtag_set_check_valueoharboe2009-05-081-10/+15
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@1668 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Dick Hollenbeck <dick@softplc.com> part deux of previous changes just committed.oharboe2009-05-061-18/+83
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@1617 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Dick Hollenbeck <dick@softplc.com> simplifies XSTATE handling, and protects ↵oharboe2009-05-061-88/+30
| | | | | | | | against illegal state transitions that might be in an SVF file. git-svn-id: svn://svn.berlios.de/openocd/trunk@1614 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* remove unecessary setting of deprecated fields to NULLoharboe2009-05-061-3/+3
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@1611 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* retire out_mask - not used anywhereoharboe2009-05-061-3/+3
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@1608 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Zach Welch <zw@superlucidity.net> fix -Wformat-security warnings (1 of 4)oharboe2009-04-211-1/+1
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@1481 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Zach Welch <zw@superlucidity.net> fix -Werror warningsoharboe2009-04-191-1/+1
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@1472 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Dick Hollenbeck <dick@softplc.com> work in progress oharboe2009-04-141-519/+514
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@1457 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Use C89/C99/C++ compliant boolean typeskc8apf2009-02-101-2/+2
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@1370 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - Cable driver helper API courtesy of Dick Hollenbeck <dick@softplc.com>kc8apf2009-02-031-15/+15
| | | | | | | - Formatting changes from uncrustify git-svn-id: svn://svn.berlios.de/openocd/trunk@1366 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* xvsf player fixes by Dick Hollenbeck <dick@softplc.com>kc8apf2009-01-231-13/+61
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@1360 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Dick Hollenbeck <dick@softplc.com> adds jtag_add_clocks() and implements ↵oharboe2009-01-091-277/+766
| | | | | | those in the bitbang and ft2232.c. nearly a full rewrite of the xsvf.c. improved some messaging only affected by _DEBUG_JTAG_IO_ git-svn-id: svn://svn.berlios.de/openocd/trunk@1308 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Change tap_state naming to be consistent with SVF documentation.kc8apf2008-12-131-38/+38
| | | | | | | Courtesy of Dick Hollenbeck <dick@softplc.com> git-svn-id: svn://svn.berlios.de/openocd/trunk@1232 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* jtag newtap change & huge manual updateduane2008-11-301-10/+17
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@1194 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Peter Hettkamp <peter.hettkamp@htp-tel.de> fix some problems with xsvf. ↵oharboe2008-11-031-1/+29
| | | | | | Still doesn't work. git-svn-id: svn://svn.berlios.de/openocd/trunk@1127 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - added myself to copyright on files i remember adding large contributions ↵ntfreak2008-09-201-1/+1
| | | | | | | | | for over the years - cleaned up headers to match rest of code - added missing svn props for previously added files git-svn-id: svn://svn.berlios.de/openocd/trunk@987 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* added yours sincerely for files where I feel that I've made non-trivial ↵oharboe2008-07-251-0/+3
| | | | | | contributions. git-svn-id: svn://svn.berlios.de/openocd/trunk@872 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - fixed xsvf_add_statemove()drath2008-05-031-7/+9
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@640 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* make jtag_add_statemove() internal to the driver.oharboe2008-03-311-11/+42
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@527 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - rename log functions to stop conflicts under win32 (wingdi)ntfreak2008-03-251-19/+19
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@523 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - convert all files to unix line-endingdrath2008-02-251-501/+501
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@347 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* From Michael Bruckoharboe2008-02-251-8/+8
| | | | | | | | | - bugfix in server.c - removed unused parameter from jtag_add_ir_scan et al. This wasn't necessary in hindsight but anyway. - arm11 source committed but not not in Makefile.am/target.c for now. git-svn-id: svn://svn.berlios.de/openocd/trunk@341 b42882b7-edfa-0310-969c-e2dbd0fdcd60