Commit Graph

561 Commits

Author SHA1 Message Date
Gareth McMullin 45328ea124 Add buffering support for flash drivers.
Some devices can get a significant boost in performance by writing to
flash memories one page at a time.  Generic function to do this are
provided at the target layer and may be used by flash drivers.
2015-04-11 16:05:40 -07:00
Gareth McMullin 36f749fed9 Fix flash buffer alignment in target layer. 2015-04-03 21:21:30 -07:00
Gareth McMullin 7202db5860 Add new functions to wrap flash driver erase/write/done operations. 2015-04-03 21:20:01 -07:00
Gareth McMullin 691d21989a Add function to add simple flash driver to target.
Clean up ram/flash/memory map on target destruction.
2015-04-03 21:18:16 -07:00
Gareth McMullin 0fc635b3f8 Add functions for dynamically generating the XML memory map. 2015-04-03 21:18:16 -07:00
Gareth McMullin 482070c91b Merge branch 'v1.6-branch'
Conflicts:
	src/Makefile
	src/platforms/stlink/platform.h
	src/platforms/swlink/platform.h
2015-04-03 21:02:01 -07:00
Gareth McMullin 97824b7f02 Use git describe for version in generated header file. 2015-04-03 20:21:33 -07:00
Gareth McMullin 865beaba98 Suppress warning about longjmp clobbering local variable. 2015-04-02 21:06:18 -07:00
Gareth McMullin 05f062612b Merge pull request #86 from florolf/atsam3u
sam3x: add SAM3U support
2015-04-01 20:28:37 -07:00
Florian Larysch bc89217e3f sam3x: add SAM3U support 2015-04-01 00:04:52 +02:00
Gareth McMullin 21d464293c gdb: don't access target fields directly. 2015-03-29 18:06:13 -07:00
Gareth McMullin c2cde32716 Improve cortexm_read/write_regs. Use more sensible return types. 2015-03-29 17:37:03 -07:00
Gareth McMullin 274b818517 Make cortexm_pc_write static. 2015-03-29 16:48:51 -07:00
Gareth McMullin 779dcf0f69 stm32l0: use cortexm_run_stub. 2015-03-29 16:47:55 -07:00
Gareth McMullin 012922ed00 nrf51: use cortexm_run_stub. 2015-03-29 16:31:38 -07:00
Gareth McMullin 810269dce1 nrf51: Use generated stub. 2015-03-29 16:28:18 -07:00
Gareth McMullin cac286d398 lmi: Use generated stub with cortexm_run_stub. 2015-03-29 16:20:57 -07:00
Gareth McMullin 2215e33bcf lmi: Clean up magic numbers, remove adiv5 links, and doc ref. 2015-03-29 15:58:18 -07:00
Gareth McMullin 31fae032f7 cortexm: Separate stub loading from running. 2015-03-29 15:20:00 -07:00
Gareth McMullin 9f271d5cd7 Consistently use 'target *t' for target var. 2015-03-28 20:47:17 -07:00
Gareth McMullin 1e54139f4a target: Remove pc_read/pc_write methods. 2015-03-28 20:15:33 -07:00
Gareth McMullin 4313b64bbe Add a flash_done target method. 2015-03-26 20:47:57 -07:00
Gareth McMullin f74def3552 Remove old STM32L1 driver. 2015-03-26 20:47:57 -07:00
Gareth McMullin d9af3cca6c Remove unfinished ARM7TDMI driver. 2015-03-26 20:47:57 -07:00
Gareth McMullin 64c79e1d03 Consistently name target var 't' in cortexm. 2015-03-26 20:47:57 -07:00
Gareth McMullin bda4279028 Send error reply and abandon target list on unhandled timeout. 2015-03-26 20:42:47 -07:00
Gareth McMullin f5ef8671ab Merge pull request #85 from gsmcmullin/exceptions
Cleaner exception handling.
2015-03-22 20:33:57 -07:00
Gareth McMullin 68f54a3545 Remove old platform specific error handling macros. 2015-03-22 14:06:56 -07:00
Gareth McMullin 5ab8564ff6 Clean up handling of lost targets using new exceptions mechanism. 2015-03-22 14:05:12 -07:00
Gareth McMullin 588bad34ba Build with -Os for swlink. 2015-03-22 12:26:45 -07:00
Gareth McMullin 9a8dbdeff7 Fix errors when building for non-native platforms. 2015-03-22 12:26:45 -07:00
Gareth McMullin 83b83ca48f Use controlled timeout on SW/JTAG DP transactions. 2015-03-22 12:26:45 -07:00
Gareth McMullin d0a03f55a6 Handle timeout exceptions during scans and report to the user. 2015-03-22 12:26:45 -07:00
Gareth McMullin d6225eec76 Raise timeout exception when target is in WFI.
Ignore the exception when polling for halt, and report the exception
to the user if halting the target fails.
Remove old allow_timeout flag in DP struct that's no longer needed.
2015-03-22 12:26:45 -07:00
Gareth McMullin fa046601a5 Add exception handling mechanism and raise exception on low-level comms failure. 2015-03-22 12:26:45 -07:00
Gareth McMullin a497127a8d Move MIN macro to general.h 2015-03-22 12:23:03 -07:00
Gareth McMullin c10862bff3 Merge pull request #82 from gsmcmullin/flashstubs
Generalise flash stub calls
2015-03-22 11:42:19 -07:00
Gareth McMullin 12e313dab9 Use for loop in STM32F1 stub and compile with -Os. 2015-03-19 21:49:09 -07:00
Gareth McMullin 41256e3c2a Add missing return type to stub_exit. 2015-03-19 21:49:09 -07:00
Gareth McMullin acfd258aa7 Rewrite STM32F4 stub in C and use new interface. 2015-03-19 21:49:09 -07:00
Gareth McMullin 8ddb186b35 Allow stub to return an error code. 2015-03-19 21:49:09 -07:00
Gareth McMullin 437aedda11 Rewrote stm32f1 stub in C and call with parameters in registers. 2015-03-19 07:48:57 -07:00
Gareth McMullin c2462a6788 Add cortexm generic stub call, and use in stm32f1 driver. 2015-03-19 07:48:47 -07:00
Gareth McMullin e380ced517 Change STM32F1 driver to use generated stub. 2015-03-19 07:43:36 -07:00
Gareth McMullin 2223a1c925 Add a Makefile to build flash stubs. 2015-03-19 07:43:36 -07:00
Gareth McMullin 7372fca2f6 Merge pull request #83 from gsmcmullin/samd_no_ap
samd: Remove low level ADIv5 calls an favour of target_mem_write.
2015-03-18 19:07:03 -07:00
Gareth McMullin 1de685198c Flatten samd_probe. 2015-03-17 21:58:36 -07:00
Gareth McMullin 5c337c9aa7 Whitespace. 2015-03-17 21:58:36 -07:00
Richard Meadows 1366c32f89 samd: Simplified samd_flash_write further by always using manual writes.
Tested on all three devices as listed at the top of samd.c
2015-03-17 21:58:36 -07:00
Gareth McMullin 0bf7778759 samd: Remove low level ADIv5 calls an favour of target_mem_write. 2015-03-17 21:58:36 -07:00