Skip to main content
Associate
July 24, 2025
Solved

Build a new machine with distribution package

  • July 24, 2025
  • 1 reply
  • 337 views

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

 
Best answer by FGU

Hello, 

I was using a machine configuration file from another branch, and the file with the modification I made in it wasn't working with scarthgap branch.

 

Bye

1 reply

FGUAuthorBest answer
Associate
August 5, 2025

Hello, 

I was using a machine configuration file from another branch, and the file with the modification I made in it wasn't working with scarthgap branch.

 

Bye