Hi all,
I am working on remoteproc auto-boot feature. While working on this, I realized it should be possible to achieve RPMsg communication without root access given to the user. Existing demos doesn't support it, but I want to open discussion on how that can be achieved.
One way discussed was, to use IOCTLS to create RPMSg devices, and I had open issue here: https://github.com/OpenAMP/openamp-system-reference/issues/50
I tried to modify echo_test[1] demo and use IOCTLS instead of accessing devices from sysfs directly, but that still need root access.
My goal is to design following workflow for the RPMsg communication with the remote processor:
1. Linux device-tree has auto-boot property enabled. 2. During boot, driver parses auto-boot related properties, loads fw and boots rproc automatically (without user's involvement) 3. After boot, rproc firmware does name service announcement of RPMsg channels. 4. Linux creates RPMsg devices and ept based on above announcement. 5. Userspace apps uses RPMsg ioctls to create ept and rpmsg devices. 6. Userspace apps uses created devices for RPMsg communication with the remote processor.
As per my testing, as of now step-5 and step-6 needs root access. Ideally userspace apps should be able to create/read/write/close rpmsg devices without root access (for security purposes).
Is there any other way this problem is solved? I appreciate your input.
Thank You, Tanmay
References:
[1] https://github.com/OpenAMP/openamp-system-reference/blob/main/examples/linux...