2020-08-24 02:52 PM
Hi ST!
I am working with Rust on your STM32MP157. While we have this working already, this is cumbersome as we have to figure all register addresses and layouts manually. Normally, in Rust, we parse the SVD file corresponding to a chip and go from there which is a huuuge improvement to doing everything manually. Unfortunately the SVD files available for the STM32MP157 are highly incomplete and wrong at times. Could you please fix & update the SVD files?
Thanks a lot!
Best,
Noah
Solved! Go to Solution.
2020-08-31 08:40 AM
I am attaching the latest fixed SVD file for STM32MP157 (version 1.6) with the fix (waiting to be integrated in tools).
Please don't hesitate if you have more feedbacks.
-Imen
2020-08-24 11:40 PM
Hi @NHues.1
Can you please confirm you are talking about SDK/sysroots/x86_64-ostl_sdk-linux/usr/share/cmsis-svd/cmsis_svd/data/STMicro/STM32MP15xxx.svd file ?
Thx
Olivier
2020-08-25 01:50 AM
Hi @Community member
I am not sure where to find that file you mentioned. We use the tools as explained in the STM32MP1 wiki and use the yocto linux from the ST Github (btw, it is a shame that the issue system is disabled for the ST repos; makes it hard to contribute to OSS :( ).
The SVD file I tried to use is the one listed here: https://www.st.com/en/microcontrollers-microprocessors/stm32mp157.html#resource
I found another one that seems to match your given path but is broken too in here: https://raw.githubusercontent.com/mattnite/svd-data/stable/0.1/data/st-micro/STM32MP15xxx.svd
You can see that it is broken from the fact that for example the UART, TWI, SPI, etc. interrupts are completely missing. The one I just found on GH is a bit better than the one on your homepage, as it has some more interrupts listed (EXTI for example) and the UART peripherals all derive from USART1. In the one on your homepage they derive from USART2 ...
Also, you use USART in some parts of your SVDs and UART in other parts. It would be greatly appreciated if the naming was more consistent.
Thank you for your support =)
2020-08-25 02:18 AM
Hi @NHues.1
Issue has been escalated. Keep you posted.
Olivier
2020-08-26 02:36 AM
Hi NHues.1,
At first look I can confirm that the SVD file you are using is a bit old comparing to what we have today, so obviously it can present some bugs.
Also newer SVD files have additional support for disable condition to MP1 peripherals - MCU if this feature interest you.
We just want to make sure the SVD file we have today has fixed all the points you mentioned above, if not action will be taken to fix asap.
Thank you for your feedback!
-Imen
2020-08-26 05:47 AM
Hi @Imen Ezzine
Thank you very much for looking into this.
I am not sure what disable conditions you are talking about. I am interested in a complete SVD file that describes all important peripherals, such as the UART, I2C, IPCC, ADC, etc. I am also interested in a complete set of interrupt descriptions.
I will use this SVD to generate a HAL in Rust (see https://github.com/stm32-rs/stm32-rs) to control the M4 core on the MP1. So we don't really need to disable any peripherals, but we are interested in a complete description of all the peripherals.
Sure there is some lower priority peripherals such as the MMU, but if they're available that would be great.
This seems like it could easily be autogenerated from your hardware files/specification all the same for each and every chip (your lineup is huge and has all similar peripherals, so this would spare a lot of trouble & time & cost!). Could you explain to me what the difficulty is here, maybe I am missing the obvious? :)
Thanks again!
Best,
Noah
2020-08-31 08:38 AM
Hi NHues.1,
-Imen
2020-08-31 08:40 AM
2020-08-31 11:56 AM
Hi Imen,
I'm working with NHues.1 on the HAL for the STM32MP1 chips in Rust.
Thanks for your updated SVD, it's much easier to have a full-featured SVD than making patches by hand.
At the moment I'm mainly working on the IPCC, and it seems that everything is looking good down there.
By the way, I don't know if you're following what's happening on the stm32-rs project, but a lot of people are working on making patches for the SVD of most of your microcontrollers, so if you have some resources to help this community it would definitely be very appreciated :)
2020-09-01 02:14 AM
Hi Maxime Borges,
Thank you for bringing this to my attention!
We are working on providing better quality and complete SVD files with more enhancements especially for our new products. And it always helps to receive feedbacks about old products to fix possible bugs.
Don't hesitate to contact me for future possible SVD requests. And glad I could help with this one.
-Imen