Commit Graph

211 Commits

Author SHA1 Message Date
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
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
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
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
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
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
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
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
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
oharboe
6d95014674 * fixed malloc corruption in target->debug_reason
* GDB remote server will now remain online even if the target
	  is in a funny state, e.g. if it requires a reset, it is
	  running while GDB is not in the continue or step packet,
	  e.g. via monitor resume/halt commands in GDB script.
	* Added some _DEBUG_GDB_IO_ debug tools
	* Fixed a couple of GDB server lockups, e.g. when O packets
	  detect a severed connection
	* added ACK upon connection (send +).
	* added keep-alive messages to reset so GDB protocol remains happy.
	* fixed crash when timing out connection to GDB

git-svn-id: svn://svn.berlios.de/openocd/trunk@445 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-05 10:28:32 +00:00
oharboe
f955b90d28 Fixed GDB timeout crash - regression introduced back when log_add/remove_callback was added.
git-svn-id: svn://svn.berlios.de/openocd/trunk@442 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-04 13:13:55 +00:00
oharboe
5a6dc5a325 Michael Bruck - fix warnings.
git-svn-id: svn://svn.berlios.de/openocd/trunk@441 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-04 08:40:33 +00:00
oharboe
ea306d3e59 Michael Bruck: fix warnings.
git-svn-id: svn://svn.berlios.de/openocd/trunk@440 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-04 07:13:08 +00:00
oharboe
58cccae639 Michael Bruck:
- Added simulate_reset_on_next_halt that can be extended to do all sorts
of cleanups for systems without proper reset. Right now it just writes 0
to the control register to disable caches.
- Step skips over Wait for Interrupt instruction
- fix for count
- fix for printf format errors


git-svn-id: svn://svn.berlios.de/openocd/trunk@439 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-04 06:46:44 +00:00
ntfreak
5c2b85dfec - added svn prop svn:eol-style native
git-svn-id: svn://svn.berlios.de/openocd/trunk@438 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-03 20:43:38 +00:00
oharboe
bc67c6720b I fixed all the targets even though
I could only prove that XScale was busted.


git-svn-id: svn://svn.berlios.de/openocd/trunk@437 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-03 15:58:17 +00:00
oharboe
75e69503b9 added at91sam9260.cfg, nslu2.cfg, pxa255.cfg, pxa255_sst.cfg
zy1000.cfg
 

git-svn-id: svn://svn.berlios.de/openocd/trunk@435 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-03 13:29:29 +00:00
oharboe
fe20b12fbd some comments from Dominic
git-svn-id: svn://svn.berlios.de/openocd/trunk@434 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-03 07:49:32 +00:00
oharboe
2c5fc392f0 Uwe Hermann tightned up comments, etc. to follow OpenOCD policy
git-svn-id: svn://svn.berlios.de/openocd/trunk@431 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-02 08:39:02 +00:00
oharboe
72abcddbeb target scripts for test suite.
git-svn-id: svn://svn.berlios.de/openocd/trunk@429 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-01 22:00:13 +00:00
oharboe
53883c2784 fix memory corruption regression introduced in 335
git-svn-id: svn://svn.berlios.de/openocd/trunk@424 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-01 20:10:25 +00:00
mifi
542df34411 - removed warnings "xxxxx" might be used uninitialized in this function (arm_simulator.c)
- some cosmetic changes

git-svn-id: svn://svn.berlios.de/openocd/trunk@423 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-01 19:13:05 +00:00
oharboe
2ce5ca9f0e backed out jtag_add_shift()
git-svn-id: svn://svn.berlios.de/openocd/trunk@421 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-01 18:10:26 +00:00
oharboe
6cf398f3ce improve DCC bulk write performance by using jtag_add_shift() + tweaked embedded ICE communication.
git-svn-id: svn://svn.berlios.de/openocd/trunk@416 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-01 15:53:10 +00:00
oharboe
007e9e2d60 Now uses jtag_add_shift() via embeddedice_write_reg_inner().
git-svn-id: svn://svn.berlios.de/openocd/trunk@414 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-01 15:20:35 +00:00
oharboe
a6d6a94c9d added an #error in case anybody tries to compile that broken code.
git-svn-id: svn://svn.berlios.de/openocd/trunk@404 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-29 21:51:17 +00:00
oharboe
4cb9b17905 fixed stack corruption. Introduced when _check_value was phased out.
git-svn-id: svn://svn.berlios.de/openocd/trunk@403 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-29 21:43:19 +00:00
ntfreak
269aa8e99a - fix bug with emulated cortex_m3 dcc channel
git-svn-id: svn://svn.berlios.de/openocd/trunk@402 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-29 18:52:05 +00:00
oharboe
d3f0919233 Tweaked logging output.
TODO is retired(hopelessly out of date).

git-svn-id: svn://svn.berlios.de/openocd/trunk@400 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-29 15:32:07 +00:00
oharboe
6d3bed69dc Uwe Hermann:
Small cosmetic fixes in the license header to make them all look the
same, fix some typos, update README.

git-svn-id: svn://svn.berlios.de/openocd/trunk@396 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-29 12:37:45 +00:00
oharboe
da767f48da remove warnings.
git-svn-id: svn://svn.berlios.de/openocd/trunk@391 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-29 11:55:09 +00:00
oharboe
219b7f30b9 - image.c and fileio.c now uses logging to propagate error strings.
More precise, less code.
- removed unused code in fileio.c
- Windows should now find debug_handler.bin

git-svn-id: svn://svn.berlios.de/openocd/trunk@390 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-29 11:42:37 +00:00
oharboe
3a3fc30014 - clean up target output strings a bit
- open_file_from_path() now uses logging feature
- open_file_from_path() no longer uses paths for anything but "r" mode. Fixes 
  bug  waiting to happen.


git-svn-id: svn://svn.berlios.de/openocd/trunk@389 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-29 11:31:49 +00:00
oharboe
67e0aea258 Summary: passing of variable argument list reduced, strings sent to logging are now formatted just once - more efficient.
As a result, ugly string malloc+strcpy are not needed anymore.


git-svn-id: svn://svn.berlios.de/openocd/trunk@386 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-29 11:16:38 +00:00
oharboe
4febcd8313 Michael Bruck:
arm11

--- Added burst memory transfer mode

This does not explicitly query command execution but rather uses a small
delay produced by the FT2232 on certain TAP commands.

A potential failure of this process is detected afterwards and the
program terminates with an error.

'arm11 memwrite burst disable'
  can be used to switch this feature off.

'arm11 memwrite error_fatal disable'
  can be used to prevent the program to exit on an memory write error


--- Added support for interrupt breaking via VCR register

Use 'arm11 vcr' command to set.


--- Cleaned up the handling of

halt/resume/step/poll, target->state, target->debug_reason,
target_call_event_callbacks() at least as far as I could guess the
intended behaviour from other targets.

Did some overall positive tests with GDB.


--- Added support for breakpoints

Hardware breakpoints only. All breakpoints will be treated as hardware
breakpoints.

All ARM11's seem to have at least 6 hardware breakpoints.

--- Stepping over BKPT added

Modification to PC without touching the target.

--- Stepping over a B or BL to self will do nothing


git-svn-id: svn://svn.berlios.de/openocd/trunk@385 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-29 07:03:28 +00:00
ntfreak
9e5a6679ca - added svn props
- fixed mixed line endings on flash.c, log.c, gdb_server.c

git-svn-id: svn://svn.berlios.de/openocd/trunk@371 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-28 10:07:54 +00:00
oharboe
76ebc78358 code to be used in upcoming minidriver work.
git-svn-id: svn://svn.berlios.de/openocd/trunk@370 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-28 09:34:18 +00:00
oharboe
0689e3dd67 - Added TARGET_REQ_DEBUGCHAR target_request debugmsg. This
provides a better impeadance match for debug output char fn's, e.g. eCos.
- Line endings are now added at the caller site of command_print*(). command_print()
  still adds a line ending
- echo of commands in scripts are now available via debug_level instead of
  forced echo
- Added a USER_SAMELINE() for printing without a lineend.


git-svn-id: svn://svn.berlios.de/openocd/trunk@364 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-28 08:11:18 +00:00
ntfreak
0686e944f3 - fix issue when target is already halted
git-svn-id: svn://svn.berlios.de/openocd/trunk@355 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-26 19:56:45 +00:00