Bootloader firmware for the Maple ARM Cortex-M3 development board from LeafLabs
C C++ Assembly Python
Latest commit 5f09352 Apr 24, 2014 Marti Bolivar Merge pull request #9 from Gregwar/dfu-fix
Fixing dfu.c to allow compiling with -Os


FILES -------------------------------------------------------------------------

  - all the (possibly consolidated) stm32 lib and usb example code

  - USB-specific hardware setup. Interrupts, clocks, etc. handling USB when 
    not "Attached". some low-level callbacks (low power mode, init, reset, 
    resume, etc).

  - aka endpoints: handling data transfer when "Configured". calls out to 
    application specific callbacks (i.e. DFU).

  - aka application descriptor; big static struct and callbacks for sending
    the descriptor. 

  - main loop and calling any hardware init stuff. timing hacks for EEPROM 
    writes not to block usb interrupts. logic to handle 2 second timeout then
    jump to user code. 

  - init routines to setup clocks, interrupts, also destructor functions.
    does not include USB stuff. EEPROM read/write functions.

  - mostly the giant FSM case switch, also some USB endpoint callbacks

TODO --------------------------------------------------------------------------

 * pack the structs
 * use sizeof() for usb application descriptor once structs are packed