Commit Graph

884 Commits

Author SHA1 Message Date
oharboe 1812a3535c - retired unused jtag events. The code was incorrect
- hopefully clarified the difference between TRST and TMS reset.
- added DEBUG() statements w.r.t. state changes
- TRST released and moving out of TAP_TLR are completely
different events. Only TRST released has a DEBUG() statement


git-svn-id: svn://svn.berlios.de/openocd/trunk@496 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-11 21:16:57 +00:00
ntfreak 0fe2a5435a - 16 and 32 bit unaligned accesses supported
- uses packed transfers for 8/16bit read/writes greater than 4bytes
- 8/16bit transfers now use address auto increment


git-svn-id: svn://svn.berlios.de/openocd/trunk@495 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-11 18:39:43 +00:00
oharboe 09e303bb8e retire unused code.
git-svn-id: svn://svn.berlios.de/openocd/trunk@494 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-11 11:19:15 +00:00
oharboe ac5fb03521 JTAG_END_STATE is now retired. It is no longer queued.
git-svn-id: svn://svn.berlios.de/openocd/trunk@493 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-11 11:03:40 +00:00
oharboe 9a9cc91bcb - fixed jtag_add_reset(). It no longer causes jtag_execute_queue() to
fail for two of it's return codes. A little bit weird, but compatible with
  existing codebase.
- tightend up error handling. Since the jtag_xxx() is a queue that is either 
  executed as things are added(hw queue) or a software queue, then
  errors can only be caught during jtag_execute_queue(). No error
  code is therefore returned from the queuing fn's. 

git-svn-id: svn://svn.berlios.de/openocd/trunk@492 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-11 09:06:00 +00:00
oharboe 970e16603b Pavel Chromy: telnet line buffer size checking, history does not store repeating lines, improved history printing, log callback tweak
git-svn-id: svn://svn.berlios.de/openocd/trunk@491 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-11 08:15:54 +00:00
oharboe 7dc025321c backed out changes from 483.
git-svn-id: svn://svn.berlios.de/openocd/trunk@490 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-10 20:19:52 +00:00
oharboe 088bba4391 more target scripts wip.
git-svn-id: svn://svn.berlios.de/openocd/trunk@489 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-10 20:12:46 +00:00
oharboe 32eea2a254 more target scripts wip.
git-svn-id: svn://svn.berlios.de/openocd/trunk@488 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-10 20:12:35 +00:00
oharboe cce7512ca9 Pavel Chromy: hopefully perfection for async output and prompt/partially typed command line handling.
git-svn-id: svn://svn.berlios.de/openocd/trunk@487 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-10 20:05:48 +00:00
oharboe e378eeec36 Pavel Chromy: the attached patch refines PRESTO support and makes it work with libftdi.
git-svn-id: svn://svn.berlios.de/openocd/trunk@486 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-10 17:24:44 +00:00
oharboe e7b7025cdd prettier async output
git-svn-id: svn://svn.berlios.de/openocd/trunk@485 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-10 15:07:21 +00:00
oharboe 703dc714c8 - fixed a problem with big endian XScale and GDB register packets.
- hmm..... did I screw up? Was XScale and not gdb_server busted here?
  My thinking was that OpenOCD has a canonical internal representation
  of registers that match GDB's expectations


git-svn-id: svn://svn.berlios.de/openocd/trunk@484 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-10 14:14:15 +00:00
oharboe e6dac739cf - the jtag chain is examined and validated after GDB & telnet servers
are up and running. The examination and validation is actually
 "optional" from the point of view of GDB + telnet servers.
 Multiple targets should work fine with this.
- jtag_speed is dropped(divisor is increased), if jtag examination and
 validation fails.
- the chain is validated 10x to catch the worst jtag_speed offences
- added LOG_SILENT that can be used to shut up log. Feeble
 ersatz for try+catch.
- GDB register packets are now always replied in order to make sure
 that GDB connect works. If the target is not halted, then these
 packets contain dummy values.



git-svn-id: svn://svn.berlios.de/openocd/trunk@483 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-10 14:07:28 +00:00
oharboe 0424155dfc - Fixed various error handling when looking for memory leaks
- Fixed memory leak in gdb_server.c
- pushed "Error:" statements up into fn's that know something about what went wrong
- load_image now fails if target_write_memory() fails
- only issue an asynchronous halt() upon connect of GDB. Synchronous halt/reset
  doesn't really work as what's required to initialize the target might involve a
  special monitor sequence for the target in question
- syntax error handling improved(fewer exit()'s)


git-svn-id: svn://svn.berlios.de/openocd/trunk@482 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-10 12:11:07 +00:00
oharboe 0a34980f2b - LOG_SILENT can be used to silence the log(needed in upcoming patches)
- ERROR_FAIL - added to emphasize that information about what went wrong is
 contained in Error: log statements and not in a 32 bit return value.

git-svn-id: svn://svn.berlios.de/openocd/trunk@481 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-10 12:04:30 +00:00
oharboe ecb227f10c added stm32.cfg to install list
git-svn-id: svn://svn.berlios.de/openocd/trunk@480 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-10 10:20:26 +00:00
oharboe 4486a8f814 Michael Bruck: fix warning
git-svn-id: svn://svn.berlios.de/openocd/trunk@479 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-09 19:22:51 +00:00
ntfreak 5808db821f - add stm32 target script
git-svn-id: svn://svn.berlios.de/openocd/trunk@478 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-09 09:28:12 +00:00
ntfreak ddd987502a - added more TARGET_HALTED checks for the read/write_memory handlers
- added new commands arm11 mrc and arm11 mcr to generate these instructions during debug
Thanks Michael Bruck

git-svn-id: svn://svn.berlios.de/openocd/trunk@477 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-08 17:28:28 +00:00
oharboe 21bc69bc37 typo.
git-svn-id: svn://svn.berlios.de/openocd/trunk@476 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-08 10:21:56 +00:00
oharboe c78b4fe426 - Improves error handling upon GDB connect
- switch to synchronous halt during connect. This fixes the bug
  where poll() was not invoked between halt() and servicing the
  'g' register packet
- halt() no longer returns error code when target is already halted, just
  logs a warning. Only the halt() implementation can say anything
  meaningful about why a halt() failed, so error messages are pushed
  up to halt()
- fixed soft_reset_halt infinite loop bug in arm7_9_common.c. The rest
  of the implementations are still busted.
- by using USER() instead of command_print() the log gets the 
  source + line #. Nice.
- no longer invoke exit() if soft_reset_halt fails. A reset can often 
  fix the problem.

git-svn-id: svn://svn.berlios.de/openocd/trunk@475 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-07 21:49:16 +00:00
oharboe 29fc9b2596 Asynchronous output information from e.g. a halt is now displayed again.
git-svn-id: svn://svn.berlios.de/openocd/trunk@474 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-07 21:41:34 +00:00
vpalatin a3f35e348e - fix cross endian ELF loading
git-svn-id: svn://svn.berlios.de/openocd/trunk@473 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-07 16:51:37 +00:00
ntfreak 984e9f0e44 - The elf loader incorrectly assumed that the program header always follows the ELF header. (Thanks Michael Bruck)
git-svn-id: svn://svn.berlios.de/openocd/trunk@472 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-07 16:38:02 +00:00
oharboe d3f3f61498 Michael Bruck: fixed warnings
git-svn-id: svn://svn.berlios.de/openocd/trunk@471 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-07 16:18:56 +00:00
oharboe 081bc06112 Edgar Grimberg, fix arm926ejs_examine_debug_reason return value.
git-svn-id: svn://svn.berlios.de/openocd/trunk@470 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-07 16:15:46 +00:00
oharboe 8bc200e1fe Added some timeout handling to XScale so OpenOCD doesn't get
completely stuck when the target needs a reset.

git-svn-id: svn://svn.berlios.de/openocd/trunk@469 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-07 11:44:46 +00:00
oharboe c9f1b34077 minor corrections for target scripts.
git-svn-id: svn://svn.berlios.de/openocd/trunk@468 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-07 11:42:03 +00:00
ntfreak 189ef12a52 - correct spelling typo in stm32x flash driver
git-svn-id: svn://svn.berlios.de/openocd/trunk@467 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-07 11:29:08 +00:00
oharboe 6e2acffa9c Pavel Chromy, the patch fixes an issue with PRESTO & FTD2XX under Linux.
git-svn-id: svn://svn.berlios.de/openocd/trunk@466 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-07 11:24:44 +00:00
oharboe d9ac6b1d09 alloc_printf and alloc_vprintf
git-svn-id: svn://svn.berlios.de/openocd/trunk@465 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-07 10:55:59 +00:00
oharboe 96261e8277 wi-9c target scripts
git-svn-id: svn://svn.berlios.de/openocd/trunk@464 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-07 10:54:43 +00:00
oharboe c317ffe243 Removed code that inserted prompt after printing asynchronous information. Current implementation was broken beyond repair.
git-svn-id: svn://svn.berlios.de/openocd/trunk@463 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-07 10:53:50 +00:00
mifi e66f9aaba9 - added str912/str710_program.script
- added test infos from r459

git-svn-id: svn://svn.berlios.de/openocd/trunk@462 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-07 08:46:24 +00:00
oharboe e199d7bd2c removed excessive debug output. Perhaps a debug_level 4 should be introduced? Hopefully it can be avoided as this was the only case where debug output was going through the roof.
git-svn-id: svn://svn.berlios.de/openocd/trunk@461 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-07 08:07:07 +00:00
oharboe 55b4d9a984 Cosmetic fixes from Uwe Hermann
git-svn-id: svn://svn.berlios.de/openocd/trunk@460 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-07 06:58:31 +00:00
oharboe d74d72c73a Pavel Chromy: va_copy should always be paired with va_end.
git-svn-id: svn://svn.berlios.de/openocd/trunk@459 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-06 17:13:33 +00:00
oharboe ff59d1c495 retired
git-svn-id: svn://svn.berlios.de/openocd/trunk@458 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-06 17:11:35 +00:00
oharboe cc4466dfb4 use jtag_execute_queue() instead of jtag->execute_queue()
git-svn-id: svn://svn.berlios.de/openocd/trunk@457 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-06 14:20:12 +00:00
oharboe 301f47ddb5 tms is never referenced, confusing old code left behind probably.
git-svn-id: svn://svn.berlios.de/openocd/trunk@456 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-06 14:19:29 +00:00
oharboe 6be6ba7151 comment.
git-svn-id: svn://svn.berlios.de/openocd/trunk@455 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-06 14:16:45 +00:00
oharboe 2070559d95 Pavel Chromy: faster alloc_printf()
git-svn-id: svn://svn.berlios.de/openocd/trunk@454 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-06 12:38:11 +00:00
oharboe 652a5b18b4 Pavel Chromy: performance tweak of gdb_put_packet_inner() removing malloc and avoiding memcpy of larger blocks of data,
git-svn-id: svn://svn.berlios.de/openocd/trunk@453 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-06 12:04:27 +00:00
oharboe 209d7c0edc Michael Bruck:
- force simulate_reset_on_next_halt when target state is initially detected
- print out method of debug entry
- fix VCR activation (didn't work before)

git-svn-id: svn://svn.berlios.de/openocd/trunk@452 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-06 12:01:52 +00:00
oharboe c6c6cd0ffd Michael Bruck: 64 bit va_list fix for crash
git-svn-id: svn://svn.berlios.de/openocd/trunk@451 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-06 12:01:17 +00:00
oharboe 97de458ff0 make debug code w.r.t. incorrect args for bypass stricter.
git-svn-id: svn://svn.berlios.de/openocd/trunk@450 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-06 06:56:19 +00:00
oharboe 087ccf3b6e warnings & comments fixes.
git-svn-id: svn://svn.berlios.de/openocd/trunk@449 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-05 19:33:53 +00:00
oharboe 01a5d87d5f - This speeds up dcc arm7_9 bulk write a little bit and exercises the jtag_add_dr_out() codepath
- added a check to jtag_add_pathmove() for legal path transitions
- tweaked jtag.h docs a little bit
- made some jtag bypass tests _DEBUG_JTAG_IO_


git-svn-id: svn://svn.berlios.de/openocd/trunk@448 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-05 19:29:41 +00:00
oharboe 9b25f5eba2 added jtag_add_dr_out(). Better for hw fifo, same for software fifo.
Passes 94kBytes/s regression test. 

Works with str912, which relies on bypass

git-svn-id: svn://svn.berlios.de/openocd/trunk@447 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-05 19:21:22 +00:00