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
Gareth McMullin
018d9cce80
Check vasprintf return value.
2015-03-17 21:19:02 -07:00
Gareth McMullin
f5f87bf70f
Build for stlink with -Os.
2015-03-15 20:39:19 -07:00
Gareth McMullin
c3f798438a
Remove abstraction of adiv5_dp_write. Both implementations were identical.
2015-03-15 17:12:31 -07:00
Gareth McMullin
2bf54f9a72
Replace adiv5_ap_mem* functions with inline wrappers to target mem*.
2015-03-15 16:02:09 -07:00
Gareth McMullin
ee3af96a73
Consolidate target_mem_read* and target_mem_write* methods.
...
There are now only mem_read and mem_write, that must
handle all alignments. These methods return void, errors must be
checked with target_check_error.
2015-03-15 14:31:57 -07:00
Gareth McMullin
2e785e56fa
adiv5: Encode APnDP into register definition.
...
Clean up magic numbers in adiv5 calls.
Removed old adiv5_dp_write_ap and adiv5_dp_read_ap.
2015-03-14 18:03:04 -07:00
Gareth McMullin
6f5b1873d7
Use size_t for sizes in flash functions. Fix all sign compare warnings.
2015-03-14 15:18:22 -07:00
Gareth McMullin
f5c856af3b
Fix pointer sign warnings and remove -Wno-pointer-sign.
2015-03-13 20:35:39 -07:00
Gareth McMullin
f52a51403f
stm32l0: cleanup includes.
2015-03-11 20:47:51 -07:00
Gareth McMullin
1196b03d66
stm32l0: Fix pointer/integer casting warnings.
2015-03-11 20:47:51 -07:00
Gareth McMullin
3d28c1418c
Cleaned up printf/scanf for C99 integer types.
2015-03-11 20:47:42 -07:00
Gareth McMullin
4baa8aba4f
cdcacm: Fix DCD for second ACM interface.
2015-03-11 20:13:38 -07:00
Gareth McMullin
7c1c19881f
Reassert DCD after DTR is written. Fixes #41 .
2015-03-11 05:45:43 -07:00
Gareth McMullin
f9d484d506
upgrade: Build with -mno-ms-bitfields to fix struct packing on Windows.
2015-03-10 21:58:37 -07:00
Gareth McMullin
2129210bb0
Add .exe and blackmagic_upgrade to .gitignore.
2015-03-08 19:41:42 -07:00
Gareth McMullin
3a746d199f
upgrade: Rename target to blackmagic_upgrade and add a rule for .exe file.
2015-03-08 19:39:42 -07:00
Gareth McMullin
0e99f6f11c
upgrade: Ignore product strings, these changed over time.
2015-03-08 19:38:59 -07:00
Gareth McMullin
a0f44e01cc
uprade: Fix warning on pointer sign.
2015-03-08 19:38:33 -07:00
Gareth McMullin
51f91092e7
Merge pull request #75 from beewoolie/stm32lx-whole
...
STM32Lx target support.
2015-03-08 16:56:01 -07:00
Marc Singer
bf1cb71eb7
Revisions on Gareth's comments.
...
o Implemented byte writes to EEPROM now that the emulator has a
byte-wide target write.
o Added comment describing the reason that mass erase doesn't work.
o Removed all unused code.
o Changed to Linux kernel indent style.
o Changed to Linux kernel function to parenthesis style.
o Stub generation doesn't use Perl, switched to sed. Also, only
including the instructions instead of the source and the instructions.
o Handling unaligned destination writes.
2015-03-08 16:25:22 -07:00
Marc Singer
e0a8ce5a88
STM32L0x target support.
...
Target support for stm32l0's and stm32l1's including option bytes and
data EEPROM. This module will superceed the previous stm32l1 driver.
o Program flash write and erase.
o Options modification and interpretive status.
o Stubs for program flash writes and erases. Stubs are modestly
faster than non-stub version. The stm32l0 will not execute stubs
when the MCU has crashed. A monitor option may be used to force
non-stub flash writes.
o Stubs generated from C++ code and converted to arrays of half-words.
o Writes to data EEPROM supoprted when loading segments.
o EEPROM data monitor command to write words.
o Stubs supported on stm32l1.
2015-03-08 16:17:34 -07:00
Gareth McMullin
b6d73442cc
Removed hardware design files.
...
They moved to their own repository.
2015-03-07 20:54:55 -08:00
Gareth McMullin
0d99e22a26
Quieten build system.
2015-03-07 11:03:50 -08:00
Gareth McMullin
1eac78b1c8
Move targets to make bin and hex files to toplevel makefile.
2015-03-07 11:03:50 -08:00
Gareth McMullin
2b774102fe
Initialise git submodules automatically on make if not done already.
2015-03-07 11:03:50 -08:00
Gareth McMullin
a54e4c831c
Merge pull request #81 from dlaw/master
...
SAM4S: Erase flash in 8K instead of 16K chunks.
2015-03-05 22:30:26 -08:00
David Lawrence
c8f469c868
SAM4S: Erase flash in 8K instead of 16K chunks.
2015-03-05 10:46:22 -05:00
Gareth McMullin
c731c6ece3
Make F4 conditionals check STM32F4, not F4DISCOVERY.
2015-03-03 21:39:29 -08:00
Gareth McMullin
2e37db2270
Error on any failure on 'make all_platforms'
2015-03-02 23:14:43 -08:00
Gareth McMullin
87b8f330f0
Add a makefile target to build all platforms.
2015-03-02 22:20:25 -08:00
Gareth McMullin
3e466f2d23
Factor out timing routines common to all STM32 targets.
2015-03-02 21:59:04 -08:00
Gareth McMullin
b07ffffcee
Factor out common cdcacm.c from stm32 and tm4c.
...
Cleaned up interface to enter bootloader and read serial number.
2015-03-02 10:16:33 -08:00
Gareth McMullin
4d4813de87
Clean up includes everywhere.
...
All source files include general.h first and before anything else.
This inlcludes platform.h and platform_support.h
No header file needs to include to include any of these, but should include
any others needed for it's own declarations.
2015-03-01 22:16:04 -08:00