blackmagic/flashstub
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
..
README Revisions on Gareth's comments. 2015-03-08 16:25:22 -07:00
dump-to-array.sh Revisions on Gareth's comments. 2015-03-08 16:25:22 -07:00
lmi.s Added Flash programming stubs. 2011-02-12 22:09:38 +13:00
nrf51.s Nordic nRF51 series support 2014-05-01 15:09:59 +01:00
stm32.s Added support for STM32F0. 2012-10-24 18:08:01 +02:00
stm32f4.s stm32f4: Fixed chunk padding for flash programming. 2012-02-08 20:43:12 +13:00
stm32l05x-nvm-prog-erase.cc Revisions on Gareth's comments. 2015-03-08 16:25:22 -07:00
stm32l05x-nvm-prog-erase.stub Revisions on Gareth's comments. 2015-03-08 16:25:22 -07:00
stm32l05x-nvm-prog-write.cc Revisions on Gareth's comments. 2015-03-08 16:25:22 -07:00
stm32l05x-nvm-prog-write.stub Revisions on Gareth's comments. 2015-03-08 16:25:22 -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.