主题中讨论的其他器件:SK-AM62B、 SK-AM62B-P1
工具/软件:
我们一直在努力 转换软件以使用 i2401 的解决方法 、并且遇到了一些问题。
1.第三方软件无法设置 HWTSTAMP_FILTER_ALL
这会导致软件立即退出、即使它似乎仅需要 PTP 数据包的时间戳。 作为权变措施、我们转换了请求 HWTSTAMP_FILTER_ALL 的调用、而改为启用 HWTSTAMP_FILTER_PTP_V2_EVENT。
2. TI 驱动程序与多个 PTP 服务不兼容
由于使用了第三方软件、我们有两个 PTP 服务正在运行。 由于 poll() 删除时间戳并且每个数据包都是多播的、因此只有一个客户端可以接收时间戳。 我们可以通过不在 poll() 上删除并允许超时机制删除时间戳来解决此问题。 在我们的应用中、事件缓冲区似乎从未填满。
3.有些数据包仍然缺少时间戳
在上述权变措施的情况下、我们仍然会遇到偶尔出现的列表中没有时间戳的 PTP2 数据包。 我已经确认这不是由于列表填写的原因、到目前为止无法确定缺少时间戳的原因。