xref: /openbmc/qemu/docs/system/arm/stm32.rst (revision b278b60d)
1STMicroelectronics STM32 boards (``netduino2``, ``netduinoplus2``, ``olimex-stm32-h405``, ``stm32vldiscovery``)
2===============================================================================================================
3
4The `STM32`_ chips are a family of 32-bit ARM-based microcontroller by
5STMicroelectronics.
6
7.. _STM32: https://www.st.com/en/microcontrollers-microprocessors/stm32-32-bit-arm-cortex-mcus.html
8
9The STM32F1 series is based on ARM Cortex-M3 core. The following machines are
10based on this chip :
11
12- ``stm32vldiscovery``  STM32VLDISCOVERY board with STM32F100RBT6 microcontroller
13
14The STM32F2 series is based on ARM Cortex-M3 core. The following machines are
15based on this chip :
16
17- ``netduino2``         Netduino 2 board with STM32F205RFT6 microcontroller
18
19The STM32F4 series is based on ARM Cortex-M4F core, as well as the STM32L4
20ultra-low-power series. The STM32F4 series is pin-to-pin compatible with STM32F2 series.
21The following machines are based on this ARM Cortex-M4F chip :
22
23- ``netduinoplus2``     Netduino Plus 2 board with STM32F405RGT6 microcontroller
24- ``olimex-stm32-h405`` Olimex STM32 H405 board with STM32F405RGT6 microcontroller
25- ``b-l475e-iot01a``     :doc:`B-L475E-IOT01A IoT Node </system/arm/b-l475e-iot01a>` board with STM32L475VG microcontroller
26
27There are many other STM32 series that are currently not supported by QEMU.
28
29Supported devices
30-----------------
31
32 * ARM Cortex-M3, Cortex M4F
33 * Analog to Digital Converter (ADC)
34 * EXTI interrupt
35 * Serial ports (USART)
36 * SPI controller
37 * System configuration (SYSCFG)
38 * Timer controller (TIMER)
39 * Reset and Clock Controller (RCC) (STM32F4 only, reset and enable only)
40
41Missing devices
42---------------
43
44 * Camera interface (DCMI)
45 * Controller Area Network (CAN)
46 * Cycle Redundancy Check (CRC) calculation unit
47 * Digital to Analog Converter (DAC)
48 * DMA controller
49 * Ethernet controller
50 * Flash Interface Unit
51 * GPIO controller
52 * I2C controller
53 * Inter-Integrated Sound (I2S) controller
54 * Power supply configuration (PWR)
55 * Random Number Generator (RNG)
56 * Real-Time Clock (RTC) controller
57 * Reset and Clock Controller (RCC) (other features than reset and enable)
58 * Secure Digital Input/Output (SDIO) interface
59 * USB OTG
60 * Watchdog controller (IWDG, WWDG)
61
62Boot options
63------------
64
65The STM32 machines can be started using the ``-kernel`` option to load a
66firmware. Example:
67
68.. code-block:: bash
69
70  $ qemu-system-arm -M stm32vldiscovery -kernel firmware.bin
71