aboutsummaryrefslogtreecommitdiff
path: root/src/flash/flash.c
AgeCommit message (Collapse)AuthorFilesLines
2008-04-19retired auto_erase, added optional erase arg to flash write_image.oharboe1-25/+18
git-svn-id: svn://svn.berlios.de/openocd/trunk@593 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-04-18- Flash auto-erase is disabled by defaultdrath1-2/+3
git-svn-id: svn://svn.berlios.de/openocd/trunk@592 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-04-18Enabled auto erase, gdb memory map and gdb flash programming by default.oharboe1-1/+2
git-svn-id: svn://svn.berlios.de/openocd/trunk@591 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-04-08added a couple of LOG_ERROR() messages to improve logfile.oharboe1-0/+3
git-svn-id: svn://svn.berlios.de/openocd/trunk@548 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-04-04- reverted some of the changes that possibly broke arm926ejs. Waitingoharboe1-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
2008-04-03- Work on fixing erase check. Many implementations are plain broken.oharboe1-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
2008-04-02fix flash info - now reports erased state properlyoharboe1-1/+53
git-svn-id: svn://svn.berlios.de/openocd/trunk@534 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-04-01- fixes for jtag_khz committed.oharboe1-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
2008-03-25- rename log functions to stop conflicts under win32 (wingdi)ntfreak1-15/+15
git-svn-id: svn://svn.berlios.de/openocd/trunk@523 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-03-05Pavel Chromy: memory leak in at91sam7 flash driver, possible incorrect ↵oharboe1-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
2008-03-04Bogus error message in GDB removedoharboe1-0/+11
git-svn-id: svn://svn.berlios.de/openocd/trunk@443 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-29- image.c and fileio.c now uses logging to propagate error strings.oharboe1-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
2008-02-29Pavel Chromy: clarify error messagesoharboe1-2/+2
git-svn-id: svn://svn.berlios.de/openocd/trunk@387 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-28Pavel Chromy - cleanup error messagesoharboe1-37/+14
git-svn-id: svn://svn.berlios.de/openocd/trunk@376 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-28Pavel Chromy cleaned up checks for halted, error messages, etc.oharboe1-1/+1
git-svn-id: svn://svn.berlios.de/openocd/trunk@374 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-28- added svn propsntfreak1-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
2008-02-28eCos flash driver.oharboe1-0/+2
git-svn-id: svn://svn.berlios.de/openocd/trunk@365 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-25dos2unix fix.oharboe1-945/+945
git-svn-id: svn://svn.berlios.de/openocd/trunk@339 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-02-25- "flash write_binary" is now "flash write_bank" to clarify the focus of theoharboe1-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
2008-02-19- Fixed bug in pathmove for XScalentfreak1-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
2008-02-12- add autoprobe support to flash info commandntfreak1-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
2008-01-27- added autoprobe functionalitymifi1-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
2008-01-17- add missing files from previous commit (tms470 flash driver)ntfreak1-1/+1
git-svn-id: svn://svn.berlios.de/openocd/trunk@258 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-01-17- added tms470 flash support (thanks to Chris Kilgour for this patch)drath1-0/+2
git-svn-id: svn://svn.berlios.de/openocd/trunk@256 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2008-01-09- rename flash_init and flash_erase to flash_init_drivers and ↵ntfreak1-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
2007-12-29- minimum autoconf 2.59 is now required and verified - due to issues with ↵ntfreak1-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
2007-12-20- fixed problem when write_image is called multiple timesntfreak1-3/+17
git-svn-id: svn://svn.berlios.de/openocd/trunk@244 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-12-20- removed flash write_image - binary compare function has been moved to ↵ntfreak1-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
2007-12-18- added patch for new flash functionality like:mifi1-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
2007-12-17- only some cosmetic changes, convert \r\n to unixmifi1-3/+3
git-svn-id: svn://svn.berlios.de/openocd/trunk@239 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-12-17- added patch to corrected argument of image_open in ↵mifi1-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
2007-12-16- change error message for image_open errormifi1-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
2007-12-16- initialize num_sectors and sectors in handle_flash_bank_command.mifi1-1/+3
(thanks to oyvind Harboe for this hint) git-svn-id: svn://svn.berlios.de/openocd/trunk@233 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-12-09- added patch to display device information as INFO toomifi1-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
2007-11-21- reset_run now works as expected on cortex-m3ntfreak1-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
2007-10-08- cleaned up str7, str9 and stm32 flash driversntfreak1-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
2007-10-01- flash autoerase <on|off> cmd added, default is off - flash banks are ↵ntfreak1-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
2007-09-10- Fixed display of sector sizes in flash.cmlu1-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
2007-08-16- update jtag_speed setting when changing it during runtime with a FT2232 ↵drath1-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
2007-08-16- fixed several bugs in flash writing code (thanks to Pavel Chromy)drath1-111/+139
git-svn-id: svn://svn.berlios.de/openocd/trunk@196 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-08-14- reworked presto.c to allow use of either FTD2XX or libftdi (libftdi not ↵drath1-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
2007-08-10- renamed M5960 USB JTAG to "flyswatter"drath1-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
2007-06-24- ST STM32x cortex support addedntfreak1-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
2007-06-16- added mingw elf patches from Vincent Palatinntfreak1-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
2007-06-14- merged support for Cortex-M3 from cortex-m3 branch (thanks to Magnus Lundin)drath1-0/+2
git-svn-id: svn://svn.berlios.de/openocd/trunk@170 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-06-14- added manpage for OpenOCD (thanks to Uwe Hermann)drath1-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
2007-05-30- reworked image handling to support multiple sections (tested with ihex ↵drath1-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
2007-05-29- split fileio handling into fileio part and image handlingdrath1-14/+14
- reworked etm/etb into a generic etm part with trace capture drivers (currently only etb supported) - added XScale debug handler binary to repository - added Thumb disassembling (thanks to Vincent Palatin for this patch) - added support for non-CFI compatible flashes to cfi driver (currently only SST39VFxxx devices supported) This checkin is experimental, not suitable for general use git-svn-id: svn://svn.berlios.de/openocd/trunk@155 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-03-15- reworked file i/o. every fileaccess (target, flash, nand, in future ↵drath1-35/+29
configuration, too) should now go through the fileio subsystem - added support for reading IHEX files (through fileio) - load/dump_binary renamed to the more generic load/dump_image <file> <address> ['bin'|'ihex'] - added NAND framework (preliminary) - added support for the LPC3180 SLC and MLC NAND controllers (preliminary) - fix initialization for parport - gw16012 fixes/cleanups - added EmbeddedICE version 7 (preliminary, reported on two LPC23xx devices so far) - added 'arm7_9 etm <target#>' configuration command to enable access to the ETM registers git-svn-id: svn://svn.berlios.de/openocd/trunk@132 b42882b7-edfa-0310-969c-e2dbd0fdcd60
2007-01-22- fix incorrect parsing of whitespace in command.c (thanks to Magnus Lundin)drath1-0/+4
- fix infinite recursion in target_init_handler (thanks to jw and Magnus Lundin) - fix CFI flash handlign with buswidth < 32bit (thanks to Daniele Orio for reporting this) - add support for reading JTAG device id (currently only as debug output on startup) - cleaned up handling of EmbeddedICE registers. Supported functionality and register size now determined by EmbeddedICE version number. - small cleanups/fixes git-svn-id: svn://svn.berlios.de/openocd/trunk@124 b42882b7-edfa-0310-969c-e2dbd0fdcd60