summaryrefslogtreecommitdiff
path: root/src/target
Commit message (Collapse)AuthorAgeFilesLines
* - only if "reset halt" or "reset init" are issued will the reset vector be ↵oharboe2008-04-072-22/+39
| | | | | | | | | | | set up - If communication fails during assert between assert/deassert and during assert, warnings are printed. The warning suggests using srst_only if the clock locks up as that would allow the reset vector to be set up before asserting reset. git-svn-id: svn://svn.berlios.de/openocd/trunk@544 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - the reset mode parameter is now DEPRECATED. It is implementedoharboe2008-04-042-4/+6
| | | | | | | | as an optional parameter with default reset_init. This is to streamline things w.r.t. the target library. git-svn-id: svn://svn.berlios.de/openocd/trunk@540 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - reverted some of the changes that possibly broke arm926ejs. Waitingoharboe2008-04-049-27/+47
| | | | | | | | for a bit more info before I can tell with confidence whether or not this would have any effect. - worked on error propagation and output for flash git-svn-id: svn://svn.berlios.de/openocd/trunk@539 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - Work on fixing erase check. Many implementations are plain broken.oharboe2008-04-0318-98/+116
| | | | | | | | | | | | | | | | | | | | | | | | | | | Wrote a default flash erase check fn which uses CFI's target algorithm w/fallback to memory reads. - "flash info" no longer prints erase status as it is stale. - "flash erase_check" now prints erase status. erase check can take a *long* time. Work in progress - arm7/9 with seperate srst & trst now supports reset init/halt after a power outage. arm7/9 no longer makes any assumptions about state of target when reset is asserted. - fixes for srst & trst capable arm7/9 with reset init/halt - prepare_reset_halt retired. This code needs to be inside assert_reset anyway - haven't been able to get stm32 write algorithm to work. Fallback flash write does work. Haven't found a version of openocd trunk where this works. - added target_free_all_working_areas_restore() which can let be of restoring backups. This is needed when asserting reset as the target must be assumed to be an unknown state. Added some comments to working areas API - str9 reset script fixes - some guidelines - fixed dangling callbacks upon reset timeout git-svn-id: svn://svn.berlios.de/openocd/trunk@536 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Edgar Grimberg sharpened the str912 target script.oharboe2008-04-023-10/+22
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@535 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Added timeout(instead of infinite loop) to soft_reset_haltoharboe2008-04-023-9/+51
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@533 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* optional count argument to mwXoharboe2008-04-021-12/+35
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@532 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* target_call_timer_callbacks_now() now invokes periodic callbacks immediatelyoharboe2008-03-311-8/+11
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@529 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Removed exit()'s. A reset is usually enough to work around these, reducing ↵oharboe2008-03-311-15/+8
| | | | | | | | | cycle times to get config scripts right. git-svn-id: svn://svn.berlios.de/openocd/trunk@528 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* make jtag_add_statemove() internal to the driver.oharboe2008-03-312-1/+4
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@527 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Edgar Grimberg: added needed delaysoharboe2008-03-281-0/+4
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@526 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* TAP_SD/SI are now forbidden end states.oharboe2008-03-262-77/+28
| | | | | | jtag_add_reset() now returns void streamlining the API git-svn-id: svn://svn.berlios.de/openocd/trunk@525 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - rename log functions to stop conflicts under win32 (wingdi)ntfreak2008-03-2528-626/+626
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@523 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - gdb server was incorrectly sending null terminator on qXfer:features:read: ↵ntfreak2008-03-221-7/+19
| | | | | | | | packet - armv7m now sends correct gdb register packet git-svn-id: svn://svn.berlios.de/openocd/trunk@522 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - changed jtag_add_reset errors to warningsntfreak2008-03-222-10/+11
| | | | | | - 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
* - armv7m control register now set as dirty when switching contextntfreak2008-03-213-23/+15
| | | | | | | - 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
* added profile command. It was added to simplify evaluation by testers.oharboe2008-03-141-0/+188
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@516 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Michael Bruck: fixed warningsoharboe2008-03-131-2/+2
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@514 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - adds two speeds to jtag_speed. reset and post reset speed. Defaultoharboe2008-03-133-107/+76
| | | | | | | | | | 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
* XScale excessive waiting fix.oharboe2008-03-131-46/+58
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@509 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* marked infinite loop in code w/TODO and fixed warning.oharboe2008-03-131-1/+2
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@508 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* fixed regression in XScale introduce in 297oharboe2008-03-121-5/+4
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@503 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* With the recent changes the TRST needs to happen for every reset.oharboe2008-03-111-12/+9
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@498 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - 16 and 32 bit unaligned accesses supportedntfreak2008-03-116-223/+431
| | | | | | | | - 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
* retire unused code.oharboe2008-03-111-20/+0
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@494 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - fixed jtag_add_reset(). It no longer causes jtag_execute_queue() tooharboe2008-03-111-2/+4
| | | | | | | | | | | 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
* more target scripts wip.oharboe2008-03-102-0/+68
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@489 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* more target scripts wip.oharboe2008-03-102-1/+15
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@488 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - the jtag chain is examined and validated after GDB & telnet serversoharboe2008-03-104-19/+9
| | | | | | | | | | | | | | | | | | 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
* - Fixed various error handling when looking for memory leaksoharboe2008-03-101-39/+44
| | | | | | | | | | | | | - 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
* added stm32.cfg to install listoharboe2008-03-101-1/+1
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@480 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - add stm32 target scriptntfreak2008-03-091-0/+23
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@478 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - added more TARGET_HALTED checks for the read/write_memory handlersntfreak2008-03-082-7/+152
| | | | | | | - 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
* typo.oharboe2008-03-081-1/+1
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@476 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - Improves error handling upon GDB connectoharboe2008-03-0711-41/+32
| | | | | | | | | | | | | | | | | | - 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
* - fix cross endian ELF loadingvpalatin2008-03-071-3/+1
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@473 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - The elf loader incorrectly assumed that the program header always follows ↵ntfreak2008-03-071-0/+9
| | | | | | the ELF header. (Thanks Michael Bruck) git-svn-id: svn://svn.berlios.de/openocd/trunk@472 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Michael Bruck: fixed warningsoharboe2008-03-071-0/+5
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@471 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Edgar Grimberg, fix arm926ejs_examine_debug_reason return value.oharboe2008-03-071-1/+3
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@470 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Added some timeout handling to XScale so OpenOCD doesn't getoharboe2008-03-071-23/+58
| | | | | | completely stuck when the target needs a reset. git-svn-id: svn://svn.berlios.de/openocd/trunk@469 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* minor corrections for target scripts.oharboe2008-03-074-78/+78
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@468 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* wi-9c target scriptsoharboe2008-03-072-0/+92
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@464 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - added str912/str710_program.scriptmifi2008-03-072-0/+17
| | | | | | - added test infos from r459 git-svn-id: svn://svn.berlios.de/openocd/trunk@462 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* removed excessive debug output. Perhaps a debug_level 4 should be ↵oharboe2008-03-071-2/+0
| | | | | | 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
* use jtag_execute_queue() instead of jtag->execute_queue()oharboe2008-03-061-1/+1
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@457 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Michael Bruck:oharboe2008-03-062-7/+31
| | | | | | | | - 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
* warnings & comments fixes.oharboe2008-03-052-5/+3
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@449 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - This speeds up dcc arm7_9 bulk write a little bit and exercises the ↵oharboe2008-03-053-8/+41
| | | | | | | | | | | 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
* added jtag_add_dr_out(). Better for hw fifo, same for software fifo.oharboe2008-03-052-43/+60
| | | | | | | | 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
* * fixed malloc corruption in target->debug_reasonoharboe2008-03-052-3/+9
| | | | | | | | | | | | | | | * 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