libopencm3
A free/libre/open-source firmware library for various ARM Cortex-M3 microcontrollers.
STM32F4
Here is a list of all modules:
[detail level 12345]
 CM3 DefinesDefined Constants and Types for Cortex M3 core features
 DebuggingMacros and functions to aid in debugging
 Cortex Core Defineslibopencm3 Defined Constants and Types for the Cortex Core
 Cortex-M Data Watch and Trace unit.System Control Space (SCS) => Data Watchpoint and Trace (DWT)
 Cortex-M Flash Patch and Breakpoint (FPB) unit
 Cortex-M Instrumentation Trace Macrocell (ITM)
 Cortex-M MPU Defineslibopencm3 Cortex Memory Protection Unit
 Cortex-M NVIC Defineslibopencm3 Cortex Nested Vectored Interrupt Controller
 Cortex-M System Control BlockThe System Control Block is a section of the System Control Space
 Cortex-M System Control SpaceThe System Control Space (SCS) is a memory-mapped 4KB address space that provides 32-bit registers for configuration, status reporting and control
 Cortex-M SysTick Defineslibopencm3 Defined Constants and Types for the Cortex SysTick
 Cortex-M Trace Port Interface Unit (TPIU)
 Cortex Core Peripheral APIsAPIs for Cortex Core peripherals
 DWTlibopencm3 Cortex-M Data Watchpoint and Trace unit
 NVIClibopencm3 Cortex Nested Vectored Interrupt Controller
 SCBlibopencm3 Cortex-M System Control Block
 SysTicklibopencm3 Cortex System Tick Timer
 Coresight RegistersCoreSight Lock Status Registers and Lock Access Registers are documented for the DWT, ITM, FPB and TPIU peripherals
 Peripheral APIsAPIs for device peripherals
 QuadSPI peripheral APIAPIs for the specialized SPI Flash peripheral
 DMA2D peripheral API
 DMA peripheral APIDMA library for the multi stream controller found in f2/f4/f7 parts
 DSI peripheral API
 LTDC peripheral API
 FLASH peripheral APIlibopencm3 STM32F4xx FLASH
 PWR peripheral APIlibopencm3 STM32F4xx Power Control
 RCC peripheral APIlibopencm3 STM32F4xx Reset and Clock Control
 RTC peripheral APIlibopencm3 STM32F4xx RTC
 ADC peripheral API
 CRC peripheral API
 DAC peripheral APIDigital to Analog Converter
 DCMI peripheral APIDigital camera interface
 EXTI peripheral API
 FMC peripheral API
 GPIO peripheral API
 HASH Peripheral API
 I2C peripheral API
 IWDG peripheral API
 LPTIM peripheral API
 RNG peripheral APIThis library supports "version 1" of the random number generator peripheral (RNG) in the STM32 series of ARM Cortex Microcontrollers by ST Microelectronics
 SPI peripheral API
 TIMER peripheral API
 USART peripheral API
 STM32F4xxLibraries for ST Microelectronics STM32F4xx series
 CRYPTOlibopencm3 STM32F4xx CRYPTO
 STM32F4xx DefinesDefined Constants and Types for the STM32F4xx series
 ADC DefinesDefined Constants and Types for the STM32F4xx Analog to Digital Converters
 CRC Defineslibopencm3 Defined Constants and Types for the STM32F4xx CRC Generator
 CRYPTO DefinesDefined constants and Types for the STM32F4xx Crypto Coprocessor
 DAC DefinesDefined Constants and Types for the STM32F4xx DAC
 DCMI DefinesDefined Constants and Macros for the STM32F4xx DCMI Peripheral
 DMA2D DefinesDefined Constants and Types for the STM32F4xx DMA2D Peripheral
 DMA DefinesDefined Constants and Types for the STM32F4xx DMA Controller
 DSI DefinesDefines Constants and Macros for the STM32F4xx Display Serial Interface Host and Wrapper
 EXTI DefinesDefined Constants and Types for the STM32F4xx External Interrupts
 FLASH DefinesDefined Constants and Types for the STM32F4xx FLASH Memory
 FMC DefinesDefined Constants and Types for the STM32F4xx Flexible Memory Controller
 GPIO DefinesDefined Constants and Types for the STM32F4xx General Purpose I/O
 HASH DefinesDefined Constants and Types for the STM32F4xx HASH Controller
 I2C DefinesDefined Constants and Types for the STM32F4xx I2C
 IWDG DefinesDefined Constants and Types for the STM32F4xx Independent Watchdog Timer
 LPTIM Defineslibopencm3 Defined Constants and Types for the STM32F4xx Low Power Timer
 LTDC DefinesDefined Constants and Types for the STM32F4xx LCD TFT Display Controller
 PWR DefinesDefined Constants and Types for the STM32F4xx Power Control
 QuadSPI DefinesDefined constants and types for the STM32F4 QuadSPI peripheral
 RCC DefinesDefined Constants and Types for the STM32F4xx Reset and Clock Control
 RTC DefinesDefined Constants and Types for the STM32F4xx RTC
 SPI DefinesDefined Constants and Types for the STM32F4xx SPI
 SYSCFG DefinesDefined Constants and Types for the STM32F4xx Sysconfig
 Timer Defineslibopencm3 Defined Constants and Types for the STM32F4xx Timers
 USART DefinesDefined Constants and Types for the STM32F4xx USART
 User interrupt service routines (ISR) prototypes for STM32 F4 series
 MAC Generic DefinesDefined Constants and Types for the Ethernet MAC
 MAC STM32Fxx7 DefinesDefined Constants and Types for the Ethernet MAC for STM32Fxx7 chips
 PHY Generic DefinesDefined Constants and Types for the Ethernet PHY
 PHY KSZ80X1 DefinesDefined Constants and Types for the Ethernet PHY KSZ80X1 chips chips
 CAN defineslibopencm3 Defined Constants and Types for STM32 CAN
 CAN register base address
 USB Audio Type DefinitionsDefined Constants and Types for the USB Audio Type Definitions
 USB CDC Type DefinitionsDefined Constants and Types for the USB CDC Type Definitions
 USB HID Type DefinitionsDefined Constants and Types for the USB HID Type Definitions
 USB MSC Type DefinitionsDefined Constants and Types for the USB MSC Type Definitions
 USB DriversDefined Constants and Types for the USB Drivers
 USB Standard Structure DefinitionsDefined Constants and Types for the USB Standard Structure Definitions
 CANlibopencm3 STM32Fxxx CAN
 User interrupt service routines (ISR) defaults for STM32 F4 series
 MAC Generic DriversEthernet MAC Generic Drivers
 MAC STM32Fxx7Ethernet MAC STM32Fxx7 Drivers
 PHY Generic DriversEthernet PHY Generic Drivers
 PHY KSZ8051MLLEthernet PHY STM32Fxx7 Drivers
 Generic USB DriversGeneric USB Drivers
 Generic USB Control RequestsGeneric USB Control Requests
 Generic USB Standard Request InterfaceGeneric USB Standard Request Interface
 Usb_msc