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.
大家好!
我目前正在 使用 RPMsg 设计主域内核(A72、R5F、C7x)之间的 IPC 消息传递。 我对设计做了几点说明。 请仔细阅读下面的内容、并尽快告诉我。
我在 R5F 上运行 SAFERTOS、在 C7x 上运行 FreeRTOS、在 A72上运行 QNX。
我的目标是拥有一个线程、该线程必须侦听 A72内的简单消息和内核之间的远程消息。
A72 (进程1)--> A72 (进程2)-当我必须在 A72中从进程1向进程2发送一条简单消息时,我是否能触发软件中断,通知 RPMSgServer 有新消息, 从而使消息仅在产生中断时为其他进程提供服务、而不是轮询。
R5F (线程1)--> A72 (过程1)反之亦然-当我必须将简单消息从 R5F (AMP 核心)发送到 A72 (过程1)或相反时, 我能否通过 Virtio 或 RPMSg 或 remoteservice 触发另一个远程核心 RPMSg 服务器的 SW 中断、以便另一个内核上的异步 IO 处理程序根据中断回调为 msg 提供服务。
如果中断无法实现、如何更好地处理该 IPC 和内核之间的远程通信。
另请同样告诉我如何使用 SCIClient/SCIServer 或任何相关示例有效地管理 MCU R5F -> Main R5F、MCU R5F -> A72 IPC 通信。
您好!
[quote userid="565004" url="~/support/processors-group/processors/f/processors-forum/1349849/processor-sdk-j784s4-sv62-clarification-on-enabling-sw-interrupts-in-rpmsg-ipc-communication (process 1)--> a72 (process 2)-当我必须在 A72中将简单的 msg 从 process 1发送到 process 2时,我能不能触发软件中断来通知 RPMSgServer 有新消息? 从而使消息仅在产生中断时为其他进程提供服务、而不是轮询。 [/报价]此处的 IPC 是处理器间通信、而不是进程间通信。
[quote userid="565004" url="~/support/processors-group/processors/f/processors-forum/1349849/processor-sdk-j784s4-sv62-clarification-on-enabling-sw-interrupts-in-rpmsg-ipc-communication (线程1)--> A72 (进程1)反之亦然-当我必须从 R5F (AMP 核心)发送简单消息到 A72 (进程1)或反之亦然时, 我可以通过 virtio 或 rpmsg 或 remoteservice 触发另一个远程核心 rpmsg 服务器的 SW 中断,以便另一个内核上的异步 IO 处理程序根据中断回调为 msg 提供服务吗?TI 提供的 IPC 基于邮箱机制。 您可以通过 software-dl.ti.com/.../ipc.html 下方的说明了解这一点
是的、我们在 SDK /packages/ti/drv/ipc/examples 中提供了示例
此致
M·塔伦
尊敬的 Tarun:
感谢您的回答。 我已经研究了一些示例、并且了解了在有消息接收时、IPC 邮箱机制将与 SCIClient 或 CSL 一起用于监听远程内核的中断。 但我对 A72内核感兴趣、其中有多个进程尝试相互通信。 我想基于 A72内的内部中断来处理本地消息、而不是轮询本地消息。 如果可能的话,请告诉我。
您好、Ramakrishna、
、但我对 A72内核感兴趣、其中有多个进程尝试相互通信。 而不是轮询本地消息,
基于您对 A72中运行 QNX 的进程之间的沟通感兴趣。 我将其转发给 QNX 专家。
此致
M·塔伦
您好、 Ramakrishna、
但我对 A72核心感兴趣,其中有多个进程尝试相互通信。 我想基于 A72内的内部中断来处理本地消息、而不是轮询本地消息。 如果可能的话,请告诉我。 [/报价]可以、这是可以实现的。 请注意、QNX 上的 IPC 是作为 QNX 资源管理器实现的、因此多个客户端应用程序/进程可以使用 IPV ResMgr 同时与其远程实体进行通信。 PSDK QNX 版本提供了完整的源代码、您可以查看这些源代码来了解这一点。
谢谢。
您好 Praveen:
感谢您的答复。 我已经检查了 QNX 的 PSDK 代码、并尝试寻找源代码。 在另一个 TI PDK 代码中,在 RPMessage_init ()中,RPMessage_recv ()中,我们有用于 RPMessaging 的 SW 中断和 ISR 门的初始化和处理。 但在 QNX 示例中、它被 stubed 并提到 由 IPC resmgr 处理。 但我找不到相关的用法示例。 您能在 QNX 中给我指出相关的例子吗? 提前非常感谢。
您好,Praveen,我想我找到了解决办法。 我会检查并返回给你。 非常感谢您的支持。
您好、 Ramakrishna、
感谢更新。 我期待您的下次光临、并告诉我们。
谢谢。