Registered User mNo edit summary Tag: 2017 source edit |
Registered User mNo edit summary Tag: 2017 source edit |
||
(5 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
{{ApplicableFor | <noinclude>{{ApplicableFor | ||
|MPUs list=STM32MP13x, STM32MP15x, STM32MP25x | |MPUs list=STM32MP13x, STM32MP15x, STM32MP25x | ||
|MPUs checklist=STM32MP13x, STM32MP15x, STM32MP25x | |MPUs checklist=STM32MP13x, STM32MP15x, STM32MP25x | ||
}} | }} | ||
</noinclude> | |||
==Introduction to external device tree component== | ==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''' 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 /> | The external device tree repository can be found {{CodeSource | External_DT | / | '''here''' }}.<br /> | ||
<br /> | <br /> | ||
Please, find below some | Please, find below some types of configurations stored in this repository: | ||
* '''Linux RT''' for | * '''Linux RT''' for {{MicroprocessorDevice | device=1}} and {{MicroprocessorDevice | device=2}}. | ||
* '''STM32MP2xx CA35TDCID ecosystem''' ( | * '''STM32MP2xx CA35TDCID ecosystem''' (for example, ostl device tree) in addition of the ''minimal configuration'' present in each software component. | ||
* '''STM32CubeMP2 M33 examples''' ( | * '''STM32CubeMP2 M33 examples''' (for example, ostl-m33-examples device tree) | ||
* ... other configurations to come soon... ('''STM32MP2xx CM33TDCID ecosystem''', ...) | * ... 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 /> | 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 example by ST in this external device tree repository and is used by YOCTO build system. | 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 usage== | ==Component usage== | ||
It can | 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]] | *'''TF-A:''' [[How_to_configure_TF-A_BL2#OSTL_device_tree_for_STM32MP2_series| External device tree in TF-A]] | ||
*'''OP-TEE:''' [[ | *'''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]] | *'''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]] | *'''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]] | *'''TFM:''' [[How_to_configure_TF-M#External_device_tree_for_STM32MP2_series| External device tree in TF-M]] | ||
== | ==STM32MP2 ecosystem device tree details== | ||
The firewall configuration (RIF) has been introduced in | 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: | 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}} | *'''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}} | *'''RCC''' (Clock tree) configuration in TF-A and OP-TEE: {{Highlight|stm32mp257f-ev1-ca35tdcid-ostl-rcc.dtsi}} | ||
*'''Memory mapping''' configuration | *'''Memory mapping''' configuration in all components: {{Highlight|stm32mp257f-ev1-ca35tdcid-ostl-resmem.dtsi}} | ||
*'''Board''' configuration in all components: {{Highlight|stm32mp257f-ev1-ca35tdcid-ostl.dts}} | *'''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).}} | {{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).