Other Parts Discussed in Thread: AM5706
工具/软件:Linux
您好:
我在 A15中有一个 AM5706 EVM、在 DSP/M4中有一个支持 Linux 的 TI-RTOS。 对于 IPC 通信:
硬件资源包括:
-自旋锁、邮箱、中断和 RAM 存储器。
一些 Linux 服务和功能:
- GateMP、MessageQ、RPMsg (remoteproc、rpmsg)...
我正在尝试了解 Linux IPC 服务是如何 基于 硬件资源在低级别实现的、
我已经阅读了一些文档、E2E 问题等。 对我来说不是很清楚,所以这里有一些
我的解释中、我 要确认以下几点:
GateMP:我想使用"GateMP_RemoteProtect 系统"。 我能不能认为是这样
它 利用 硬件自旋锁?
-它在低级上具有"spin_lock_irqsave()函数?
-我可以从用户空间中使用它吗? 我需要禁用无法在用户空间完成的中断。
- 用户空间中有任何功能可以绕过 硬件自旋锁? 或者我需要在内核空间工作吗?
MessageQ:我能不能假设这样
-它有"remoteproc"和 "rpmsg"作为传输消息和 vring 缓冲区的机制? 还是基于硬件邮箱?
-它会触发 到接收内核的硬件中断?
那么、它会在用户空间触发软件中断吗?
-它只能在用户空间使用?
RPMsg: 我能不能假定
它与 MessageQ 具有类似的实现方式?
- 它有"remoteproc"和 "rpmsg"作为传输消息和 vring 缓冲区的机制?
-它会触发 到接收内核的硬件中断?
它只能在内核空间工作?
´s 在哪里可以找到一些用户需要的文档?
"spin_lock_irqsave(): 我能不能假定
它 利用 硬件自旋锁?
-我只能在内核空间使用它吗?
硬件邮箱:
-什么 Linux 用户服务 利用 了它?
-我只能在内核空间使用它吗?
从 一个内核到另一个内核触发一个硬件中断:
-Linux 中是否有任何机制来实现它?
-它是否仅在内核空间工作?
- 除了 TI-RTOS 中的 MAIBOX 之外、还有其他机制可以实现它吗?
很抱歉、问题太长了。
此致
新罗