Commit Graph

6863 Commits (71b23bb8eef86d47b11929ab833b248dcb0ae4f2)

Author SHA1 Message Date
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
ntfreak e8af4de0a7 -- corrected embedded ice definitions
-- changed arm966e to use standard arm9_7 reset handling

git-svn-id: svn://svn.berlios.de/openocd/trunk@146 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-05-10 14:42:23 +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
ntfreak a1562e8f56 - added support for Hitex comstick.
git-svn-id: svn://svn.berlios.de/openocd/trunk@144 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-04-28 08:44:22 +00:00
drath 2f7eca4707 - improved ETB trace output
- use BKPT instruction on cores supporting it (ARM926EJ-S, ARM966E-S)
- correctly handle endianness of software breakpoint instruction


git-svn-id: svn://svn.berlios.de/openocd/trunk@143 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-04-26 14:41:27 +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 04dc98916d - explicitly disable monitor mode on ARM7/9 targets
- added "prepare_reset_halt()" to target_type_t, which allows reset_halt to be prepared before a reset is asserted, possibly preventing communication with the target
- arm7/9 devices now use a breakpoint at 0x0 or reset vector catching for debug out of reset


git-svn-id: svn://svn.berlios.de/openocd/trunk@141 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-04-16 14:58:16 +00:00
drath c62e5b4c23 - allow multiple USB vendor and product ids when searching for connected FT2232 based JTAG interfaces (thanks to Werner Almesberger for this patch)
git-svn-id: svn://svn.berlios.de/openocd/trunk@140 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-04-16 11:28:04 +00:00
drath 999f86b92b - correctly mask out bits that aren't part of a copied buffer
- fixed arm926ej-s CP15 register access handling
- correctly identify SYSCLK source in LPC3180 NAND flash controller driver


git-svn-id: svn://svn.berlios.de/openocd/trunk@139 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-04-12 13:27:23 +00:00
drath a48a5e6d94 - disabled excessive debug output in jtag.h
- output all of EmbeddedICE version register in error message
- update OpenOCD's idea of the current core mode, and immediately change core mode, on CPSR changes
- added support for CFI cmdset 0002 (patch by Andrew Dyer, thanks a lot)
- enhanced CFI cmdset 0002 support to Atmel AT49 flashes (thanks to Joerg Krein for providing test hardware)


git-svn-id: svn://svn.berlios.de/openocd/trunk@138 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-04-11 14:25:12 +00:00
drath 98da554bbd - added support for Turtelizer 2 (USB JTAG interface) (Thanks to Michael Fischer for this patch)
- fixed description of arm9tdmi vector_catch command


git-svn-id: svn://svn.berlios.de/openocd/trunk@137 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-03-30 09:56:31 +00:00
drath 5f548150a4 - added "arm9tdmi vector_catch ['all'|'none'|'vec1 [vec2 [...]]']" command
- added missing arm926ej-s cp15 patch (thanks Vincent Palatin)


git-svn-id: svn://svn.berlios.de/openocd/trunk@136 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-03-29 14:59:36 +00:00
drath 4a5f45e87d - merged XScale branch back into trunk
- fixed some compiler warnigns in amt_jtagaccel.c, bitbang.c, parport.c
- free working area and register stuff if str7x block write algorithm failed
- check PC after exiting a target algorithm in armv4_5.c


git-svn-id: svn://svn.berlios.de/openocd/trunk@135 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-03-28 16:31:55 +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 9b13ffe4e2 - added missing files for last commit
git-svn-id: svn://svn.berlios.de/openocd/trunk@133 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-03-16 09:12:22 +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 e0c2e30660 - fixed libftdi initialization
git-svn-id: svn://svn.berlios.de/openocd/trunk@131 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-02-20 13:47:32 +00:00
drath 78ecef2aed - add missing parentheses around macro parameters (thanks to Matthias Bauch for noticing this bug and providing a fix)
git-svn-id: svn://svn.berlios.de/openocd/trunk@130 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-02-03 16:00:14 +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 c7383a8bea - disabled use of single-step bit for EmbeddedICE version 6 cores
git-svn-id: svn://svn.berlios.de/openocd/trunk@128 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-01-26 12:40:48 +00:00
drath 30ebf9fece - disabled JTAG debug output
- fixed version information


git-svn-id: svn://svn.berlios.de/openocd/trunk@127 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-01-25 10:32:02 +00:00
drath 81e8e44cf0 - Added support for ARM926EJ-S based cores
- Added contributors to AUTHORS file
- Added link to Joern Kaipf's OOCD-Link


git-svn-id: svn://svn.berlios.de/openocd/trunk@126 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-01-25 10:30:42 +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
ntfreak adaed4c1c7 - added support for ST flashlink cable
git-svn-id: svn://svn.berlios.de/openocd/trunk@123 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-01-18 18:54:04 +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 e8947e0d13 - checked in missing configure.in changes for GW16012 support
git-svn-id: svn://svn.berlios.de/openocd/trunk@117 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2006-11-22 16:22:11 +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 03e8f264f4 - added support for the oocd-link (http://www.joernonline.de/dw/doku.php?id=en:projects:oocdlink)
- fixed breakpoint handling (this changes the target_t interface)


git-svn-id: svn://svn.berlios.de/openocd/trunk@113 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2006-11-07 10:54:19 +00:00
drath 83440065c0 - correctly enter debug state on a "soft_reset_halt" command
- several small fixes
- retry reading from a FT2232 device on incomplete reads


git-svn-id: svn://svn.berlios.de/openocd/trunk@110 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2006-11-05 17:38:35 +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 e8ead33804 - fixed endianness handling in arm7_9_read_core_reg (thanks to Magnus Lundin for reporting this)
- correctly handle ft2232_device_desc and ft2232_serial when both are given at the same time


git-svn-id: svn://svn.berlios.de/openocd/trunk@104 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2006-10-19 10:07:24 +00:00
drath 81294537cd - allow FT2232 devices to be opened by serial number instead of device description ('ft2232_serial <serial>' command)
- redirect output from target event scripts (currently only reset) to the daemon output (INFO:)
- some minor fixes and enhancements


git-svn-id: svn://svn.berlios.de/openocd/trunk@103 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2006-10-12 16:20:47 +00:00
drath 94ffacdd93 - added support for American Microsystem's M5960 (FT2232 based USB JTAG interface)
- added support for AT91SAM7A devices (thanks to Magnus Lundin)
- updated README with pointer to Amontec's JTAGkeyTiny


git-svn-id: svn://svn.berlios.de/openocd/trunk@102 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2006-10-06 15:46:25 +00:00
drath 5b747eeb4a - fixed regression in gdb_server.c (Thanks to Michael Fischer for finding these bugs)
git-svn-id: svn://svn.berlios.de/openocd/trunk@101 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2006-10-03 09:56:41 +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 b855855445 - allow writes to second flash bank on STR71x devices (cleaned up sector list building)
- cleaned up str7x flash erase and protect code (use two accesses to erase sectors in both banks)


git-svn-id: svn://svn.berlios.de/openocd/trunk@98 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2006-09-12 18:56:48 +00:00
drath 83eeaa6280 - set the T bit in the CPSR when the core was executing in Thumb state. Mask the T bit from the CPSR for all CPSR-writing operations
git-svn-id: svn://svn.berlios.de/openocd/trunk@97 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2006-09-09 11:26:15 +00:00
drath 50141aebfb - free working area used to store flash write buffer
git-svn-id: svn://svn.berlios.de/openocd/trunk@96 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2006-09-07 17:50:02 +00:00
drath 3f74f764c7 - integrated patch from Magnus Lundin that fixes at91sam7 flash timing bugs and possible endianness problems (big endian hosts)
- correctly write trailing bytes on str7x flashes
- speed up str7x flash writing by offloading the algorithm to the target


git-svn-id: svn://svn.berlios.de/openocd/trunk@95 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2006-09-07 17:36:34 +00:00
drath 028f59ede5 - added debug output for D/I FSR and FAR (arm920t)
- fixed bug that caused CPSR to be corrupted in Thumb mode


git-svn-id: svn://svn.berlios.de/openocd/trunk@93 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2006-09-04 10:31:28 +00:00
drath e2e5917109 - made lpc2000 code endianness safe (support big-endian hosts, target is always little)
git-svn-id: svn://svn.berlios.de/openocd/trunk@92 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2006-08-31 14:33:33 +00:00
drath 4cdb7c5a53 - added missing AT91RM9200 files
- bumped OpenOCD version date


git-svn-id: svn://svn.berlios.de/openocd/trunk@91 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2006-08-31 12:55:54 +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 da9eedc0f2 - made bp command more verbose
- fixed bug that could result in register corruption on arm920t targets


git-svn-id: svn://svn.berlios.de/openocd/trunk@89 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2006-08-20 15:10:32 +00:00
drath 1c1ae777e1 - updated version info in openocd.c
git-svn-id: svn://svn.berlios.de/openocd/trunk@88 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2006-08-17 14:56:22 +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 9a830747b2 - fixed bug in .cfg files. Thanks to Michael Fischer for noticing this.
git-svn-id: svn://svn.berlios.de/openocd/trunk@86 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2006-08-14 15:45:11 +00:00
drath 91f58cccbc - updated configuration examples, installation instructions and README (including list of supported JTAG interfaces)
git-svn-id: svn://svn.berlios.de/openocd/trunk@85 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2006-08-14 10:58:12 +00:00
drath 15294929e2 - added support for the Signalyzer USB->JTAG dongle (www.signalyzer.com)
git-svn-id: svn://svn.berlios.de/openocd/trunk@84 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2006-08-14 10:02:55 +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