[Linuxptp-users] phc2sys always creates a -37000000011ns between system clock and phc
PTP IEEE 1588 stack for Linux
Brought to you by:
rcochran
From: <311...@qq...> - 2023-11-29 14:28:15
|
Hi, I want to sync my PHC clock with system clock as the source, so I executed the command: ptp4l -i ens2f1np1 -m phc2sys -a -r -r -m The phc2sys seems running correctly: $phc2sys -a -r -r -m phc2sys[7362514.851]: reconfiguring after port state change phc2sys[7362514.851]: selecting ens2f1np1 for synchronization phc2sys[7362514.851]: selecting CLOCK_REALTIME as the master clock phc2sys[7362514.851]: ens2f1np1 sys offset -149 s0 freq -6182 delay 385 phc2sys[7362515.851]: ens2f1np1 sys offset -152 s2 freq -6185 delay 382 phc2sys[7362516.851]: ens2f1np1 sys offset -143 s2 freq -6328 delay 380 However, it creates a stable offset between the phc clock and the system clock, which is about -37000000011ns: $phc_ctl ens2f1np1 cmp phc_ctl[7362590.195]: offset from CLOCK_REALTIME is -37000000001ns $phc_ctl ens2f1np1 cmp phc_ctl[7362590.688]: offset from CLOCK_REALTIME is -37000000004ns $phc_ctl ens2f1np1 cmp phc_ctl[7362591.107]: offset from CLOCK_REALTIME is -37000000002ns $phc_ctl ens2f1np1 cmp phc_ctl[7362591.476]: offset from CLOCK_REALTIME is -36999999999ns I'm wondering why the offset exists. The purpose for I want to do this sync is because the phc clock has a linear delay than the system clock, and I need to have an accuracy phc clock for the packet hardware timestamping. I'm not familiar with the nic hardware clock, don't know if it's normal. My OS is RedHat 8.6 with 4.18.0-372.9.1.el8.x86_64. The phc2sys and ptp4l version are 3.1.1. Thanks a lot. |