Problem with ttyRPMSG using OpenAMP Framework
Hello,
I am working with STM32MP157C-DK2 board and trying to pass messages between the CM4 and the CPU (main processor) using the OpenAMP framework over the com ports ttyRPMSG0 and ttyRPMSG1. On the CPU I have the openstlinux-weston image, and a C program for reading and sending messages through ttyRPMSG ports. In this program for interacting with the ports, I pretty much followed this example. Here is my communication setup:
- CPU sends msgs --> ttyRPMSG0 --> CP4 Receives msgs
- CM4 sends msgs --> ttyRPMSG1 --> CPU Receives msgs
The CM4 firmware setups and configure OpenAMP and VIRT_UARTs very much as in the OpenAMP_TTY_echo. Here is the issue that I want to resolve.
- The CM4 receives the messages sent from CPU.
- However, on the CPU side, receiving messages only works if in a terminal I run
echo 'some text' > /dev/ttyRPMSG1
This is quite annoying. Encapsulating this command in a shell script and launching a
systemd service does not work (in the sens that the CPU does not receive msgs over the ttyRPMSG1).
What I am looking for:
- Why the echo command in the terminal is necessary and why it enables the communication channel?
- Is there a way to avoid this command, and enable the communication channel without executing a command/code in a terminal.
Kind regards
