Registered User (Created page with "<noinclude> {{ArticleMainWriter | NicolasL}} {{ArticleApprovedVersion | Jean-ChristopheT | Nobody | No previous approved version | Automatic approval (article under constructi...") |
Registered User mNo edit summary Tag: 2017 source edit |
||
(34 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
<noinclude>{{ApplicableFor | |||
|MPUs list=STM32MP25x | |||
|MPUs checklist=STM32MP13x, STM32MP15x, STM32MP25x | |||
}}</noinclude> | |||
The diagram below shows [[:Category:STM32MPU Embedded Software distribution for Android|STM32MPU Embedded Software distribution for Android]] main components: | |||
* The '''OpenSTDroid distribution''', running on the Arm<sup>®</sup> Cortex<sup>®</sup>-A, includes: | |||
** 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 secure monitor based on [[TF-A overview|TF-A BL31]] 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. | |||
** '''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<sup>®</sup> 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<sup>®</sup> Cortex<sup>®</sup>-M non secure mode: it is based on HAL drivers and middleware, like STM32 microcontrollers, completed with [[Coprocessor_management_overview|coprocessor management]] for interaction with the Cortex-A. | |||
The figure below provides an overview of the STM32MPU Embedded Software architecture.<br /> | |||
{{ImageMap|Image: STM32MPU Embedded Software for Android architecture overview.png {{!}} 750px {{!}} thumb {{!}} center {{!}} STM32MPU Embedded Software for Android architecture overview.}} | |||
[[File:OpenSTLinux OE legend.png|center]] | |||
== Open Source Software (OSS) philosophy == | |||
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<ref>https://en.wikipedia.org/wiki/Open-source_software</ref>. | |||
<br /> | |||
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<ref>[[STM32MPU Distribution Package for Android]]</ref>, until it is merged in the targeted repository. | |||
== References == | |||
<references/> | |||
<noinclude> | <noinclude> | ||
[[Category:Architecture overview|01]] | |||
[[Category: | |||
[[Category:Android]] | [[Category:Android]] | ||
{{PublicationRequestId | no id | no date}} | |||
</noinclude> | </noinclude> | ||
Latest revision as of 15:56, 25 July 2024
The diagram below shows STM32MPU Embedded Software distribution for Android main components:
- The OpenSTDroid 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 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.
- 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 OpenSTLinux BSP with:
- 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 figure below provides an overview of the STM32MPU Embedded Software architecture.
1. 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.
2. References[edit | edit source]