Registered User mNo edit summary |
Registered User mNo edit summary Tag: 2017 source edit |
||
Line 8: | Line 8: | ||
** The '''OpenSTLinux BSP''' with: | ** The '''OpenSTLinux BSP''' with: | ||
*** The [[Boot_chain_overview|boot chain]] based on [[TF-A overview|TF-A BL2]] and [[U-Boot overview|U-Boot]]. | *** The [[Boot_chain_overview|boot chain]] based on [[TF-A overview|TF-A BL2]] and [[U-Boot overview|U-Boot]]. | ||
*** The secure monitor based on [[TF-A overview|TF-A BL31]] or [[OP-TEE overview|OP-TEE ]] depending on Cortex<sup>®</sup>-A architecture, running on the Arm<sup>®</sup> Cortex<sup>®</sup>-A in secure mode. | *** The secure monitor based on [[TF-A overview|TF-A BL31]] or [[STM32 MPU OP-TEE overview|OP-TEE ]] depending on Cortex<sup>®</sup>-A architecture, running on the Arm<sup>®</sup> Cortex<sup>®</sup>-A in secure mode. | ||
*** The [[OP-TEE overview|OP-TEE ]] secure OS running on the Arm<sup>®</sup> Cortex<sup>®</sup>-A in secure mode. | *** The [[STM32 MPU OP-TEE overview|OP-TEE ]] secure OS running on the Arm<sup>®</sup> Cortex<sup>®</sup>-A in secure mode. | ||
*** The [[STM32 MPU Linux kernel overview | Linux<sup>®</sup> kernel]] running on the Arm<sup>®</sup> Cortex<sup>®</sup>-A in non-secure mode. | *** The [[STM32 MPU Linux kernel overview | Linux<sup>®</sup> kernel]] running on the Arm<sup>®</sup> Cortex<sup>®</sup>-A in non-secure mode. | ||
** The '''Linux middleware''' relies on the BSP to provide API to the '''Applications''' that typically interact with the user via the display, the touchscreen, etc. | ** The '''Linux middleware''' relies on the BSP to provide API to the '''Applications''' that typically interact with the user via the display, the touchscreen, etc. | ||
Line 22: | Line 22: | ||
{{ImageMap|Image: STM32MPU Embedded Software architecture overview.png {{!}} frame {{!}} center {{!}} STM32MPU Embedded Software architecture overview. | {{ImageMap|Image: STM32MPU Embedded Software architecture overview.png {{!}} frame {{!}} center {{!}} STM32MPU Embedded Software architecture overview. | ||
rect 418 157 503 209 [[Linux application frameworks overview]] | rect 418 157 503 209 [[Linux application frameworks overview]] | ||
rect 123 275 208 327 [[OP-TEE overview]] | rect 123 275 208 327 [[STM32 MPU OP-TEE overview]] | ||
rect 215 275 300 327 [[TF-A overview]] | rect 215 275 300 327 [[TF-A overview]] | ||
rect 325 275 410 327 [[U-Boot overview]] | rect 325 275 410 327 [[U-Boot overview]] |
Latest revision as of 15:27, 25 July 2024
1. STM32MPU Embedded Software overview[edit | edit source]
The diagram below shows STM32MPU Embedded Software distribution main components:
- The OpenSTLinux distribution, running on the Arm® Cortex®-A, includes:
- The OpenSTLinux BSP with:
- The boot chain based on TF-A BL2 and U-Boot.
- The secure monitor based on TF-A BL31 or OP-TEE depending on Cortex®-A architecture, running on the Arm® Cortex®-A in secure mode.
- 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.
- The Linux middleware relies on the BSP to provide API to the Applications that typically interact with the user via the display, the touchscreen, etc.
- On OP-TEE side, the Trusted Applications (TA) relies on the OP-TEE core for secrets operations (not visible from the Linux and other software components).
- The OpenSTLinux BSP with:
- The composition of the firmware running on Arm® Cortex®-M (not available on STM32MP13x lines
) depends on Arm® Cortex®-M architecture; it includes:
- The STM32Cube MPU Package running on the Arm® Cortex®-M non secure mode: it is based on HAL drivers and middleware, like STM32 microcontrollers, completed with coprocessor management for interaction with the Cortex-A.
- The Trusted Firmware Cortex-M secure OS running on the Arm® Cortex®-M in secure mode: it provides local secure services to STM32Cube MPU Package.
The OpenSTLinux distribution is generated with OpenEmbedded build framework : the BSP components are modified open source software components, stored on github, whereas the middleware is directly inherited from communities. See our Open Source Software (OSS) philosophy just below for further information.
The figure below is clickable so that the user can directly jump to one of the sub-levels listed above.

2. Open Source Software (OSS) philosophy[edit | 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[2], until it is merged in the targeted repository.
3. References[edit | edit source]