summaryrefslogtreecommitdiff
path: root/src/flash/flash.c
Commit message (Collapse)AuthorAgeFilesLines
* Pavel Chromy's on chip flash loaderoharboe2008-04-231-0/+2
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@612 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Karl RobinSod <karl.robinsod@gmail.com> added lpc288x support. Some work ↵oharboe2008-04-201-0/+2
| | | | | | remaining, committing for test/collaboration purposes. git-svn-id: svn://svn.berlios.de/openocd/trunk@597 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - flash.c change stricmp to strcmpntfreak2008-04-191-1/+1
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@595 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* retired auto_erase, added optional erase arg to flash write_image.oharboe2008-04-191-25/+18
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@593 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - Flash auto-erase is disabled by defaultdrath2008-04-181-2/+3
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@592 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Enabled auto erase, gdb memory map and gdb flash programming by default.oharboe2008-04-181-1/+2
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@591 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* added a couple of LOG_ERROR() messages to improve logfile.oharboe2008-04-081-0/+3
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@548 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - reverted some of the changes that possibly broke arm926ejs. Waitingoharboe2008-04-041-10/+8
| | | | | | | | 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-031-30/+234
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* fix flash info - now reports erased state properlyoharboe2008-04-021-1/+53
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@534 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - fixes for jtag_khz committed.oharboe2008-04-011-0/+116
| | | | | | - wip, flash fillw/h/b. For testing purposes. git-svn-id: svn://svn.berlios.de/openocd/trunk@531 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - rename log functions to stop conflicts under win32 (wingdi)ntfreak2008-03-251-15/+15
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@523 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Pavel Chromy: memory leak in at91sam7 flash driver, possible incorrect ↵oharboe2008-03-051-5/+8
| | | | | | | | pointer conversion in gpnvm command handling, uninitialized buffer issue in handle_flash_info_command in flash.c, some formatting. git-svn-id: svn://svn.berlios.de/openocd/trunk@446 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Bogus error message in GDB removedoharboe2008-03-041-0/+11
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@443 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - image.c and fileio.c now uses logging to propagate error strings.oharboe2008-02-291-3/+0
| | | | | | | | 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
* Pavel Chromy: clarify error messagesoharboe2008-02-291-2/+2
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@387 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Pavel Chromy - cleanup error messagesoharboe2008-02-281-37/+14
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@376 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Pavel Chromy cleaned up checks for halted, error messages, etc.oharboe2008-02-281-1/+1
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@374 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - added svn propsntfreak2008-02-281-97/+97
| | | | | | - 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
* eCos flash driver.oharboe2008-02-281-0/+2
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@365 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* dos2unix fix.oharboe2008-02-251-945/+945
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@339 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - "flash write_binary" is now "flash write_bank" to clarify the focus of theoharboe2008-02-251-1071/+945
| | | | | | | | | | | | | | | | | | | | | | | | 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
* - Fixed bug in pathmove for XScalentfreak2008-02-191-6/+2
| | | | | | | | | | | | | | | - 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
* - add autoprobe support to flash info commandntfreak2008-02-121-3/+5
| | | | | | - auto_erase can now be called from script/config file git-svn-id: svn://svn.berlios.de/openocd/trunk@292 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - added autoprobe functionalitymifi2008-01-271-2/+28
| | | | | | | - corrected blocksize handling from GDB "info mem" command (thanks to Øyvind and Spen for these patches) git-svn-id: svn://svn.berlios.de/openocd/trunk@278 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - add missing files from previous commit (tms470 flash driver)ntfreak2008-01-171-1/+1
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@258 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - added tms470 flash support (thanks to Chris Kilgour for this patch)drath2008-01-171-0/+2
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@256 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - rename flash_init and flash_erase to flash_init_drivers and ↵ntfreak2008-01-091-4/+4
| | | | | | | | | | flash_erase_address_range - stops conflicts with redboot. Thanks Øyvind Harboe - gdb connection not dropped if we fail to allocate memory in query packets git-svn-id: svn://svn.berlios.de/openocd/trunk@249 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - minimum autoconf 2.59 is now required and verified - due to issues with ↵ntfreak2007-12-291-8/+20
| | | | | | | | | | | | | | | | | | | | AS_HELP_STRING - 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
* - fixed problem when write_image is called multiple timesntfreak2007-12-201-3/+17
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@244 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - removed flash write_image - binary compare function has been moved to ↵ntfreak2007-12-201-127/+88
| | | | | | | | | verify_image command - minor code reformat and cleanup - updated docs to include new commands git-svn-id: svn://svn.berlios.de/openocd/trunk@243 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - added patch for new flash functionality like:mifi2007-12-181-53/+158
| | | | | | | | | | flash verify_image and flash erase_address. - added patch for new parport_write_on_exit command. Even this patch will fix some memory leaks. (thanks too oyvind and Spen for these patches) git-svn-id: svn://svn.berlios.de/openocd/trunk@240 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - only some cosmetic changes, convert \r\n to unixmifi2007-12-171-3/+3
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@239 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - added patch to corrected argument of image_open in ↵mifi2007-12-171-1/+1
| | | | | | | | handle_flash_write_image_command (thanks to oyvind Harboe for the patch) git-svn-id: svn://svn.berlios.de/openocd/trunk@237 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - change error message for image_open errormifi2007-12-161-5/+6
| | | | | | | - changed run_size to size_read in argument of image_read_section (thanks to oyvind Harboe for this patch) git-svn-id: svn://svn.berlios.de/openocd/trunk@234 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - initialize num_sectors and sectors in handle_flash_bank_command.mifi2007-12-161-1/+3
| | | | | | (thanks to oyvind Harboe for this hint) git-svn-id: svn://svn.berlios.de/openocd/trunk@233 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - added patch to display device information as INFO toomifi2007-12-091-3/+13
| | | | | | | | | | - added patch which fixes a crash upon flash write error - added patch which will improve the reset handling when SRST is tied to TRST (thanks to Oyvind Harboe for these patches) git-svn-id: svn://svn.berlios.de/openocd/trunk@218 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - reset_run now works as expected on cortex-m3ntfreak2007-11-211-3/+2
| | | | | | | | | - str9xpec erase status checked on option byte programming - stm32x flash driver now supports sector protection - surplus exit removed from flash.c - openocd.texi documentation added git-svn-id: svn://svn.berlios.de/openocd/trunk@212 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - cleaned up str7, str9 and stm32 flash driversntfreak2007-10-081-0/+3
| | | | | | | | | | | - 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
* - flash autoerase <on|off> cmd added, default is off - flash banks are ↵ntfreak2007-10-011-21/+61
| | | | | | | | | | | calculated and erased prior to write (flash write_image only) - corrected array overrun in armv7m.c - corrected breakpoint memory allocation bug - image read now uses fgets, vastly improves reading of large files - improved hex file reading, support for Linear Address Record added git-svn-id: svn://svn.berlios.de/openocd/trunk@208 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - Fixed display of sector sizes in flash.cmlu2007-09-101-2/+2
| | | | | | | | | - Clean up, remove unused variables and code in armv7, cortex_m3 and stellaris code - Move restore_context from cortex_m3 to armv7m - Updated halt handling for cortex_m3 git-svn-id: svn://svn.berlios.de/openocd/trunk@206 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - update jtag_speed setting when changing it during runtime with a FT2232 ↵drath2007-08-161-3/+6
| | | | | | | | | | | based interface - use 'etm trigger_percent' setting when programming ETB trigger count - fixed some small bugs in ETM trace analysis - fixed minor bug in flash writing (thanks to Pavel Chromy) git-svn-id: svn://svn.berlios.de/openocd/trunk@197 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - fixed several bugs in flash writing code (thanks to Pavel Chromy)drath2007-08-161-111/+139
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@196 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - reworked presto.c to allow use of either FTD2XX or libftdi (libftdi not ↵drath2007-08-141-13/+51
| | | | | | | | | | | | | | | | functional yet). Configure option changed from --enable-presto to --enable-presto_ftd2xx and --enable-presto_libftdi - completed trace point support for use with ARM7/9 DCC - completed debug message output with support for HEX dumps (1, 2 or 4 byte quantities) - fixed bug in delete_debug_msg_receiver (thanks to Pavel Chromy) - fixed bug in image_add_section (thanks to Pavel Chromy) - at91sam7 sector erase reworked (thanks to Pavel Chromy) - merge consecutive sections during flash image write to work around possible section alignment issues with LPC2000 targets git-svn-id: svn://svn.berlios.de/openocd/trunk@194 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - renamed M5960 USB JTAG to "flyswatter"drath2007-08-101-69/+299
| | | | | | | | | | | | | | | | | | | | - 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
* - ST STM32x cortex support addedntfreak2007-06-241-0/+2
| | | | | | | | - ST STM32x flash support added - cleaned up armv7m and cortex-m3 support, removed luminary specific code - cortex-m3 16bit read/write added (required for STM32x flash programming) git-svn-id: svn://svn.berlios.de/openocd/trunk@177 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - added mingw elf patches from Vincent Palatinntfreak2007-06-161-8/+11
| | | | | | | - added str9x programming using flash controller tap (str9xpec), including option bytes and device lock/unlock - inttypes.h now used for long long printf style declarations git-svn-id: svn://svn.berlios.de/openocd/trunk@174 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - merged support for Cortex-M3 from cortex-m3 branch (thanks to Magnus Lundin)drath2007-06-141-0/+2
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@170 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - added manpage for OpenOCD (thanks to Uwe Hermann)drath2007-06-141-3/+1
| | | | | | | | | | - fixed bug in ARM926EJ-S cache handling that caused cache linefills to be disabled after first debug entry - added support for auto image type detection (thanks to Vincent Palatin) - further work on ETM trace decoding (tested with a ETB interface using an ETM in normal 16-bit port mode, still experimental) git-svn-id: svn://svn.berlios.de/openocd/trunk@169 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - reworked image handling to support multiple sections (tested with ihex ↵drath2007-05-301-41/+53
| | | | | | | | | | file containing gaps) This checkin is still experimental, not recommended for general use git-svn-id: svn://svn.berlios.de/openocd/trunk@159 b42882b7-edfa-0310-969c-e2dbd0fdcd60