Add support for syncing time via PTP by using LinuxPTP.
PTP is the *other* time-syncing protocol, and is used for very tight synchronization on local networks. Most modern L3 switches have hardware PTP support and can distribute time synced within 10ns or so. Most modern high-end NICs also have hardware PTP support, as well as an increasing number of cheap (Realtek, etc) NICs. Note that this is *NOT* the same as the ptp option that Chrony supports. That runs NTP over the PTP port in an attempt to work around hardware with limited timestamping abilities and it not compatible with PTP devices.
I have two goals with this:
- Get better time syncing with my home router. It uses 2x Intel x710 NICs; the x710 supports PTP but (surprisingly) does not include hardware NTP timestamping.
- Support using Mellanox Spectrum (SN2xxx, SN3xxx, etc) for distributing PTP time. They have hardware support, but need linuxptp to set it up properly.
The plan is to add linuxptp to the list of dependencies in vyos-1x, and add a service ptp block that configures PTP, similarly to service ntp.