Tobias, the name of my dts file from CubeMX is stm32mp157c-osd32mp1-mx.dts. I use that for the TFA_DEVICETREE in the make command:
1 2 | ~/stm32mp1-openstlinux-5.4-dunfell-mp1-20-06-24/sources/arm-ostl-linux-gnueabi/tf-a-stm32mp-2.2.r1-r0/tf-a-stm32mp-2.2.r1/arm-trusted-firmware$ make -f $PWD/../../Makefile.sdk TFA_DEVICETREE=<strong>stm32mp157c-osd32mp1-mx</strong> TF_A_CONFIG=trusted ELF_DEBUG_ENABLE='1' all |
Under /tf-a-stm32mp-2.2.r1-r0/tf-a-stm32mp-2.2.r1/build/trusted I then get tf-a-stm32mp157c-osd32mp1-mx-trusted.stm32. And use that in the tsv file to flash:
1 2 | #Opt Id Name Type IP Offset Binary - 0x01 fsbl1-boot Binary none 0x0 tf-a-stm32mp157c-osd32mp1-mx-trusted.stm32 |
I am still getting an error when flashing though:
Error: Start operation failed at partition 0x01
Error: TSV flashing service failed
Ah yes, I missed that in step 4 of /tf-a-stm32mp-2.2.r1-r0/README.HOW_TO.txt. I compiles the custom CubeMX board now.
Thanks Tobias!
I think stm32mp15-mx.dtsi is the header file! So when they mention stm32mp15-mx.h in the readme it should be stm32mp15-mx.dtsi.
I upgraded the CubeMX project to 6.0 and generated the code again.
Now when I execute:
1 | make -f $PWD/../Makefile.sdk TFA_DEVICETREE=stm32mp157c-osd32mp1-mx TF_A_CONFIG=trusted ELF_DEBUG_ENABLE='1' all |
I get the following error:
fdts/stm32mp157c-osd32mp1-mx.dts:14:10: fatal error: dt-bindings/soc/st,stm32-etzpc.h: No such file or directory
14 | #include <dt-bindings/soc/st,stm32-etzpc.h>
I copied the files from /CA7/DeviceTree/OSD32MP1/tf-a/ to /tf-a-stm32mp-2.2.r1/fdts
I used tf-a-stm32mp-2.2.r1-r0 from en.SOURCES-tf-a-stm32mp1-openstlinux-5-4-dunfell-mp1-20-06-24.tar.xz, applied the patches and the dts file frmo CubeMX. That is where I was missing stm32mp15-mx.h – in the tutorial under 7.0 (https://octavosystems.com/app_notes/stm32mp1-cubemx-tutorial-for-osd32mp15x/) it says to also copy the Custom TF-A Device Tree source files.
So I can compile the tf-a, but when I flash it, it gets stuck running the program and then errors out:
Memory Programming …
Opening and parsing file: tf-a-stm32mp157c-ev1-trusted.stm32
File : tf-a-stm32mp157c-ev1-trusted.stm32
Size : 212104 Bytes
Partition ID : 0x01
Download in Progress:
100%
File download complete
Time elapsed during download operation: 00:00:00.548
RUNNING Program …
PartID: :0x01
Error: an error occured while uploading data from the virtual partition 0xF1
Start operation done successfully at partition 0x01
I think I found it under the Yocto_SDK: https://my.st.com/content/my_st_com/en/products/embedded-software/mcu-mpu-embedded-software/stm32-embedded-software/stm32-mpu-openstlinux-distribution/stm32mp1dev.license=1596456640621.product=Yocto_SDK.version=1.2.0.html – is that the correct version?
The tutorial describes the procedure for OpenST Linux v1.1/1.2. The application note needs to be updated to use v2.0. Until then, we suggest you use v1.2 for your development if you want to follow the application note.
In section 5.1 of the ST Developer Wiki Page it has a link to en.SDK-x86_64-stm32mp1-openstlinux-5.4-dunfell-mp1-20-06-24.tar.xz. Is this the correct SDK for 1.2? Because 20-06-24 is associated with 2.0 and 20-02-19 with 1.2, but I can’t find a link for the SDK at version 1.2.
Thanks Neeraj!
Octavo Systems LLC all rights reserved
OCTAVO is registered in the U.S. Patent and Trademark Office. OSD, C-SiP, and the Octavo Logo are trademarks of Octavo Systems LLC.
"*" indicates required fields
"*" indicates required fields
"*" indicates required fields
"*" indicates required fields