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.

[参考译文] PROCESSOR-SDK-J784S4:API 文档中有关 IPC 驱动器超时单元的阐述(在 QNX 上下文中)

Guru**** 1952840 points
Other Parts Discussed in Thread: SYSBIOS
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1368000/processor-sdk-j784s4-clarification-regarding-ipc-driver-timeout-units-in-api-documentation-in-qnx-context

器件型号:PROCESSOR-SDK-J784S4
Thread 中讨论的其他器件:SYSBIOS

工具与软件:

我正在尝试了解我应该在 IPC 驱动程序 API 命令  RPMessage_recv 和 RPMessage_getRemoteEndPt()中输入超时 值的单位。

这是 J721E 的 PDK API 指南、08.06、请参阅  

适用于 J721E 的 PDK API 指南:IPC 驱动程序接头(TI.com)

我想了解在针对 QNX 的这些调用中、我应该将什么设置为超时-导航到位于 psdkqa/08.06.00.07/QNX/docs/user_guide/qnx_sdk_components_j721e.html 和 psdkqa/08.06.00.07/QNX/user_guide/QNX_sdk_Components_j721e.html#ipc-resource-manager 的文档  

  •  RPMessage_getRemoteEndPt()的文档说明:

合适的超时值与 ti.sysbios.KNL.semaphore 模块的值相同。

Timeout[In]超时值(In 系统节拍 )

  •  RPMessage_getRemoteEndPt()的文档说明:

超时[IN]中等待消息的最大持续时间 微秒

当我尝试按照实际代码执行时、两个 API 调用都在 ti/osal 中使用 SemaphoreP。 该语句指出:

*@参数超时超时(in 毫秒 )等待 发布信号量(已发出信号)。

extern SemaphoreP_Status SemaphoreP_PEND (SemaphoreP_handle semPhandle、
uint32_t 超时);

具体的实现似乎使用 系统  刻度 (Nonos)或 毫秒 (FreeRTOS、SAFERTOS)。

您能否解释一下,对于 IPC 驱动程序   在 QNX 上下文中调用 RPMessage_recv 和 RPMessage_getRemoteEndPt()时的超时参数,我应该使用什么单位?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    QNX 环境中的 IPC 驱动器超时单元以微秒为单位。

    有关 IPC,请参考--> /psdkqa/pdk /packages/ti/dev/IPC /Mutex/IPC_API.c -查看正在使用的 src ()函数,该函数将"超时"作为参数。

    lockMutex()的实现被植入为 IPC_qnxSemWait()函数。 参阅 /psdkqa/pdk /packages/ti/drv/ipc /ipc/ipc_osal_qnx.c src

    谢谢。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好

    感谢您的快速响应。 我找到了特定的文件、现在看到在 QNX 上下文中使用了微秒。

    未来是否可以更新 IPC API 文档以更显式地说明超时 取决于实现情况。 在我想的那一刻、它具有误导性(例如、对于 RPMessage_getRemoteEndPt、

    [in]超时值(以系统节拍为单位)

    )

x 出现错误。请重试或与管理员联系。