2411538_zh-CN

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

2411538_zh-CN

2411538_zh-CN

关于 QNX 7.1 上 S32G274A PFE 的 PTP/IEEE 1588 支持和配置指南的请求

专家您好!
我们计划在我们定制的 S32G274A 板的 PFE 以太网接口上实现 IEEE 1588/PTP 时间同步。
我们目前的软件配置如下:
- SoC:NXP S32G274A
- 电路板:基于 S32G274A 的客户电路板
操作系统:QNX 7.1
- PFE驱动程序:PFE-DRV_S32G_A53_QNX 1.9.0,io-pkt版本
- PFE固件:PFE-FW_S32G 1.12.0
- 正在测试的 PFE 接口:PFE EMAC0 和 PFE EMAC2
- 由于 PFE EMAC1 的外部 AQR113C PHY 的固件尚未编程,因此当前测试中未包含 PFE EMAC1。
我们检查了 PFE 驱动程序源代码,发现它包含 IEEE 1588 支持,并实现了以下 QNX 驱动程序特定的 PTP 命令:
- PTP_GET_TIME
- PTP_SET_TIME
- PTP_GET_TX_TIMESTAMP
- PTP_GET_RX_TIMESTAMP
- PTP_SET_COMPENSATION
- PTP_GET_COMPENSATION
当前默认版本配置禁用了此功能:
PFE_CFG_IEEE1588_SUPPORT=0
PFE_CFG_IEEE1588_I_CLK_HZ=0
PFE_CFG_IEEE1588_EMAC0_O_CLK_HZ=0
PFE_CFG_IEEE1588_EMAC1_O_CLK_HZ=0
PFE_CFG_IEEE1588_EMAC2_O_CLK_HZ=0
我们的启动代码已经通过 SCMI 启用了 PFE_TS 时钟,但我们还没有在 PFE 驱动程序中配置 IEEE 1588 输入和输出时钟频率。
请问您能否就以下问题提供指导?
1.在 QNX 7.1 上使用 PFE-DRV 1.9.0 和 PFE-FW 1.12.0 时,S32G274A 上的 PFE EMAC0/EMAC1/EMAC2 是否正式支持 IEEE 1588 硬件 TX 和 RX 时间戳?
2. S32G274A 的预期 SCMI PFE_TS 时钟频率是多少?
3. 以下构建参数建议取哪些值?
PFE_CFG_IEEE1588_I_CLK_HZ
PFE_CFG_IEEE1588_EMAC0_O_CLK_HZ
PFE_CFG_IEEE1588_EMAC1_O_CLK_HZ
PFE_CFG_IEEE1588_EMAC2_O_CLK_HZ
4. 这三个 PFE EMAC 是否共享同一个 PTP 硬件时钟,还是每个 EMAC 都有一个独立的 PTP 系统时间计数器?
5. 此驱动程序支持哪些 PTP 传输模式?
- 二层点对点传输协议 (PTP),以太网类型 0x88F7
- UDP/IPv4
- UDP/IPv6
一步式时间戳
- 两步时间戳
端到端延迟机制
- 点对点延迟机制
6.启用 PTP 是否需要任何额外的 PFE 固件配置、固件功能、FCI 配置或启动初始化?
7. NXP 或 QNX 是否有推荐的用户空间 PTP 守护程序或适用于此 PFE 驱动程序的示例应用程序?当前驱动程序通过 netdrvr/ptp.h 公开 PTP 功能。并且是 SIOCGDRVSPEC/SIOCSDRVSPEC,而不是 Linux 风格的 /dev/ptpX PHC 设备。
8. 是否存在与以下方面相关的已知勘误、限制或所需的初始化顺序:
- PFE 时间戳时钟初始化;
- 通过 HIF 进行 TX/RX 时间戳交付;
- 时间戳补偿;
- 在多个 PFE EMAC 上同时进行 PTP 操作?
如果可以的话,能否提供 QNX 系统下 S32G274A PFE 芯片上符合 IEEE 1588 标准的参考配置、示例应用或验证程序?
感谢您的支持。
BR,
怀特旺

Re: Request for PTP/IEEE 1588 Support and Configuration Guidance for S32G274A PFE on QNX 7.1

您好,专家

感谢您提供如此详细的信息。我们已经验证了 PFE0 和 PFE2 上的 PTP 时间和补偿接口在 PFE-DRV 1.9.0 和 PFE-FW 1.12.0 下能够正常工作。

在关闭此 NXP PFE 支持案例之前,能否请您澄清以下三个与 S32G274A 相关的具体问题?

1. 我们目前对启用的 EMAC 使用 PFE_CFG_IEEE1588_I_CLK_HZ = 200 MHz 和 50 MHz 输出时钟。这种配置是否得到官方支持和推荐?
2. 每个 PFE EMAC 是否有独立的 IEEE 1588 定时器,还是可以将一个 EMAC 配置为与另一个 EMAC 共享时间基准?
3.所需的 400 MHz XBAR 时钟配置在哪里?可以使用哪个寄存器或运行时指示来验证它?


Re: Request for PTP/IEEE 1588 Support and Configuration Guidance for S32G274A PFE on QNX 7.1

嗨,韦特旺

感谢您与我们联系。希望以下信息对您有所帮助!

1.IEEE 1588 时间戳功能(AAVB-2500)首次在 BETA_0.9.0 中引入。请注意,原始记录为 [PFE_QNX_DRIVER] 添加 IEEE1588 时间戳支持。(请参阅 PFE-FW_S32G_1.12.0_ReleaseNotes.pdf。)您的软件版本符合兼容性要求。

Joey_z_1-1788772191193.pngJoey_z_1-1788772191193.pngJoey_z_1-1788772191193.png

Joey_z_0-1788772167682.pngJoey_z_0-1788772167682.pngJoey_z_0-1788772167682.png

2. PFE_TS 的时钟由 GMAC_TS_CLK 提供,范围为 5-200 MHz。最小值需要根据设定的模式来确定。

Joey_z_2-1788772339124.pngJoey_z_2-1788772339124.pngJoey_z_2-1788772339124.png


Joey_z_3-1788772351660.pngJoey_z_3-1788772351660.pngJoey_z_3-1788772351660.png

3. 需要根据 GMAC0_TS_CLK 的值进行设置。请参考以下内容。

Joey_z_4-1788772395380.pngJoey_z_4-1788772395380.pngJoey_z_4-1788772395380.png

4. 是的,您可以参考下图。

Joey_z_5-1788772417926.pngJoey_z_5-1788772417926.pngJoey_z_5-1788772417926.png

5. 从代码和文档信息来看,PTP 在技术上统一标识传输层,支持(UDP/IPv4、UDP/IPv6、第 2 层 PTP),支持两步和 E2E/P2P。
6. 请注意以下事项:为确保时间戳功能可靠运行,XBAR 时钟频率需设置为 400 MHz,具体请参阅 S32G 参考手册。PFE_CFG_IEEE1588_EMACn_O_CLK_HZ 的值必须小于 PFE_CFG_IEEE1588_I_CLK_HZ。在执行加载过程之前,必须确认以下事项:所有相关的时钟、电源/复位以及 PFE 引脚均已按照 S32G 参考手册进行配置,并且固件二进制文件 s32g_pfe_class.fw 已部署到目标板。
7. 我们很抱歉,恩智浦半导体没有为QNX PFE驱动程序提供现成的PTP守护程序或示例应用程序。
8. 请参阅附件中的以下内容:
PFE-DRV_S32G_QNX_1.9.0_发行说明.pdf/4已知问题
PFE-DRV_S32G_QNX_1.9.0_UserManual.pdf/5.2局限性
PFE-DRV_S32G_QNX_1.9.0_UserManual.pdf/5用法

我们目前不提供专用的应用示例。建议参考以下文档中的相关信息。(PFE-DRV_S32G_A53_QNX_1.9.0\doc)

BR

乔伊

Tags (1)
No ratings
Version history
Last update:
21 hours ago
Updated by: