Commit Graph

7358 Commits

Author SHA1 Message Date
ntfreak f669c50fc9 - changed jtag_add_reset errors to warnings
- removed extra jtag reset warnings from arm7_9 and cortex_m3

git-svn-id: svn://svn.berlios.de/openocd/trunk@520 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-22 10:30:00 +00:00
ntfreak 4622cb15a9 - armv7m control register now set as dirty when switching context
- armv7m added core_mode to cortex_m3_debug_entry DEBUG msg
- cortex_m3 changed WARNINGS to DEBUG msg in cortex_m3_resume

git-svn-id: svn://svn.berlios.de/openocd/trunk@519 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-21 12:53:29 +00:00
mifi 5a4525613d - added new test results
git-svn-id: svn://svn.berlios.de/openocd/trunk@518 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-21 11:27:42 +00:00
drath 87939e553d - fix warnings during configure cause by ecosboard. default to no, if host cpu isn't arm.
- fix generic bitbang code to allow scans to end in Shift-[ID]R

- several CFI fixes (thanks to Michael Schwingen):
 - buffer overflow when converting target code in cfi_intel_write_block -
   cfi_fix_code_endian needs the number of words, not bytes, as size
   argument.

 - Spansion flash write was completely broken on big-endian targets - I
   borrowed mechanisms from the intel driver, and moved some common code
   into the cfi_command_val helper function. There is still more common code
   that might be cleaned up.

 - the buffer size check in cfi_write was broken for spansion flashes, where
   cfi_write_words is not implemented. cfi_write_words is no only called if
   the flash does have a buffer size >1.

 - "flash info" printed CFI status information for non-CFI flashes, which is
   confusing. It now only prints those when a real CFI flash is detected.


git-svn-id: svn://svn.berlios.de/openocd/trunk@517 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-17 21:39:18 +00:00
oharboe 3b2a068ea9 added profile command. It was added to simplify evaluation by testers.
git-svn-id: svn://svn.berlios.de/openocd/trunk@516 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-14 11:20:46 +00:00
oharboe 7e8892ca39 reset and post reset speed & jtag_khz command documented.
git-svn-id: svn://svn.berlios.de/openocd/trunk@515 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-13 20:09:33 +00:00
oharboe 6de8c33c38 Michael Bruck: fixed warnings
git-svn-id: svn://svn.berlios.de/openocd/trunk@514 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-13 15:46:40 +00:00
oharboe 587dd1c392 clarified jtag_khz command.
git-svn-id: svn://svn.berlios.de/openocd/trunk@513 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-13 13:58:07 +00:00
oharboe 9bf081192f added jtag_khz for use with target library
git-svn-id: svn://svn.berlios.de/openocd/trunk@512 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-13 11:07:21 +00:00
oharboe 7de7bc80fc - adds two speeds to jtag_speed. reset and post reset speed. Default
is post reset = reset speed.
- removed infinite loop's and exit()'s upon poor arm7/9 communication
- cleaned up error messages a bit. Push ERROR() up into fn's that
  fail and can say something meaningful about what failed.


git-svn-id: svn://svn.berlios.de/openocd/trunk@511 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-13 10:14:41 +00:00
oharboe a3dbb9cee6 print ms in debug_level 3 logs. Seconds is not enough.
git-svn-id: svn://svn.berlios.de/openocd/trunk@510 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-13 08:17:01 +00:00
oharboe b8dab6d056 XScale excessive waiting fix.
git-svn-id: svn://svn.berlios.de/openocd/trunk@509 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-13 08:16:34 +00:00
oharboe 979d6b7943 marked infinite loop in code w/TODO and fixed warning.
git-svn-id: svn://svn.berlios.de/openocd/trunk@508 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-13 08:05:10 +00:00
oharboe cb0bc93c06 Dominic undid some of my damage. CLK should now be set as intended in all cases.
git-svn-id: svn://svn.berlios.de/openocd/trunk@507 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-12 18:05:07 +00:00
oharboe 65cfb21612 xscale now passes w/bitbang in 505
git-svn-id: svn://svn.berlios.de/openocd/trunk@506 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-12 16:03:30 +00:00
oharboe 45af9d83c9 The bitbang driver leaves the TCK 0 when in idle
git-svn-id: svn://svn.berlios.de/openocd/trunk@505 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-12 16:01:30 +00:00
oharboe 9bf8a4e48b This moves common code into functions so as to make it clear
that all the jtag_add_xxx() are indeed intended to do the same thing.


git-svn-id: svn://svn.berlios.de/openocd/trunk@504 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-12 14:45:26 +00:00
oharboe 10c3b1c936 fixed regression in XScale introduce in 297
git-svn-id: svn://svn.berlios.de/openocd/trunk@503 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-12 14:38:43 +00:00
oharboe 460894d51e more info about latest working version
git-svn-id: svn://svn.berlios.de/openocd/trunk@502 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-12 08:39:55 +00:00
oharboe 33c09a0127 Corrections from Dominic
git-svn-id: svn://svn.berlios.de/openocd/trunk@501 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-12 08:04:24 +00:00
oharboe 691b4e0e01 tinkered a bit with testing matrix.
git-svn-id: svn://svn.berlios.de/openocd/trunk@500 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-12 07:34:10 +00:00
oharboe 0313c59555 reduce compare noise. If someone should be crazy enough to try to run OpenOCD under eCos, then they'v got some hooks to point them in the general direction.
git-svn-id: svn://svn.berlios.de/openocd/trunk@499 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-11 21:32:03 +00:00
oharboe b9162dcc8e With the recent changes the TRST needs to happen for every reset.
git-svn-id: svn://svn.berlios.de/openocd/trunk@498 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-11 21:18:44 +00:00
oharboe d1fe9bacbb tidy up output a bit. No longer show "accepted connection" inside Telnet session.
git-svn-id: svn://svn.berlios.de/openocd/trunk@497 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-11 21:17:46 +00:00
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