The IEEE 1588 standard defines a method to precisely synchronize distributed clocks over Ethernet networks. The standard defines a Precision Time Protocol (PTP), which can be used to achieve synchronization within a few dozen microseconds. In addition, with the help of special hardware time stamping units, it can be possible to achieve synchronization to within a few hundred nanoseconds. This driver adds support for PTP clocks as character devices. If you want to use a PTP clock, then you should also enable at least one clock driver as well. To compile this driver as a module, choose M here: the module will be called ptp.
This driver adds support for using the eTSEC as a PTP clock. This clock is only useful if your PTP programs are getting hardware time stamps on the PTP Ethernet packets using the SO_TIMESTAMPING API. To compile this driver as a module, choose M here: the module will be called gianfar_ptp.
This driver adds support for using the IXP46X as a PTP clock. This clock is only useful if your PTP programs are getting hardware time stamps on the PTP Ethernet packets using the SO_TIMESTAMPING API. To compile this driver as a module, choose M here: the module will be called ptp_ixp46x.
Supports the DP83640 PHYTER with IEEE 1588 features. This driver adds support for using the DP83640 as a PTP clock. This clock is only useful if your PTP programs are getting hardware time stamps on the PTP Ethernet packets using the SO_TIMESTAMPING API. In order for this to work, your MAC driver must also implement the skb_tx_timetamp() function.