Registered User mNo edit summary |
Registered User mNo edit summary Tag: 2017 source edit |
||
(35 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
==Introduction to | <noinclude>{{ApplicableFor | ||
|MPUs list=STM32MP13x, STM32MP15x, STM32MP25x | |||
|MPUs checklist=STM32MP13x, STM32MP15x, STM32MP25x | |||
}} | |||
</noinclude> | |||
==Introduction to external device tree component== | |||
The '''external device tree''' component is used to host STM32 MPU embedded software device tree configurations in addition of the ones present in each software component (TF-A, OP-TEE, U-BOOT, LINUX, TF-M).<br /> | |||
The external device tree repository can be found {{CodeSource | External_DT | / | '''here''' }}.<br /> | |||
<br /> | |||
Please, find below some types of configurations stored in this repository: | |||
* '''Linux RT''' for {{MicroprocessorDevice | device=1}} and {{MicroprocessorDevice | device=2}}. | |||
* '''STM32MP2xx CA35TDCID ecosystem''' (for example, ostl device tree) in addition of the ''minimal configuration'' present in each software component. | |||
* '''STM32CubeMP2 M33 examples''' (for example, ostl-m33-examples device tree) | |||
* ... other configurations to come soon... ('''STM32MP2xx CM33TDCID ecosystem''', ...) | |||
As configurations become increasingly complex, it is important to synchronize all software components device trees in one place. This centralization permits to have a coherent configuration across all of them.<br /> | |||
This consistent product configuration is given as an example by ST in this external device tree repository and is used by the YOCTO build system. | |||
== Component | ==Component usage== | ||
It can be used directly by the OSTL YOCTO build system or directly by each software component. Here is how to use it: | |||
*'''TF-A:''' [[How_to_configure_TF-A_BL2#OSTL_device_tree_for_STM32MP2_series| External device tree in TF-A]] | |||
*''' | *'''OP-TEE:''' [[How_to_build_OP-TEE_components#Bare_environment| External device tree in OP-TEE]] | ||
*''' | *'''U-Boot:''' [[STM32MP25_U-Boot#STM32MP257F-EV1_Evaluation_board_with_OSTL_device_tree| External device tree in U-Boot]] | ||
*''' | *'''Linux:''' [[How_to_cross-compile_with_the_Developer_Package#STM32MP257F-EV1_Evaluation_board_with_external_device_tree| External device tree in kernel Linux]] | ||
*''' | *'''TFM:''' [[How_to_configure_TF-M#External_device_tree_for_STM32MP2_series| External device tree in TF-M]] | ||
{{Highlight| | ==STM32MP2 ecosystem device tree details== | ||
The firewall configuration (RIF) has been introduced in {{MicroprocessorDevice | device=2}} and it involves creating coherence and synchronization between these system configuration files (rcc, rif, and resmem).<br /> | |||
The device tree files, related to the "SoC" definition, are located as described below: | |||
*'''RIF''' (firewall) configuration in OP-TEE: {{Highlight|stm32mp257f-ev1-ca35tdcid-ostl-rif.dtsi}} | |||
*'''RCC''' (Clock tree) configuration in TF-A and OP-TEE: {{Highlight|stm32mp257f-ev1-ca35tdcid-ostl-rcc.dtsi}} | |||
*'''Memory mapping''' configuration in all components: {{Highlight|stm32mp257f-ev1-ca35tdcid-ostl-resmem.dtsi}} | |||
*'''Board''' configuration in all components: {{Highlight|stm32mp257f-ev1-ca35tdcid-ostl.dts}} | |||
{{Highlight|DT name example given for an EV1 ("ev1") board with Cortex-A35 ("ca35") set as main processor for {{MicroprocessorDevice | device=25 | security=Advanced | frequency=1500}} (stm32mp257f).}} | |||
<noinclude> | |||
[[Category:Embedded software components]] | [[Category:Embedded software components]] | ||
{{PublicationRequestId | 31771| 2024-07-22| }} | |||
{{ | </noinclude> |
Latest revision as of 16:42, 20 August 2024
1. Introduction to external device tree component
The external device tree component is used to host STM32 MPU embedded software device tree configurations in addition of the ones present in each software component (TF-A, OP-TEE, U-BOOT, LINUX, TF-M).
The external device tree repository can be found here .
Please, find below some types of configurations stored in this repository:
- Linux RT for STM32MP1 series and STM32MP2 series.
- STM32MP2xx CA35TDCID ecosystem (for example, ostl device tree) in addition of the minimal configuration present in each software component.
- STM32CubeMP2 M33 examples (for example, ostl-m33-examples device tree)
- ... other configurations to come soon... (STM32MP2xx CM33TDCID ecosystem, ...)
As configurations become increasingly complex, it is important to synchronize all software components device trees in one place. This centralization permits to have a coherent configuration across all of them.
This consistent product configuration is given as an example by ST in this external device tree repository and is used by the YOCTO build system.
2. Component usage
It can be used directly by the OSTL YOCTO build system or directly by each software component. Here is how to use it:
- TF-A: External device tree in TF-A
- OP-TEE: External device tree in OP-TEE
- U-Boot: External device tree in U-Boot
- Linux: External device tree in kernel Linux
- TFM: External device tree in TF-M
3. STM32MP2 ecosystem device tree details
The firewall configuration (RIF) has been introduced in STM32MP2 series and it involves creating coherence and synchronization between these system configuration files (rcc, rif, and resmem).
The device tree files, related to the "SoC" definition, are located as described below:
- RIF (firewall) configuration in OP-TEE: stm32mp257f-ev1-ca35tdcid-ostl-rif.dtsi
- RCC (Clock tree) configuration in TF-A and OP-TEE: stm32mp257f-ev1-ca35tdcid-ostl-rcc.dtsi
- Memory mapping configuration in all components: stm32mp257f-ev1-ca35tdcid-ostl-resmem.dtsi
- Board configuration in all components: stm32mp257f-ev1-ca35tdcid-ostl.dts
DT name example given for an EV1 ("ev1") board with Cortex-A35 ("ca35") set as main processor for STM32MP25xF lines (stm32mp257f).