1. 21 Jul, 2008 1 commit
    • oharboe's avatar
      · dfbb9f3e
      oharboe authored
      - jtag_khz/speed are now single parameter only. These are used
      from pre/post_reset event scripts. Adding the second parameter was
      a mistake seen in retrospect. this gives precise control in post_reset
      for *when* the post reset speed is set. The pre_reset event was
      added *after* the second parameter to jtag_khz/speed
      - the target implementations no longer gets involved in the reset mode
      scheme. Either they reset a target into a halted mode or not.
      target_process_reset()
      detects if the reset halt failed or not.
      - tcl target event names are now target_N_name.  Mainly internal
      at this early stage, but best to get the naming right now.
      - added hardcoded reset modes from gdb_server.c. I don't know precisely what
      these defaults should be or if it should be made configurable. Perhaps some
      hardcoded defaults will do for now and it can be made configurable later.
      - bugfix in cortex_m3.c for reset_run_and_xxx?
      - issue syntax error upon obsolete argument in target command instead of
      printing message that will surely drown in the log
      
      git-svn-id: svn://svn.berlios.de/openocd/trunk@849 b42882b7-edfa-0310-969c-e2dbd0fdcd60
      dfbb9f3e
  2. 08 Jul, 2008 1 commit
  3. 06 Jul, 2008 1 commit
    • oharboe's avatar
      src/helper/configuration.h · dc796a20
      oharboe authored
      	- Log output handlers now get a "const char *line"
      	- Added "const" to parameter.
      
      src/helper/command.c
      src/helper/command.h
      	- New function:  'command_output_text()'
      	- Log output handlers now get a "const char *line"
       
      src/helper/options.c
      	- Log output handlers now get a "const char *line"
      
      src/server/telnet_server.c
      	- DO not transmit NULL bytes via TELNET.
      	- Log output handlers now get a "const char *line"
      	
      src/server/gdb_server.c
      	- Log output handlers now get a "const char *line"
      	
      	*** THIS INCLUDES PORTIONS OF A PATCH FROM Oyvind sent 
      	previously to the mailing list for TCL users try
      
      src/target/target.c
      	*** THIS INCLUDES PORTIONS OF A PATCH FROM Oyvind sent 
      	previously to the mailing list for TCL users try
      	
      src/target/target.h
      	*** THIS INCLUDES PORTIONS OF A PATCH FROM Oyvind sent 
      	previously to the mailing list for TCL users try
      
      src/openocd.c
          - **MAJOR** Work: New TCL/Jim function: mem2array
      	- **MAJOR** Work: Redirect Tcl/Jim stdio output to remote users.
      	- Previously: TCL output did not go to GDB.
      	- Previously: TCL output did not go to TELNET
      	- Previously: TCL output only goes to control console.
      	- This fixes that problem.
      	+ Created callbacks:
      		+openocd_jim_fwrite()	
      		+openocd_jim_fread()
      		+openocd_jim_vfprintf()
      		+openocd_jim_fflush()
      		+openocd_jim_fgets()
      
      src/Makefile.am
      	- New TCL files.
      	- Future note: This should be more automated.  As the list of
      	  'tcl' files grows maintaning this list will suck.
      
      src/Jim.c
      	- ** THIS INCLUDES A PREVIOUS PATCH I SENT EARLIER **
      	- that impliments many [format] specifies JIM did not support.
      	- Jim_FormatString() - **MAJOR** work.
      	- Previously only supported "%s" "%d" and "%c"
      	- And what support existed had bugs.
      	- NEW: *MANY* formating parameters are now supported.
      	- TODO: The "precision" specifier is not supported.
      
      	** NEW ** This patch.
      	
      	- Jim_StringToWide() test if no conversion occured.
      	- Jim_StringToIndex() test if no conversion occured.
      	- Jim_StringToDouble() test if no conversion occured.
      
      	** NEW ** This Patch. Major Work.
      	- Previously output from JIM did not get sent to GDB
      	- Ditto: Output to Telnet session.
      	- Above items are now fixed - By introducing callbacks
      	  new function pointers in the "interp" structure.
      
      	- Helpers that call the callbacks.
      	
      	- New function: Jim_fprintf()
      	- New function: Jim_vfprintf()
      	- New function: Jim_fwrite()
      	- New function: Jim_fread()
      	- New function: Jim_fflush()
      	- New function: Jim_fgets()
      
      	By default: the output is to STDIO as previous.
      	The "openocd.c" - redirects the output as needed.
      	
      	- Jim_Panic() - Send panic to both STDERR and the interps
      	specified STDERR output as a 2nd choice.
      
      	- Now JIM's "stdin/stdout/stderr" paramters are "void *"
      	and are no longer "FILE *".
      
      src/Jim.h
      	- **MAJOR**
      	-  New JIM STDIO callbacks in the "interp" structure.
      	-  change: "stdin/stdout/stderr" are now "void *" cookies.
      	-  New JIM stdio helper functions.
      
      
      
      git-svn-id: svn://svn.berlios.de/openocd/trunk@755 b42882b7-edfa-0310-969c-e2dbd0fdcd60
      dc796a20
  4. 25 Jun, 2008 1 commit
  5. 27 May, 2008 1 commit
  6. 23 Apr, 2008 1 commit
  7. 15 Apr, 2008 1 commit
  8. 11 Apr, 2008 2 commits
  9. 09 Apr, 2008 1 commit
  10. 03 Apr, 2008 1 commit
    • oharboe's avatar
      · d3f0549f
      oharboe authored
      - Work on fixing erase check. Many implementations are plain broken.
      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
      d3f0549f
  11. 13 Mar, 2008 2 commits
  12. 10 Mar, 2008 1 commit
    • oharboe's avatar
      - the jtag chain is examined and validated after GDB & telnet servers · e6dac739
      oharboe authored
       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
      e6dac739
  13. 07 Mar, 2008 1 commit
    • oharboe's avatar
      · c78b4fe4
      oharboe authored
      - 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
      c78b4fe4
  14. 05 Mar, 2008 1 commit
    • oharboe's avatar
      * fixed malloc corruption in target->debug_reason · 6d950146
      oharboe authored
      	* 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
      6d950146
  15. 03 Mar, 2008 1 commit
  16. 25 Feb, 2008 1 commit
    • oharboe's avatar
      · 815c3b35
      oharboe authored
      - "flash write_binary" is now "flash write_bank" to clarify the focus of the
       command and reduce confusion with "flash write_image".
      - retired deprecated "flash erase" & "flash write".
      - added flash_driver_protect/write/erase() that are wafer thin frontend
       functions to low level driver functions. They implement checks
       that were inconsistently handled by the drivers, e.g. check for
       target halted was done in a spotty fashion.
      - use return ERROR_COMMAND_SYNTAX_ERROR to print out
       syntax of command instead of having lots of inlined replicas of
       the command line syntax(some of which were wrong).
      - use logging instead of dubious translation of error values to
       human understandable explanations of why things failed.
       The lower levels log the precise reason and the higher
       levels can ammend context as the error propagates up
       the call stack.
      - simplified flash API slightly with logging instead of
       allocating and returning information that the caller then
       has to translate into print statements.
      
      
      
      git-svn-id: svn://svn.berlios.de/openocd/trunk@337 b42882b7-edfa-0310-969c-e2dbd0fdcd60
      815c3b35
  17. 24 Feb, 2008 1 commit
    • oharboe's avatar
      - fixed target->type->poll() return value · 1aa85468
      oharboe authored
      - added arch_state to show status of currently selected target
      - simplified target->type->arch_state() api.
      - clean up telnet output a bit
      - fixed GDB output for arch_state
      - removed a couple of unecessary exit()'s
      - cleaned up error propagation a bit in a few places
      
      git-svn-id: svn://svn.berlios.de/openocd/trunk@332 b42882b7-edfa-0310-969c-e2dbd0fdcd60
      1aa85468
  18. 19 Feb, 2008 1 commit
    • ntfreak's avatar
      - Fixed bug in pathmove for XScale · 5c0e8efa
      ntfreak authored
      - added virtual address to working_area.
      - Improved error messages in a number of places
      - Added ERROR_COMMAND_SYNTAX_ERROR that commands can return to have syntax printed
      - Added help for some config commands
      - Added verification of sw breakpoints with ERROR() message
      - Removed a couple of exit()'s and replaced with error message
      - cosmetic fix to armv4_5.c, easier to read
      - added polymorphic(with default) virt2phys and mmu enable query function to target.h
      - added virt2phys command that uses target->type->virt2phys() fn
      Thanks to Øyvind Harboe
      
      git-svn-id: svn://svn.berlios.de/openocd/trunk@310 b42882b7-edfa-0310-969c-e2dbd0fdcd60
      5c0e8efa
  19. 07 Feb, 2008 1 commit
  20. 17 Jan, 2008 1 commit
  21. 29 Dec, 2007 1 commit
    • ntfreak's avatar
      - minimum autoconf 2.59 is now required and verified - due to issues with AS_HELP_STRING · 6c9b804d
      ntfreak authored
      - native win32 now handles WSAECONNRESET - no longer exits openocd
      - qCRC packet now works correctly under cygwin (gdb compare-sections command)
      - removed __USE_GNU define from gdbserver.c
      - gdb qSupported packet is now handled, with this we are able to tell gdb packet size, memory map of target
      - added new target script gdb_program_config - called before gdb flash programming
      - new gdb server command gdb_memory_map (enable|disable> - default is disable
      - new gdb server command gdb_flash_program (enable|disable> - default is disable
      - gdb flash programming supported - vFlash packets
      - image_elf_read_section now does not clear any remaining data, this was causing the gdb checksum to fail with certain files
      - reformat of usbprog.c
      - memory leak in command_print fixed
      - updated texi doc to include new commands
      - added gdb programming section to docs
      
      git-svn-id: svn://svn.berlios.de/openocd/trunk@246 b42882b7-edfa-0310-969c-e2dbd0fdcd60
      6c9b804d
  22. 22 Oct, 2007 1 commit
  23. 08 Oct, 2007 1 commit
    • ntfreak's avatar
      - cleaned up str7, str9 and stm32 flash drivers · ce8768f4
      ntfreak authored
      - str7 flash driver now checks correct busy bits depending on device
      - str9 flash driver now disables ITCM order as per st programming manual
      - added str7 disable_jtag command
      - added gdb_detach command
      - updated arm966e cp15 support
      - fix crash on mingw build when enabling target_request debugmsgs
      
      git-svn-id: svn://svn.berlios.de/openocd/trunk@209 b42882b7-edfa-0310-969c-e2dbd0fdcd60
      ce8768f4
  24. 10 Aug, 2007 1 commit
    • drath's avatar
      - renamed M5960 USB JTAG to "flyswatter" · 20e4e77c
      drath authored
      - make ep93xx and at91rm9200 bitbang JTAG interfaces dependant on ARM host (thanks to Vincent Palatin)
      - various whitespace fixes
      - removed various warnings
      - add support for Debian GNU/kFreeBSD (thanks to Uwe Hermann)
      - fix OpenOCD compilation for various platforms (thanks to Uwe Hermann and Vincent Palatin)
      - switched order of JTAG chain examination and validation (examine first, then multiple validation tries even if examination failed)
      - added target_request subsystem to handle requests from the target (debug messages and tracepoints implemented, future enhancements might include
      semihosting, all ARM7/9 only for now)
      - added support for GDB vFlashXXX packets (thanks to Pavel Chromy)
      - added support for receiving data via ARM7/9 DCC
      - reworked flash writing. the 'flash write' command is now deprecated and replaced by 'flash write_binary' (old syntax and behaviour) and 'flash
      write_image' (write image files (bin, hex, elf, s19) to a target).
      - added support for AMD/ST/SST 29F400B non-cfi flashes
      
      
      
      git-svn-id: svn://svn.berlios.de/openocd/trunk@190 b42882b7-edfa-0310-969c-e2dbd0fdcd60
      20e4e77c
  25. 16 Apr, 2007 1 commit
  26. 28 Mar, 2007 1 commit
  27. 07 Nov, 2006 1 commit
  28. 31 Aug, 2006 1 commit
    • drath's avatar
      - endianess fixes everywhere but in the flash code. flashing might still be... · 3acb107b
      drath authored
      - 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
      3acb107b
  29. 23 Jun, 2006 1 commit
  30. 02 Jun, 2006 1 commit