https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1508007/am6422-broadcast
器件型号:AM6422工具/软件:
是否可以从 Linux 端同时将同一 RPMsg 消息广播或发送到多个远程内核?"
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.
https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1508007/am6422-broadcast
器件型号:AM6422工具/软件:
是否可以从 Linux 端同时将同一 RPMsg 消息广播或发送到多个远程内核?"
你好、Marymol、
答案很短:不
您可以逐个对每个远程核心执行单独的 RPMsg 调用。 但是、没有基础设施可以从 Linux 用户空间端发送单个 RPMsg 消息、然后在内核驱动程序中复制该消息并将其置于多个不同的 virtio 缓冲区中、这些 virtio 缓冲区寻址到多个不同的 RPMsg 端点。
有关如何使用 virtio 缓冲区的更多信息
请注意、Linux 为 Linux 与之通信的每个远程内核设置了一组不同的 virtio 缓冲区。 因此,如果您在同一远程内核(例如 R5F0_0)上有多个端点,那么发送到所有这些不同端点的 RPMessages 将进入同一组 virtio 缓冲区。 但是、如果您将 RPMessage 发送到两个独立远程内核上的端点、那么这些 RPMessage 将进入2组不同的 virtio 缓冲区(例如、1组用于 R5F0_0的 virtio 缓冲区、1组用于 R5F0_1的 virtio 缓冲区)。
有关 RPMsg 存储器分配的更多信息、请参阅 AM64x Academy:
多核>内存>在 Linux 中分配内存
https://dev.ti.com/tirex/explore/node?node=A__AczQXYYQuDrYh5SEg4bt3w__AM64-ACADEMY__WI1KRXP__LATEST
此致、
Nick