STM32MPU Embedded Software for Android architecture overview

Revision as of 09:16, 6 September 2019 by Registered User


1. Overview of STM32MPU Embedded Software for Android[edit source]

The diagram below shows theSTM32MPU Embedded Software distribution for Android main components:

  • The STM32MPU distribution for Android™ running on the Arm® Cortex®-A core. It includes:
    • The OpenSTLinux BSP consisting of:
      • The boot chain based on TF-A and U-Boot.
      • The OP-TEE secure OS running on the Arm® Cortex®-A in Secure mode.
      • The Linux® kernel running on the Arm® Cortex®-A in Non-secure mode.
    • Application frameworks composed of middleware components relying on the BSP and providing a set of APIs:
      • OP-TEE APIs to run Trusted Applications (TA) that allow manipulating secrets (information not visible from Linux® and from the STM32Cube MPU Package)
      • Android APIs to run Applications that typically interact with the user via a display or a touchscreen.
  • The STM32Cube MPU Package, running on the Arm® Cortex®-M. As for STM32 MCUs, it is based on HAL drivers and middleware components and completed with coprocessor management.

The figure provides an overview of STM32MPU Embedded Software architecture. Click a block to jump to one of the sub-levels listed above.


STM32CubeMP1 architectureOP-TEE overviewOP-TEE overviewTF-A overviewU-Boot overviewSTM32MP15 Linux kernel overviewBoot chains overviewAndroid application frameworks overviewOpenSTLinux BSP architecture overviewSecurity overview
STM32MPU Embedded Software architecture overview...

OpenSTLinux OE legend.png


2. Open Source Software (OSS) philosophy[edit source]

The Open source software source code is released under a license in which the copyright holder grants users the rights to study, change and distribute the software to anyone and for any purpose[1].
STMicroelectronics maximizes the using of open source software and contributes to those communities. Notice that, due to the software review life cycle, it can take some time before getting all developments accepted in the communities, so STMicroelectronics can also temporarily provide some source code on github (see STM32MP1 Distribution Package for Android), until it is merged in the targeted repository.

3. References[edit source]