Message ID | 20210617165647.2575955-4-erdnaxe@crans.org |
---|---|
State | New |
Headers | show |
Series | STM32VLDISCOVERY Machine Model | expand |
On Fri, Jun 18, 2021 at 2:56 AM Alexandre Iooss <erdnaxe@crans.org> wrote: > > This adds the target guide for Netduino 2, Netduino Plus 2 and STM32VLDISCOVERY. > > Signed-off-by: Alexandre Iooss <erdnaxe@crans.org> Reviewed-by: Alistair Francis <alistair.francis@wdc.com> Alistair > --- > MAINTAINERS | 1 + > docs/system/arm/stm32.rst | 66 ++++++++++++++++++++++++++++++++++++++ > docs/system/target-arm.rst | 1 + > 3 files changed, 68 insertions(+) > create mode 100644 docs/system/arm/stm32.rst > > diff --git a/MAINTAINERS b/MAINTAINERS > index 0aa8016936..47fb06e5fc 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -896,6 +896,7 @@ M: Alexandre Iooss <erdnaxe@crans.org> > L: qemu-arm@nongnu.org > S: Maintained > F: hw/arm/stm32vldiscovery.c > +F: docs/system/arm/stm32.rst > > Versatile Express > M: Peter Maydell <peter.maydell@linaro.org> > diff --git a/docs/system/arm/stm32.rst b/docs/system/arm/stm32.rst > new file mode 100644 > index 0000000000..508b92cf86 > --- /dev/null > +++ b/docs/system/arm/stm32.rst > @@ -0,0 +1,66 @@ > +STMicroelectronics STM32 boards (``netduino2``, ``netduinoplus2``, ``stm32vldiscovery``) > +======================================================================================== > + > +The `STM32`_ chips are a family of 32-bit ARM-based microcontroller by > +STMicroelectronics. > + > +.. _STM32: https://www.st.com/en/microcontrollers-microprocessors/stm32-32-bit-arm-cortex-mcus.html > + > +The STM32F1 series is based on ARM Cortex-M3 core. The following machines are > +based on this chip : > + > +- ``stm32vldiscovery`` STM32VLDISCOVERY board with STM32F100RBT6 microcontroller > + > +The STM32F2 series is based on ARM Cortex-M3 core. The following machines are > +based on this chip : > + > +- ``netduino2`` Netduino 2 board with STM32F205RFT6 microcontroller > + > +The STM32F4 series is based on ARM Cortex-M4F core. This series is pin-to-pin > +compatible with STM32F2 series. The following machines are based on this chip : > + > +- ``netduinoplus2`` Netduino Plus 2 board with STM32F405RGT6 microcontroller > + > +There are many other STM32 series that are currently not supported by QEMU. > + > +Supported devices > +----------------- > + > + * ARM Cortex-M3, Cortex M4F > + * Analog to Digital Converter (ADC) > + * EXTI interrupt > + * Serial ports (USART) > + * SPI controller > + * System configuration (SYSCFG) > + * Timer controller (TIMER) > + > +Missing devices > +--------------- > + > + * Camera interface (DCMI) > + * Controller Area Network (CAN) > + * Cycle Redundancy Check (CRC) calculation unit > + * Digital to Analog Converter (DAC) > + * DMA controller > + * Ethernet controller > + * Flash Interface Unit > + * GPIO controller > + * I2C controller > + * Inter-Integrated Sound (I2S) controller > + * Power supply configuration (PWR) > + * Random Number Generator (RNG) > + * Real-Time Clock (RTC) controller > + * Reset and Clock Controller (RCC) > + * Secure Digital Input/Output (SDIO) interface > + * USB OTG > + * Watchdog controller (IWDG, WWDG) > + > +Boot options > +------------ > + > +The STM32 machines can be started using the ``-kernel`` option to load a > +firmware. Example: > + > +.. code-block:: bash > + > + $ qemu-system-arm -M stm32vldiscovery -kernel firmware.bin > diff --git a/docs/system/target-arm.rst b/docs/system/target-arm.rst > index edd013c7bb..addd3d1613 100644 > --- a/docs/system/target-arm.rst > +++ b/docs/system/target-arm.rst > @@ -96,6 +96,7 @@ undocumented; you can get a complete list by running > arm/collie > arm/sx1 > arm/stellaris > + arm/stm32 > arm/virt > arm/xlnx-versal-virt > > -- > 2.25.1 >
diff --git a/MAINTAINERS b/MAINTAINERS index 0aa8016936..47fb06e5fc 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -896,6 +896,7 @@ M: Alexandre Iooss <erdnaxe@crans.org> L: qemu-arm@nongnu.org S: Maintained F: hw/arm/stm32vldiscovery.c +F: docs/system/arm/stm32.rst Versatile Express M: Peter Maydell <peter.maydell@linaro.org> diff --git a/docs/system/arm/stm32.rst b/docs/system/arm/stm32.rst new file mode 100644 index 0000000000..508b92cf86 --- /dev/null +++ b/docs/system/arm/stm32.rst @@ -0,0 +1,66 @@ +STMicroelectronics STM32 boards (``netduino2``, ``netduinoplus2``, ``stm32vldiscovery``) +======================================================================================== + +The `STM32`_ chips are a family of 32-bit ARM-based microcontroller by +STMicroelectronics. + +.. _STM32: https://www.st.com/en/microcontrollers-microprocessors/stm32-32-bit-arm-cortex-mcus.html + +The STM32F1 series is based on ARM Cortex-M3 core. The following machines are +based on this chip : + +- ``stm32vldiscovery`` STM32VLDISCOVERY board with STM32F100RBT6 microcontroller + +The STM32F2 series is based on ARM Cortex-M3 core. The following machines are +based on this chip : + +- ``netduino2`` Netduino 2 board with STM32F205RFT6 microcontroller + +The STM32F4 series is based on ARM Cortex-M4F core. This series is pin-to-pin +compatible with STM32F2 series. The following machines are based on this chip : + +- ``netduinoplus2`` Netduino Plus 2 board with STM32F405RGT6 microcontroller + +There are many other STM32 series that are currently not supported by QEMU. + +Supported devices +----------------- + + * ARM Cortex-M3, Cortex M4F + * Analog to Digital Converter (ADC) + * EXTI interrupt + * Serial ports (USART) + * SPI controller + * System configuration (SYSCFG) + * Timer controller (TIMER) + +Missing devices +--------------- + + * Camera interface (DCMI) + * Controller Area Network (CAN) + * Cycle Redundancy Check (CRC) calculation unit + * Digital to Analog Converter (DAC) + * DMA controller + * Ethernet controller + * Flash Interface Unit + * GPIO controller + * I2C controller + * Inter-Integrated Sound (I2S) controller + * Power supply configuration (PWR) + * Random Number Generator (RNG) + * Real-Time Clock (RTC) controller + * Reset and Clock Controller (RCC) + * Secure Digital Input/Output (SDIO) interface + * USB OTG + * Watchdog controller (IWDG, WWDG) + +Boot options +------------ + +The STM32 machines can be started using the ``-kernel`` option to load a +firmware. Example: + +.. code-block:: bash + + $ qemu-system-arm -M stm32vldiscovery -kernel firmware.bin diff --git a/docs/system/target-arm.rst b/docs/system/target-arm.rst index edd013c7bb..addd3d1613 100644 --- a/docs/system/target-arm.rst +++ b/docs/system/target-arm.rst @@ -96,6 +96,7 @@ undocumented; you can get a complete list by running arm/collie arm/sx1 arm/stellaris + arm/stm32 arm/virt arm/xlnx-versal-virt
This adds the target guide for Netduino 2, Netduino Plus 2 and STM32VLDISCOVERY. Signed-off-by: Alexandre Iooss <erdnaxe@crans.org> --- MAINTAINERS | 1 + docs/system/arm/stm32.rst | 66 ++++++++++++++++++++++++++++++++++++++ docs/system/target-arm.rst | 1 + 3 files changed, 68 insertions(+) create mode 100644 docs/system/arm/stm32.rst