blackmagic/flashstub
Richard Meadows 07f7571dd1 Add basic support for EFM32/EZR32 chips
Tested with EZR32LG230
2015-10-23 19:58:44 +01:00
..
Makefile Add STM32L4 handling. No option write handling yet. 2015-08-22 12:59:56 +02:00
README Revisions on Gareth's comments. 2015-03-08 16:25:22 -07:00
efm32.c Add basic support for EFM32/EZR32 chips 2015-10-23 19:58:44 +01:00
efm32.stub Add basic support for EFM32/EZR32 chips 2015-10-23 19:58:44 +01:00
lmi.c lmi: Use registers for stub parameters. 2015-04-21 20:05:41 +12:00
lmi.stub flashstub: Stubs need to run on different targets. Compile for M0. 2015-06-22 16:44:28 +02:00
nrf51.s Nordic nRF51 series support 2014-05-01 15:09:59 +01:00
nrf51.stub flashstub: Stubs need to run on different targets. Compile for M0. 2015-06-22 16:44:28 +02:00
stm32f1.c Use for loop in STM32F1 stub and compile with -Os. 2015-03-19 21:49:09 -07:00
stm32f1.stub flashstub: Stubs need to run on different targets. Compile for M0. 2015-06-22 16:44:28 +02:00
stm32f4.c flashstub/stm32f4.c: Add barrier needed for STM32F7. 2015-08-22 13:01:24 +02:00
stm32f4.stub flashstub/stm32f4.c: Add barrier needed for STM32F7. 2015-08-22 13:01:24 +02:00
stm32l4.c Add STM32L4 handling. No option write handling yet. 2015-08-22 12:59:56 +02:00
stm32l4.stub Add STM32L4 handling. No option write handling yet. 2015-08-22 12:59:56 +02:00
stub.h Add missing return type to stub_exit. 2015-03-19 21:49:09 -07:00

README

Flash Stubs
===========

For most of the targets, these are assembler routines for executing
a flash write on the supported targets.  They are kept here for
reference, but are not used, as the compiled binary code is included
in the target drivers.

For the STM32l0x, the stubs are written in C++ and emitted as arrays
of half-words for inclusion in the target driver.  The use of a higher
level language allows more detailed code and for easy revisions.
These stubs communicate with the driver through a structure defined in
the src/include/stm32l0-nvm.h header.

The dump-to-array.sh helper script uses sed to transform the output of
'objdump -d' into a half-word array of the instructions that may be
included in C code to declare the stub.  FWIW, objcopy doesn't produce
the same output as objdump.  It omits some of the instructions,
probably because the object file isn't linked.