blob: ee3de3421f2dc3c06b4a5a1886b516e1e825039e [file] [log] [blame]
Kyle Swenson8d8f6542021-03-15 11:02:55 -06001#
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
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_GIANFAR
29 tristate "Freescale eTSEC as PTP clock"
30 depends on GIANFAR
31 select PTP_1588_CLOCK
32 default y
33 help
34 This driver adds support for using the eTSEC as a PTP
35 clock. This clock is only useful if your PTP programs are
36 getting hardware time stamps on the PTP Ethernet packets
37 using the SO_TIMESTAMPING API.
38
39 To compile this driver as a module, choose M here: the module
40 will be called gianfar_ptp.
41
42config PTP_1588_CLOCK_IXP46X
43 tristate "Intel IXP46x as PTP clock"
44 depends on IXP4XX_ETH
45 select PTP_1588_CLOCK
46 default y
47 help
48 This driver adds support for using the IXP46X as a PTP
49 clock. This clock is only useful if your PTP programs are
50 getting hardware time stamps on the PTP Ethernet packets
51 using the SO_TIMESTAMPING API.
52
53 To compile this driver as a module, choose M here: the module
54 will be called ptp_ixp46x.
55
56comment "Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks."
57 depends on PHYLIB=n || NETWORK_PHY_TIMESTAMPING=n
58
59config DP83640_PHY
60 tristate "Driver for the National Semiconductor DP83640 PHYTER"
61 depends on NETWORK_PHY_TIMESTAMPING
62 depends on PHYLIB
63 select PTP_1588_CLOCK
64 ---help---
65 Supports the DP83640 PHYTER with IEEE 1588 features.
66
67 This driver adds support for using the DP83640 as a PTP
68 clock. This clock is only useful if your PTP programs are
69 getting hardware time stamps on the PTP Ethernet packets
70 using the SO_TIMESTAMPING API.
71
72 In order for this to work, your MAC driver must also
73 implement the skb_tx_timestamp() function.
74
75config PTP_1588_CLOCK_PCH
76 tristate "Intel PCH EG20T as PTP clock"
77 depends on X86_32 || COMPILE_TEST
78 depends on HAS_IOMEM && NET
79 select PTP_1588_CLOCK
80 help
81 This driver adds support for using the PCH EG20T as a PTP
82 clock. The hardware supports time stamping of PTP packets
83 when using the end-to-end delay (E2E) mechansim. The peer
84 delay mechansim (P2P) is not supported.
85
86 This clock is only useful if your PTP programs are getting
87 hardware time stamps on the PTP Ethernet packets using the
88 SO_TIMESTAMPING API.
89
90 To compile this driver as a module, choose M here: the module
91 will be called ptp_pch.
92
93endmenu