blob: 384f661a64962a96ef792787111844206050fc31 [file] [log] [blame]
Richard Cochrand94ba802011-04-22 12:03:08 +02001#
2# PTP clock support configuration
3#
4
5menu "PTP clock support"
6
Richard Cochrand94ba802011-04-22 12:03:08 +02007config PTP_1588_CLOCK
8 tristate "PTP clock support"
Nicolas Pitrebaa73d92016-11-11 00:10:10 -05009 depends on NET && POSIX_TIMERS
Ben Hutchings42a7cce2012-10-31 15:32:44 +000010 select PPS
Daniel Borkmann408eccc2014-04-01 16:20:23 +020011 select NET_PTP_CLASSIFY
Richard Cochrand94ba802011-04-22 12:03:08 +020012 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
Richard Cochranc78275f2011-04-22 12:03:54 +020028config PTP_1588_CLOCK_GIANFAR
29 tristate "Freescale eTSEC as PTP clock"
Richard Cochranc78275f2011-04-22 12:03:54 +020030 depends on GIANFAR
Nicolas Pitred1cbfd72016-11-11 00:10:07 -050031 depends on PTP_1588_CLOCK
Ben Hutchingsa24006e2012-10-31 15:33:52 +000032 default y
Richard Cochranc78275f2011-04-22 12:03:54 +020033 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
Richard Cochran32bd93e2011-04-22 12:04:31 +020042config PTP_1588_CLOCK_IXP46X
43 tristate "Intel IXP46x as PTP clock"
Richard Cochran32bd93e2011-04-22 12:04:31 +020044 depends on IXP4XX_ETH
Nicolas Pitred1cbfd72016-11-11 00:10:07 -050045 depends on PTP_1588_CLOCK
Ben Hutchingsa24006e2012-10-31 15:33:52 +000046 default y
Richard Cochran32bd93e2011-04-22 12:04:31 +020047 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
Richard Cochrancb646e22011-04-22 12:04:55 +020056comment "Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks."
Ben Hutchingsa24006e2012-10-31 15:33:52 +000057 depends on PHYLIB=n || NETWORK_PHY_TIMESTAMPING=n
Richard Cochrancb646e22011-04-22 12:04:55 +020058
59config DP83640_PHY
60 tristate "Driver for the National Semiconductor DP83640 PHYTER"
Richard Cochrancb646e22011-04-22 12:04:55 +020061 depends on NETWORK_PHY_TIMESTAMPING
62 depends on PHYLIB
Nicolas Pitred1cbfd72016-11-11 00:10:07 -050063 depends on PTP_1588_CLOCK
Richard Cochrancb646e22011-04-22 12:04:55 +020064 ---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
Masanari Iida6b2aac42012-04-14 00:14:11 +090073 implement the skb_tx_timestamp() function.
Richard Cochrancb646e22011-04-22 12:04:55 +020074
Takahiro Shimizu863d08e2012-03-07 22:16:26 +000075config PTP_1588_CLOCK_PCH
76 tristate "Intel PCH EG20T as PTP clock"
Jean Delvarebc561512014-06-17 11:59:20 +020077 depends on X86_32 || COMPILE_TEST
Randy Dunlap1a466ae2014-05-08 14:54:42 -070078 depends on HAS_IOMEM && NET
Nicolas Pitred1cbfd72016-11-11 00:10:07 -050079 imply PTP_1588_CLOCK
Takahiro Shimizu863d08e2012-03-07 22:16:26 +000080 help
81 This driver adds support for using the PCH EG20T as a PTP
Takahiro Shimizu358dfb62012-04-20 18:50:34 +000082 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.
Takahiro Shimizu863d08e2012-03-07 22:16:26 +000089
90 To compile this driver as a module, choose M here: the module
91 will be called ptp_pch.
92
Marcelo Tosattia0e136d2017-01-24 15:09:42 -020093config PTP_1588_CLOCK_KVM
94 tristate "KVM virtual PTP clock"
95 depends on PTP_1588_CLOCK
96 depends on KVM_GUEST && X86
97 default y
98 help
99 This driver adds support for using kvm infrastructure as a PTP
100 clock. This clock is only useful if you are using KVM guests.
101
102 To compile this driver as a module, choose M here: the module
103 will be called ptp_kvm.
104
Richard Cochrand94ba802011-04-22 12:03:08 +0200105endmenu