2025-07-24 2:42 AM
Hello everyone,
I am working with the STM32MP257F-EV1 with the distribution package, on scarthgap branch with tag : openstlinux-6.6-yocto-scarthgap-mpu-v25.06.11
I am working with STM32CubeMX version 6.15.
I am trying to setup a new machine based exactly on the default STM32MP257F-EV1 development board. So I am following every default values I can on STM32CubeMX project.
When the project is created the folders hierarchy is the following : and is at the following path : ~/workspace/MyProject/MyProject/layers/meta-st/meta-st-stm32mp-addons/mx/MyMachine
.
├── CA35
│ ├── DeviceTree
│ │ └── MyMachine (contains folders kernel, optee-os, tf-a, u-boot)
│ └── manifest.prop
├── CM33
│ ├── DeviceTree
│ │ └── MyMachine
│ └── NonSecure
│ ├── Core
│ └── STM32MP257FAIX_RAM.ld
├── Common
│ └── System
│ └── system_stm32mp2xx_m33.c
├── Drivers
│ ├── CMSIS
│ │ ├── Device
│ │ ├── Include
│ │ └── LICENSE.txt
│ └── STM32MP2xx_HAL_Driver
│ ├── Inc
│ ├── License.md
│ └── Src
├── MyMachine.inc
└── MyMachine.ioc
The yocto project fails to build with the following error :
/home/FGU/workspace/MyProject/MyProject/layers/meta-st/meta-st-stm32mp-addons/mx/MyMachine/stm32mp2/a35-td/linux/stm32mp257f-MyMachine-mx.dts not found: compilation aborted for linux-stm32mp device tree.
===> Well obviously, the paths are wrong CA35 != a35-td and linux != DeviceTree != <==
Moreover, the following page : https://wiki.st.com/stm32mpu/wiki/How_to_create_your_own_machine, details the following hierarchy :
mx
└── <ProjectPath>
├── <CortexA>
│ └── DeviceTree
│ └── <ProjectName>
│ ├── kernel
│ │ │── <soc-machine>-<ProjectName>-mx.dts
│ │ └── [...]
│ ├── optee-os
│ │ │── <soc-machine>-<ProjectName>-mx.dts
│ │ └── [...]
│ ├── tf-a
│ │ │── <soc-machine>-<ProjectName>-mx.dts
│ │ └── [...]
│ └── u-boot
│ │── <soc-machine>-<ProjectName>-mx.dts
│ └── [...]
├── CM33
│ └── DeviceTree
│ └── <ProjectName>
│ ├── mcuboot
│ │ │── <soc-machine>-<ProjectName>-mx.dts
│ │ └── [...]
│ └── tf-m
│ │── <soc-machine>-<ProjectName>-mx.dts
│ └── [...]
└── ExtMemLoader
└── <ProjectName>
├── optee-os
│ │── <soc-machine>-<ProjectName>-mx.dts
│ └── [...]
├── tf-a
│ │── <soc-machine>-<ProjectName>-mx.dts
│ └── [...]
└── u-boot
│── <soc-machine>-<ProjectName>-mx.dts
└── [...]
With
<CortexA>: CA7 or CA35 depending of configuration selected with STM32CubeMX tool
Why the file created by STM32CubeMX doesn't follow the path required by the bitbake recipe ?
Do you know how I can solve this issue ?
Thank you,
Have a nice day
FGU