X3 series adapters use the xilinx_efct network driver. It is distributed as source in a standalone RPM or Debian package.
X2 and SFN8000 series and other earlier adapters use the sfc network driver. It is distributed as a standalone RPM (source and DKMS) or with the following OpenOnload/EnterpriseOnload distributions:
- OpenOnload from version 201310-u1.
- EnterpriseOnload from version 220.127.116.11.
The xilinx_efct and sfc network drivers both expose a number of features of the adapter including:
- Hardware time stamping of PTP formatted packets.
Starting in Linux kernels 2.6.30, support for hardware time stamping of network packets on TX and RX is formalized and integrated via the socket option
SO_TIMESTAMPING. Details of this interface can be found at the Linux Cross Referencer. Before an application can receive timestamps on a socket it must first issue the IOCTL
SIOCSHWTSTAMPto register both the types of packets it wants to receive timestamps on and the format of timestamps it wishes to receive.
SIOCSHWTSTAMPis not required by applications using Onload.
- X3 series adapters can hardware time stamp all transmitted and received packets.
- X2 series adapters can hardware time stamp all transmitted and received packets.
- SFN8000 series adapters can hardware time stamp all transmitted and received packets.
- SFN7000 series adapters can hardware time stamp all received packets.
- HP-branded adapters can hardware time stamp all received packets.
- Access to the control of the precision oscillator.
The adapters contain a precision clock with drift rated to < 1 PPM per year. The driver allows the absolute time and frequency of this clock to be controlled via the Linux PHC subsystem or the proprietary IOCTL interface. The proprietary interface is used by the
sfptpdstack to run the PTP protocol using the precision oscillator on the adapter.