Hi,
I've following setup:
The sender is a application running on FreeRTOS which has implemented a sending queue, where each element corresponds to an rpmgs_send is send to a receiver application running on Linux. However if the queue is consumed and it contains more then one entry this results in 2 consequtive rpmsg_send calls right after another, and if the receiver is slightly slower consuming the received data, when the read-out of the first message is done on receiver site, it already reads the content of the second message, i.e. the result seems to be an overwrite by the second message beeing send.
I always thought that rpmsg_virtualio has implemented internally a queue to avoid such situation, when receiver is slightly slower in consuming messages then sender sending those. However I observer more the behaviour as if there is only one buffer for all messages beeing send and if sender is faster than receiver the buffer gets overwritten before the receiver had the chance to properly read out prev message. My VRING_SIIZE is configured to have 31 entries.
Can you help me what Iam doing wrong, or enlighten my lack of understanding the protocol?
Thanks in advance.
If you need further information please let me know.
Kind Regards,
Steve