2 # PTP clock support configuration
5 menu "PTP clock support"
8 tristate "PTP clock support"
9 depends on NET && POSIX_TIMERS
11 select NET_PTP_CLASSIFY
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.
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.
25 To compile this driver as a module, choose M here: the module
28 config 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
35 This driver adds support for using the Digital timing engine
36 (DTE) in the Broadcom SoC's as a PTP clock.
38 The clock can be used in both wired and wireless networks
41 To compile this driver as a module, choose M here: the module
42 will be called ptp_dte.
44 config PTP_1588_CLOCK_GIANFAR
45 tristate "Freescale eTSEC as PTP clock"
47 depends on PTP_1588_CLOCK
50 This driver adds support for using the eTSEC as a PTP
51 clock. This clock is only useful if your PTP programs are
52 getting hardware time stamps on the PTP Ethernet packets
53 using the SO_TIMESTAMPING API.
55 To compile this driver as a module, choose M here: the module
56 will be called gianfar_ptp.
58 config PTP_1588_CLOCK_IXP46X
59 tristate "Intel IXP46x as PTP clock"
61 depends on PTP_1588_CLOCK
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.
69 To compile this driver as a module, choose M here: the module
70 will be called ptp_ixp46x.
72 comment "Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks."
73 depends on PHYLIB=n || NETWORK_PHY_TIMESTAMPING=n
76 tristate "Driver for the National Semiconductor DP83640 PHYTER"
77 depends on NETWORK_PHY_TIMESTAMPING
79 depends on PTP_1588_CLOCK
81 Supports the DP83640 PHYTER with IEEE 1588 features.
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.
88 In order for this to work, your MAC driver must also
89 implement the skb_tx_timestamp() function.
91 config 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
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.
102 This clock is only useful if your PTP programs are getting
103 hardware time stamps on the PTP Ethernet packets using the
106 To compile this driver as a module, choose M here: the module
107 will be called ptp_pch.
109 config PTP_1588_CLOCK_KVM
110 tristate "KVM virtual PTP clock"
111 depends on PTP_1588_CLOCK
112 depends on KVM_GUEST && X86
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.
118 To compile this driver as a module, choose M here: the module
119 will be called ptp_kvm.