2021-08-18 10:10 PM
Of the many things I have been struggling withmSTM32MP157F-DK2 throughout this summer, one of them is the interprocessor communication between A7 and M4. I want A7 to process data and send the refined result to M4 for further low level actions. As many users may agree, information in this wiki is scattered with many branches, and while following one topic you encounter references to many links that end up blowing you out if the device is new to you. I am one blown out that way.
I was reading this post https://wiki.st.com/stm32mpu/wiki/Coprocessor_resource_table and found that I have to have this code somewher in my M4 firware
which I managed (by trial and error) to add in my rsc_table.c as (note sure if that was correct)
Then found rhat I also have to add this code somewhere, but not sure where: whether it is in A7 Linux userland or in M4 firware. Played around many times for over 14 hours and got frustrated.
can anyone help me?
Solved! Go to Solution.
2021-09-03 08:38 AM
After several hours of installing and uninstalling and oozing many gallons of sweat all over the body; I got the interprocessor communication to work. I don't know why, I was just uninstalling the kernel, recompile and install again using the same procedure, but at last it worked. Now I still have two problems;
(1) I need to load by custom device tree which was created by STM32CubeMX: Do I have to upload for the kernel, TF-A and U-Boot?
What is the safe way of doing so without messing up what is working now? Please help,.
(2) What is the best way of making my Linux userland application start automatically on boot without messing up what is currently working? I figured out that I can include some commands in my Linux application to start M4 Firmware, so all I need is to start the App
Please help;
2021-09-06 01:24 AM
Hi @MSele.1 ,
This post is already very long and since the original question is answered I would prefer you post a new question to address this last point.
Thanks
Olivier
2021-09-06 07:50 AM
Thanks @Community member ;
At this moment I don't see any need for starting a a thread for my last questions. I was able to load my custom device tree using a semi-rudimentary method, but it has worked; I had to compile the kernel twice. For the second question, I just created a Kernel service for my application and it worked. It has been a hectic experience. I took notes of all steps I went through so I don't have to face this situation again in future, since I will be using them very often in my projects. I have already ordered 10 and my order more.