Other Parts Discussed in Thread: SYSCONFIG
Tool/software:
I am trying to build IPC example for R5FSS0-0 and R5FSS1-1 but getting build issues.
Can someone please guide me how to create IPC examples for two cores?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Tool/software:
I am trying to build IPC example for R5FSS0-0 and R5FSS1-1 but getting build issues.
Can someone please guide me how to create IPC examples for two cores?
Why does this happen?
The new memory configurator tool uses the example.sysconfig file for each core in a multicore project to generate the linker.cmd output files during a build command. A shared memory region will only be defined in one core's example.sysconfig file, but referenced in the example.sysconfig file of the other cores. All of the other cores have a dependency on the one example.sysconfig file with the shared memory information.
Let's say you have enabled IPC between R5F0_0 and R5F1_1. If you try to JUST build the R5F0_0 example on its own, you will get build errors.
For more information please refer faq-mcu-sdk-build-error-expected-expression-rpmsgparams-vringtxtaseaddr
To build IPC communication between two or more cores using system project, please follow below steps.
Step 1:
Import the ipc_rpmsg_echo_system_freertos_nortos example provided in the MCU+SDK.
Open the system.xml file of the system project and remove the example project of cores which are not used during IPC communication. Only keep the example project for cores you want to do IPC with. (For our use-case used cores are only R5FSS0-0 & R5FSS1-1)
Please see the below screenshot.
Step 2:
Open the makefile_ccs_bootimage_gen file of the system project and edit it to build appimages for R5FSS0-0 and R5FSS1-1 core only.
Please refer below screenshot.
Step 3:
Open the example.syscfg file of the R5FSS0-0 and R5FSS1-1 example project and disable IPC for all other cores.
Please refer below screenshot.
Step 4:
Open the ipc_rpmsg_echo.c file of the R5FSS0-0 and R5FSS1-1 project and keep remote core as R5FSS1-1.
Please refer below screenshot.
Step 5:
After performing the above steps build the system_freertos_nortos project.
Now you should be able to do IPC between R5FSS0-0 and R5FSS1-1 project.
Please find the project zip file below for reference.
Project - Project.zip