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
Gareth McMullin
9d80641261
Move common platform include to a common directory.
2015-03-01 20:15:31 -08:00
Gareth McMullin
476f83b69a
Move common USB stuff out of platform header files.
2015-02-28 22:48:26 -08:00
Gareth McMullin
5eff0ab5d6
Factor out common GPIO code in STM32 platforms.
2015-02-28 22:09:50 -08:00