Hi,
I'm using RT1176.
i want to create multiple shared memory that running in parallel. I read the document in the link "GitHub - nxp-mcuxpresso/rpmsg-lite: RPMsg implementation for small MCUs" and it says that I need to set the RL_ALLOW_CUSTOM_SHMEM_CONFIG macro. But when i set that macro "rpmsg_platform_shmem_config_t" struct and "platform_get_custom_shmem_config" function become available. But there are no definition and declaration for them. is there any example or application note about multiple shared memory config.
Sharing a picture about the problems I'm experiencing.
thanks for helping.
Hi @mehmetkaradag ,
If you have any questions, you can ask Michal, who is an expert in this area.
Best Regards
mayliu
Hi @mehmetkaradag ,
Thank you so much for your interest in our products and for using our community.
I‘m trying to do the same operation as yours, the result is the same.
there are no definition and declaration for macro "rpmsg_platform_shmem_config_t" struct and "platform_get_custom_shmem_config" function.
But don't worry, I'll consult with the relevant experts for help and I'll get back to you as soon as I have feedback.
Please be patient.
Have a nice day.
Best Regards
mayliu
Hi @mehmetkaradag ,
the custom shared memory configuration (driven by the RL_ALLOW_CUSTOM_SHMEM_CONFIG config macro) has been enabled just for some platforms, rt1170 is not covered. If you require that in your application, you can adjust the rt1170 platform layer. You can have a look at the imx8ulp platform layer how this is done: https://github.com/nxp-mcuxpresso/rpmsg-lite/tree/main/lib/rpmsg_lite/porting/platform/imx8ulp_m33
Could you please describe your case and the desired rpmsg_lite setup a little more? How many instances do you require? Is the different amount of buffers and buffer sizes required for each rpmsg_lite instance?
Thank you
Best Regards
Michal
Hello @MichalP ,
What I want to achieve is the following: I will have two instances. While the master (M7) transmits to one instance (let's call it instance A), the slave (M4) will receive from that instance (instance A). Meanwhile, when the slave (M4) transmits to another instance (let's call it instance B), the master (M7) will receive from that instance (instance B).
Could you please help me on what I can do regarding this? Unfortunately, the related documentation wasn't very helpful.
Thank you in advance for your assistant.
Hi @mehmetkaradag ,
thanks for providing insight into your case. Have you considered only one instance and multiple endpoints making this easier or is it really necessary to have two instances and both the master and remote on each core?
If two instances are needed as described by you, I would start with default shared memory configuration first and then once all is setup and running well we could try to switch to custom shared memory configuration (i.e. different amount of buffers and buffer sizes required for each rpmsg_lite instance). Could you please help me understand which phase is your rpmsg_lite setup in? Have you already succeeded in running two instance as described in your previous post?
Thanks
Best Regards
Michal
Hi @MichalP
I want actually each core to perform sending and receiving operations at different times or simultaneously (in parallel). Core A should be able to send without waiting for the receive operation to complete.
thanks for your help.
Hello @mehmetkaradag
I am sorry for my late response ... I am still not convinced if having two rpmsg_lite instances is really necessary in your case ... once having only one instance you can still "perform sending and receiving operations at different times or simultaneously".
You can create multiple endpoints on both the master and the remote side and implement the sending/receiving logic between these endpoints. I would recommend to have a look at rpmsg_lite examples we provide for rt1170 within the MCUXpressoSDK, there is rpmsg_lite_pingpong example for baremetal and rpmsg_lite_pingpong_rtos for FreeRTOS env. Once running well on your board you can gradually add more endpoints and implement the desired application logic. Is that acceptable for you?
Thank you
Best Regards
Michal
Hello @mehmetkaradag
I am out of the office till Oct-31. I will get back to you then, ok?
Thank you
Best Regards
Michal
Hi @MichalP ,
Of course, no problem. I'll be looking forward to your assistance when you return to work.
Thank you ın advance for your assistant.