2022-01-21 06:15 AM
We are using STM32Cube_FW_H7 latest version and faced the similar problem happened on STM32Cube_FW_L4 which is discussed here. We use two Octo SPI with one running in Octo memory mapped mode and one running in Quad SPI direct mode.
Firstly, we configured the Octo mode IO ports with HAL_OSPIM_Config and then configured the Quad SPI. If we configure Octo only, the Octo memory mapped mode works well. However, If we configure Quad SPI as well, the first Octo configuration got corrupted.
Does someone face the same problem? I suspect that the similar bug exists in Cube_FW_H7 like the one in STM32Cube_FW_L4.
Solved! Go to Solution.
2022-02-15 01:22 AM
Hello @YTagu.1;
I am getting back to you regarding the problem you faced. I have reproduced the issue and reported it internally to our team.
Thank you for highlighting the matter and helping us improve.
Chahinez.
2022-01-21 08:08 AM
Hello @YTagu.1,
Are you using the STM32CubeMX for the generation of your project?
Chahinez.
2022-01-21 04:54 PM
Hi @ChahinezC ,
Yes, We're using STM32CubeMX for the generation of our project.
YTagu.1
2022-01-25 05:17 AM
Hello @YTagu.1,
Can you please specify which ST device you're using and whether you are using the same port or different ones?
Chahinez.
2022-01-25 05:28 AM
Hi @ChahinezC ,
Our ST Device is STM32H7A3LIH6Q. We are using different ports, that is, we don't use multiplexed mode.
2022-01-31 02:33 AM
Hello @YTagu.1,
Can you please state the versions you have used? (The STM32CubeMX and the H7 cube FW versions).
Can you also share with us your .ioc file? It helps us reproduce the issue.
Thank you.
Chahinez.
2022-01-31 07:02 PM
Hi @ChahinezC
Here are the versions:
Yes, we can share the .ioc file with you. However, it would be better if we can share the .ioc file privately. Could you give me your e-mail address to share the file? Or, do you have any other way to share the file privately?
We really appreciate your effort to reproduce the problem.
Best regards,
Yoshitaka
2022-02-01 04:57 AM
Hi @YTagu.1,
You can share with me your .ioc file and IAR project by private message.
Can you also provide me with the following details:
Please describe the problem you are facing in details so I can reproduce it.
"the first Octo configuration got corrupted" --> How did you exactly see the corruption?
Chahinez.
2022-02-02 07:27 AM
Hi @ChahinezC
Thanks for suggesting the way to share the file. As I don't use IAR workbench, I only sent you my .ioc file via a private message. Please check your inbox.
We are using external SRAM memory with OctoSPI memory mapped mode. The HyperBus protocol is used. This peripheral is assigned to OctoSPI1. We also use external Flash memory with QuadSPI. This peripheral is assigned to OctoSPI2.
"the first Octo configuration got corrupted" does not mean the corruption of the configuration in CubeMX. It means the corruption of configurations in the registers which were made by HAL_OSPIM_Config function.
To be honest, the statement that "HAL_OSPIM_Config() corrupts previous port configuration on the second call" is just an assumption. As the reference manual states "two OCTOSPI works separately", we assume the problem is happening on the common parts of two OCTOSPI - that is, IO configuration, which is made by HAL_OSPIM_Config.
To state our situation more accurately, "Call of MX_OCTOSPI2_Init corrupts the configuration made by MX_OCTOSPI1_Init".
Best regards,
Yoshitaka
2022-02-09 12:07 AM
Hi, @ChahinezC
Any updates on this topic?
Best regards,
Yoshitaka