1# 2# PTP clock support configuration 3# 4 5menu "PTP clock support" 6 7config PTP_1588_CLOCK 8 tristate "PTP clock support" 9 depends on NET && POSIX_TIMERS 10 select PPS 11 select NET_PTP_CLASSIFY 12 help 13 The IEEE 1588 standard defines a method to precisely 14 synchronize distributed clocks over Ethernet networks. The 15 standard defines a Precision Time Protocol (PTP), which can 16 be used to achieve synchronization within a few dozen 17 microseconds. In addition, with the help of special hardware 18 time stamping units, it can be possible to achieve 19 synchronization to within a few hundred nanoseconds. 20 21 This driver adds support for PTP clocks as character 22 devices. If you want to use a PTP clock, then you should 23 also enable at least one clock driver as well. 24 25 To compile this driver as a module, choose M here: the module 26 will be called ptp. 27 28config PTP_1588_CLOCK_DTE 29 tristate "Broadcom DTE as PTP clock" 30 depends on PTP_1588_CLOCK 31 depends on NET && HAS_IOMEM 32 depends on ARCH_BCM_MOBILE || (ARCH_BCM_IPROC && !(ARCH_BCM_NSP || ARCH_BCM_5301X)) || COMPILE_TEST 33 default y 34 help 35 This driver adds support for using the Digital timing engine 36 (DTE) in the Broadcom SoC's as a PTP clock. 37 38 The clock can be used in both wired and wireless networks 39 for PTP purposes. 40 41 To compile this driver as a module, choose M here: the module 42 will be called ptp_dte. 43 44config PTP_1588_CLOCK_QORIQ 45 tristate "Freescale QorIQ 1588 timer as PTP clock" 46 depends on GIANFAR || FSL_DPAA_ETH 47 depends on PTP_1588_CLOCK 48 default y 49 help 50 This driver adds support for using the Freescale QorIQ 1588 51 timer as a PTP clock. This clock is only useful if your PTP 52 programs are getting hardware time stamps on the PTP Ethernet 53 packets using the SO_TIMESTAMPING API. 54 55 To compile this driver as a module, choose M here: the module 56 will be called ptp_qoriq. 57 58config PTP_1588_CLOCK_IXP46X 59 tristate "Intel IXP46x as PTP clock" 60 depends on IXP4XX_ETH 61 depends on PTP_1588_CLOCK 62 default y 63 help 64 This driver adds support for using the IXP46X as a PTP 65 clock. This clock is only useful if your PTP programs are 66 getting hardware time stamps on the PTP Ethernet packets 67 using the SO_TIMESTAMPING API. 68 69 To compile this driver as a module, choose M here: the module 70 will be called ptp_ixp46x. 71 72comment "Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks." 73 depends on PHYLIB=n || NETWORK_PHY_TIMESTAMPING=n 74 75config DP83640_PHY 76 tristate "Driver for the National Semiconductor DP83640 PHYTER" 77 depends on NETWORK_PHY_TIMESTAMPING 78 depends on PHYLIB 79 depends on PTP_1588_CLOCK 80 ---help--- 81 Supports the DP83640 PHYTER with IEEE 1588 features. 82 83 This driver adds support for using the DP83640 as a PTP 84 clock. This clock is only useful if your PTP programs are 85 getting hardware time stamps on the PTP Ethernet packets 86 using the SO_TIMESTAMPING API. 87 88 In order for this to work, your MAC driver must also 89 implement the skb_tx_timestamp() function. 90 91config PTP_1588_CLOCK_PCH 92 tristate "Intel PCH EG20T as PTP clock" 93 depends on X86_32 || COMPILE_TEST 94 depends on HAS_IOMEM && NET 95 imply PTP_1588_CLOCK 96 help 97 This driver adds support for using the PCH EG20T as a PTP 98 clock. The hardware supports time stamping of PTP packets 99 when using the end-to-end delay (E2E) mechansim. The peer 100 delay mechansim (P2P) is not supported. 101 102 This clock is only useful if your PTP programs are getting 103 hardware time stamps on the PTP Ethernet packets using the 104 SO_TIMESTAMPING API. 105 106 To compile this driver as a module, choose M here: the module 107 will be called ptp_pch. 108 109config PTP_1588_CLOCK_KVM 110 tristate "KVM virtual PTP clock" 111 depends on PTP_1588_CLOCK 112 depends on KVM_GUEST && X86 113 default y 114 help 115 This driver adds support for using kvm infrastructure as a PTP 116 clock. This clock is only useful if you are using KVM guests. 117 118 To compile this driver as a module, choose M here: the module 119 will be called ptp_kvm. 120 121endmenu 122