Commit Graph

48 Commits

Author SHA1 Message Date
oharboe 076017341d fix from Pavel Chromy
this patch fixes an issue in jtag_init - shall not reset jtag to NULL.
This causes jtag interface (USB device) not to be closed properly if jtag chain validation fails.

Once the underlaying jtag interface is initialized, jtag pointer shall be left untouched,
even in case of an error, so that proper cleanup can be done, see exit_handler in openocd.c


git-svn-id: svn://svn.berlios.de/openocd/trunk@372 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-28 10:24:46 +00:00
oharboe 7cdb05b7d6 jtag_add_shift() fn - minidriver work in progress.
git-svn-id: svn://svn.berlios.de/openocd/trunk@367 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-28 09:21:56 +00:00
oharboe a4cb112599 fix naming conflict under Windows.
git-svn-id: svn://svn.berlios.de/openocd/trunk@353 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-26 19:24:49 +00:00
oharboe 3e685d0bbe oopss.. another jtag minidriver reset gaffe.
git-svn-id: svn://svn.berlios.de/openocd/trunk@352 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-26 14:19:27 +00:00
oharboe bdbc833bac jtag_add_reset() minidriver gaffe fixed.
git-svn-id: svn://svn.berlios.de/openocd/trunk@351 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-26 13:21:57 +00:00
oharboe 4c7891eceb Next step in the JTAG minidriver. This should be fairly close to the final thing, but
I'm not calling it "done" quite yet.


git-svn-id: svn://svn.berlios.de/openocd/trunk@350 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-26 11:53:54 +00:00
oharboe 11fa148944 - jtag minidriver work in progress
- svn:eol-style=native. Let's see how that works out :-)


git-svn-id: svn://svn.berlios.de/openocd/trunk@349 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-26 06:25:22 +00:00
ntfreak 5279d519f8 - remove build warnings
git-svn-id: svn://svn.berlios.de/openocd/trunk@348 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-25 20:18:26 +00:00
drath 3d6bcf0792 - convert all files to unix line-ending
git-svn-id: svn://svn.berlios.de/openocd/trunk@347 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-25 17:48:04 +00:00
oharboe 375c5f85d2 formatting.
git-svn-id: svn://svn.berlios.de/openocd/trunk@345 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-25 15:12:00 +00:00
oharboe 81184adfb0 Fix from Pavel Chromy.
https://lists.berlios.de/pipermail/openocd-development/2008-February/001018.html

git-svn-id: svn://svn.berlios.de/openocd/trunk@343 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-25 14:50:31 +00:00
oharboe 687a9553c9 From Michael Bruck
- 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
2008-02-25 08:22:18 +00:00
oharboe e482118106 - using ERROR_COMMAND_SYNTAX_ERROR to print syntax in a couple of places
- some more flash cleanup of checking halted state
- moved output handler into options.c
- very slightly tweaked server.c to make it a bit more compatible with eCos
- retired arch_state. Not quite sure how I managed to leave that out last time.

git-svn-id: svn://svn.berlios.de/openocd/trunk@338 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-25 07:50:03 +00:00
oharboe 3fe23f94fb sharpend JTAG docs w.r.t. hw fifo implementations and retired jtag_cancel_queue() which is inheritely incompatible with a hw fifo concept.
git-svn-id: svn://svn.berlios.de/openocd/trunk@328 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-24 17:33:00 +00:00
ntfreak e7084a0c87 - fix broken JTAG error handling
- Allow all commands to be executed during config stage
- Help now works for config commands
- make var args handling follow the rules more closely
Thanks Øyvind Harboe

git-svn-id: svn://svn.berlios.de/openocd/trunk@305 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-18 15:41:38 +00:00
mifi 8f6d142b95 - added patch to change pathmove handling
https://lists.berlios.de/pipermail/openocd-development/2008-January/000678.html

(thanks to Øyvind for the patch)

git-svn-id: svn://svn.berlios.de/openocd/trunk@286 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-10 12:58:24 +00:00
ntfreak 33f72055b7 Added patch to stop SEGFAULT with missing jtag config lines. Thanks Øyvind Harboe
https://lists.berlios.de/pipermail/openocd-development/2008-January/000731.html

git-svn-id: svn://svn.berlios.de/openocd/trunk@280 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-04 08:25:07 +00:00
mifi 06f33996e8 - added patch to fix brocken STR9 line
(thanks to oyvind Harboe for the patch)

git-svn-id: svn://svn.berlios.de/openocd/trunk@273 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-01-22 17:54:56 +00:00
mifi 167ce32a7c - added patch "remove error handler as planned"
https://lists.berlios.de/pipermail/openocd-development/2008-January/000665.html
(thanks to oyvind Harboe for the patch)

git-svn-id: svn://svn.berlios.de/openocd/trunk@260 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-01-20 13:52:06 +00:00
ntfreak 13eac429e1 - debug handler file not closed - (thanks to oyvind harboe for the patch)
- arm_simulate_step called incorrect arm_evaluate_opcode when in thumb mode

git-svn-id: svn://svn.berlios.de/openocd/trunk@254 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-01-11 20:38:43 +00:00
mifi 2e01a1ad19 - added gdb flash fixes patch
https://lists.berlios.de/pipermail/openocd-development/2007-December/000548.html
- added synthesize in_check_mask/value and error handler patch
https://lists.berlios.de/pipermail/openocd-development/2008-January/000554.html

(thanks to oyvind harboe for these patches)

git-svn-id: svn://svn.berlios.de/openocd/trunk@248 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-01-07 17:11:11 +00:00
mifi 02f3765351 - added patch for new flash functionality like:
flash verify_image and flash erase_address.
- added patch for new parport_write_on_exit command.
Even this patch will fix some memory leaks.

(thanks too oyvind and Spen for these patches)

git-svn-id: svn://svn.berlios.de/openocd/trunk@240 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-12-18 21:20:28 +00:00
mifi 9c999216b1 - Fixing two compiler warnings
- Reducing  stack usage for recursive scripts
- Do not exit on bogus arguments to reset_config. No longer exit the application upon bogus arguments to reset_config, but return errors.

thanks to Øyvind Harboe for these patches.

git-svn-id: svn://svn.berlios.de/openocd/trunk@226 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-12-10 19:46:04 +00:00
mifi 9e6cec0dd3 - added patch to display device information as INFO too
- added patch which fixes a crash upon flash write error
- added patch which will improve the reset handling when 
  SRST is tied to TRST

(thanks to Oyvind Harboe for these patches)

git-svn-id: svn://svn.berlios.de/openocd/trunk@218 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-12-09 15:36:21 +00:00
drath 29000b204d - reworked presto.c to allow use of either FTD2XX or libftdi (libftdi not functional yet). Configure option changed from --enable-presto to
--enable-presto_ftd2xx and --enable-presto_libftdi
- completed trace point support for use with ARM7/9 DCC
- completed debug message output with support for HEX dumps (1, 2 or 4 byte quantities)
- fixed bug in delete_debug_msg_receiver (thanks to Pavel Chromy)
- fixed bug in image_add_section (thanks to Pavel Chromy)
- at91sam7 sector erase reworked (thanks to Pavel Chromy)
- merge consecutive sections during flash image write to work around possible section alignment issues with LPC2000 targets



git-svn-id: svn://svn.berlios.de/openocd/trunk@194 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-08-14 09:48:54 +00:00
drath 20e4e77cdf - renamed M5960 USB JTAG to "flyswatter"
- make ep93xx and at91rm9200 bitbang JTAG interfaces dependant on ARM host (thanks to Vincent Palatin)
- various whitespace fixes
- removed various warnings
- add support for Debian GNU/kFreeBSD (thanks to Uwe Hermann)
- fix OpenOCD compilation for various platforms (thanks to Uwe Hermann and Vincent Palatin)
- switched order of JTAG chain examination and validation (examine first, then multiple validation tries even if examination failed)
- added target_request subsystem to handle requests from the target (debug messages and tracepoints implemented, future enhancements might include
semihosting, all ARM7/9 only for now)
- added support for GDB vFlashXXX packets (thanks to Pavel Chromy)
- added support for receiving data via ARM7/9 DCC
- reworked flash writing. the 'flash write' command is now deprecated and replaced by 'flash write_binary' (old syntax and behaviour) and 'flash
write_image' (write image files (bin, hex, elf, s19) to a target).
- added support for AMD/ST/SST 29F400B non-cfi flashes



git-svn-id: svn://svn.berlios.de/openocd/trunk@190 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-08-10 19:44:06 +00:00
drath 290e01c62a - reformat src/jtag/bitq.c (thanks to Pavel Chromy)
- fix multiple reads from FT2232 into same buffer location (thanks to Magnus Lundin)
- retry JTAG chain validation (thanks to Magnus Lundin)
- reworked GDB packet input handling (thanks to Pavel Chromy)
- output error message when setting a watchpoint failed
- removed duplicate out-of-bounds check in at91sam7.c (thanks to Pavel Chromy)


git-svn-id: svn://svn.berlios.de/openocd/trunk@181 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-07-25 10:06:57 +00:00
drath 1429d2c659 - added support for Asix Presto JTAG interface (thanks to Pavel Chromy and Asix for making this addition possible)
- added support for usbprog (thanks to Benedikt Sauter)
- make OpenOCD listen for WM_QUIT messages on windows (thanks to Pavel Chromy)
- register at_exit handler to do necessary unregistering (thanks to Pavel Chromy)
- added dummy ETM capture driver to allow ETM to be registered without a capture driver


git-svn-id: svn://svn.berlios.de/openocd/trunk@180 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-07-15 11:19:33 +00:00
drath ffb51c23fd - added support for Intel/Marvel PXA27x (XScale) targets
- added support for scans coming from or ending in Shift-DR or Shift-IR to bitbang code (required for XScale debugging)
- cleaned up errror handlers. only use when there's a catchable error
- fix segfault when etm was configured without a valid driver



git-svn-id: svn://svn.berlios.de/openocd/trunk@176 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-06-21 13:15:22 +00:00
drath 237e894805 - split fileio handling into fileio part and image handling
- reworked etm/etb into a generic etm part with trace capture drivers (currently only etb supported)
- added XScale debug handler binary to repository
- added Thumb disassembling (thanks to Vincent Palatin for this patch)
- added support for non-CFI compatible flashes to cfi driver (currently only SST39VFxxx devices supported)
This checkin is experimental, not suitable for general use


git-svn-id: svn://svn.berlios.de/openocd/trunk@155 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-05-29 11:23:42 +00:00
drath 054b091623 - further work on ETB decoding (not yet functional)
- fixed several uses of uninitialized bits (Thanks to Vincent Palatin for finding and fixing these bugs)


git-svn-id: svn://svn.berlios.de/openocd/trunk@145 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-05-05 11:02:03 +00:00
drath 22bc5194ae - added support for error handlers to JTAG scan commands (jtag_[plain_][ir|dr]_scan)
- catch apparently broken JTAG IR scan after ARM926EJ-S CP15 operations
- added "arm7_9 dump_etb" command


git-svn-id: svn://svn.berlios.de/openocd/trunk@142 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-04-25 20:15:59 +00:00
drath 5ed126c4f9 - fixed arm926 cp15 command bug (thanks to Vincent Palatin for this patch)
- fixed compiler warnings throughout the code (thanks to Vincent Palatin for this patch)
- added support for accessing ETB (embedded trace buffer) registers


git-svn-id: svn://svn.berlios.de/openocd/trunk@134 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-03-26 21:47:26 +00:00
drath cb58279653 - reworked file i/o. every fileaccess (target, flash, nand, in future configuration, too) should now go through the fileio subsystem
- added support for reading IHEX files (through fileio)
- load/dump_binary renamed to the more generic load/dump_image <file> <address> ['bin'|'ihex']
- added NAND framework (preliminary)
- added support for the LPC3180 SLC and MLC NAND controllers (preliminary)
- fix initialization for parport
- gw16012 fixes/cleanups
- added EmbeddedICE version 7 (preliminary, reported on two LPC23xx devices so far)
- added 'arm7_9 etm <target#>' configuration command to enable access to the ETM registers


git-svn-id: svn://svn.berlios.de/openocd/trunk@132 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-03-15 13:36:44 +00:00
drath 4102c78432 - merged several changes from XScale
- complain about identify_chain scan with all bits one (jtag communication problem)
- add 0x80000 as a valid size for lpc2000_v2 flash banks (previously only the user accessible 0x7d000 were valid)


git-svn-id: svn://svn.berlios.de/openocd/trunk@129 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-01-31 10:59:20 +00:00
drath 4fc97d3f27 - fix incorrect parsing of whitespace in command.c (thanks to Magnus Lundin)
- fix infinite recursion in target_init_handler (thanks to jw and Magnus Lundin)
- fix CFI flash handlign with buswidth < 32bit (thanks to Daniele Orio for reporting this)
- add support for reading JTAG device id (currently only as debug output on startup)
- cleaned up handling of EmbeddedICE registers. Supported functionality and register size now determined by EmbeddedICE version number.
- small cleanups/fixes


git-svn-id: svn://svn.berlios.de/openocd/trunk@124 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-01-22 14:47:00 +00:00
drath a4f2e1eaac - disabled FT2232 debug output (that code should be fairly stable)
- fixed bug in jtag.c where JTAG command type was wrong for PATHMOVE commands
- added lattice ISP cable (experimental)
- properly initialize parallel port (clear tristate bit)
- fixed jtag/Makefile.am that failed with some versions of autotools
- print error number if read() in gdbserver.c failed on Windows
- fixed handling of opcodes with bits 27-25 b011 (comment was correct, code had a bug)
- added support for AT91SAM7SE internal flash


git-svn-id: svn://svn.berlios.de/openocd/trunk@122 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-01-09 17:19:41 +00:00
drath e9297b40b9 - added a PLD (programmable logic device) subsystem for FPGA, CPLD etc. configuration
- added support for loading .bit files into Xilinx Virtex-II devices
- added support for the Gateworks GW16012 JTAG dongle
- merged CFI fixes from XScale branch
- a few minor fixes


git-svn-id: svn://svn.berlios.de/openocd/trunk@116 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2006-11-22 13:03:10 +00:00
drath 456737b08b - several small fixes (thanks to Magnus Lundin and Spencer Oliver)
- added support for using Luminary Micro development board 'evb_lm3s811' as a JTAG interface (thanks to Magnus Lundin)


git-svn-id: svn://svn.berlios.de/openocd/trunk@106 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2006-10-23 14:02:34 +00:00
drath a582e9a8d1 - str9x flash support (Thanks to Spencer Oliver)
- str75x flash support (Thanks to Spencer Oliver)
- correct reporting of T-Bit in CPSR (Thanks to John Hartman for reporting this)
- core-state (ARM/Thumb) can be switched by modifying CPSR
- fixed bug in gdb_server register handling
- register values > 32-bit should now be supported
- several minor fixes and enhancements



git-svn-id: svn://svn.berlios.de/openocd/trunk@100 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2006-09-28 10:41:43 +00:00
drath 3acb107b9a - endianess fixes everywhere but in the flash code. flashing might still be broken on big-endian targets and/or hosts
- added access to ARM920T vector catch register (via generic register mechanism)
- don't disable linefills on ARM920T cores - this lead to lockups when accessing lines already contained in cache
- read content of ARM920T cache and tlb into file (arm920t read_flash/read_mmu commands)
- memory reading improved on ARM7/9, can be further accelerated with new "arm7_9 fast_memory_access enable" command (renamed from fast_writes)
- made in_handler independent from in field (makes the handler more flexible)
- added timeout to ft2232 when using D2XX library
- fixed STR7x protection bit handling on second bank (thanks to Bernard)
- added support for using the OpenOCD on AT91RM9200 systems (thanks to Anders Larsen)
- fixed AT91SAM7 flash handling when not running from 32kHz clock (thanks to Anders Larsen)


git-svn-id: svn://svn.berlios.de/openocd/trunk@90 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2006-08-31 12:41:49 +00:00
drath 5fcd1d704c - renamed jtag_interface_t.support_statemove to jtag_interface_t.support_pathmove (it is used to indicate jtag_add_pathmove support)
- fixed small bug in str7x.c that printed an address instead of the target number in an error message
- added support for Olimex ARM-USB-OCD. The new ft2232 layout is called "olimex-jtag"


git-svn-id: svn://svn.berlios.de/openocd/trunk@87 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2006-08-17 14:53:15 +00:00
drath ec0f06db11 - added support for FreeBSD ppi (parallel port access similar to /dev/parport on linux) (thanks to Darius for this patch)
- unified 'ftd2xx' and 'ftdi2232' into a single interface 'ft2232'. The library used to access the hardware is choosen during configure with --enable-ft2232_ftd2xx or --enable-ft2232-libftdi.


git-svn-id: svn://svn.berlios.de/openocd/trunk@83 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2006-08-11 17:49:41 +00:00
drath ca1e5ee1f4 - fixed jtag_n[st]rst_delay. time is now miliseconds (as documented), not microseconds
git-svn-id: svn://svn.berlios.de/openocd/trunk@82 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2006-08-06 12:14:02 +00:00
drath 7d24476146 - allow building for MinGW using either -mno-cygwin or the MinGW gcc
- added GiveIO support to the amt_jtagaccel driver
- explicitly disable loopback mode for FT2232 devices
- changed configuration options n[st]rst_delay to jtag_n[st]rst_delay
- shutdown network services on exit


git-svn-id: svn://svn.berlios.de/openocd/trunk@80 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2006-08-01 09:45:22 +00:00
drath 1341eb3b0a - added configurable delays after reset lines get deasserted. useful if reset circuitry keeps lines asserted for too long.
- additional debug output when opening the parallel port
- fixed counting of available arm7/9 watchpoint units
- 'flash write' now displays elapsed time


git-svn-id: svn://svn.berlios.de/openocd/trunk@79 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2006-07-30 11:25:43 +00:00
drath 82d2633b5f - Added support for native MinGW builds (thanks to Spencer Oliver and Michael Fischer) - you still need to install GiveIO (not part of OpenOCD)
- Added state-move support to ftd2xx and bitbang JTAG drivers (required for XScale, possibly useful for other targets, too)
- various fixes


git-svn-id: svn://svn.berlios.de/openocd/trunk@78 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2006-07-17 14:13:27 +00:00
drath 8b4e882a16 - prepare OpenOCD for branching, created ./trunk/
git-svn-id: svn://svn.berlios.de/openocd/trunk@64 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2006-06-02 10:36:31 +00:00