主题中讨论的其他器件:SK-AM64B、 SysConfig
您好!
我需要使用用于 PTP 的相同时间戳和外部信号。 我需要比较 SO_TIMEPOTTING 时间戳与用于帧起始检测(SFD)的外部引脚。 我想计算 RGMII 上的时间戳和数据包之间的时间误差、以消除时间戳中的确定性延迟变化。
我使用的是红色 SK-AM64B EVM、
我想使用下面的引脚31、即 PRG0_PRUGPO18。 下面可能的其他候选人(我想我也突出显示了)。 也许我需要使用不同的东西吗?
我认为 PRG0_PRUOGPO18会是好的,因为它的所有理由(上面):-->然而,我认为下面我报告错误的"所需的功能",我打算使用的是,因为我想使用 GEMAC 1。 在下面、您可以看到我的 SysConfig 设置、它在焊球 V1 == PRG0_PRU0_GPO18上对 HWPUSH1使用 GEMAC。
我正在为 Timesync 路由器使用此信息:
这是我使用的 SysConfig 设置。
附件是我的 DTS 文件(/cfs-file/__key/communityserver-discussions-components-files/791/k3_2D00_am642_2D00_sk.dts)、注意:
(我即将尝试 HW2入栈。 没有到这里)。
&main_pmx0{
mycpsw3g1_pins_default:mycpsw3g1-default-pins{
PINCCTRL-SINGLE、PINS =<
AM64X_IOPAD (0x01a8、PIN_INPUT、5)
//AM64X_IOPAD (0x017c、PIN_INPUT、5)/*(T1) PRG0_PRU0_GPO7.CP_GEMAC_CPTS0_HW2TSPUSH */
>;
};
和
#define TS_OFFSET (PA、val) (0x4+(PA)* 4)(0x10000 | val)
timesync_router {
pinctrl-names ="默认";
pinctrl-0 =<&cpsw_cpts>;
/* Timesync 路由示例*/
cpsw_cpts:cpsw-cpts{
PINCCTRL-SINGLE、PINS =<
/* pps [cpsw CPTS genf0] in21 -> out33 [cpsw CPTS HW4_PUSH]*/
// TS_OFFSET (目标、src)
TS_OFFSET (33、12)
TS_OFFSET (24、12)
>;
};
};
我使用的是8.06.42... 然而,为了达到以上,我是从9.02.01的跟随指令。 似乎它们已更新、应申请8.06.42。 我根据给定的第一个测试将内部 Genf 路由到 HW4_PUSH、使用的 testptp index 3读取时间戳来改进上述配置。
-->注意,我认为驱动程序中可能有一个错误,在更改内容时没有设置 period = 0。 使用 Genf 时、为了我想要生成的任何频率、我必须在-p xxxxxxxxxx 之前设置-p 0。
-->在上面,我已将演示改为,而不是使用 agenf (1?) 作为源、以使用外部引脚。
https://software-dl.ti.com/processor-sdk-linux-rt/esd/AM64X/08_06_00_42/exports/docs/linux/Foundational_Components linux/kernel/testptp Network/CPSW-PTP.html?highlight=ptp -->章节:使用 Kernel_Drivers 内核中的 testptp 工具进行测试
和
https://software-dl.ti.com/processor-sdk-linux-rt/esd/AM64X/09_02_01_09/exports/docs/linux/Foundational_Components Kernel_Drivers Network/CPSW-PTP.html?highlight=ptp -->章节:时间标记外部事件
--------
假设基于 VDDSHV1电源网为3.3V、可以使用3.3V 信号进入 AM64。
73、
蒂莫西