xref: /openbmc/linux/drivers/ptp/Kconfig (revision 9cdb81c7)
1#
2# PTP clock support configuration
3#
4
5menu "PTP clock support"
6
7comment "Enable Device Drivers -> PPS to see the PTP clock options."
8	depends on PPS=n
9
10config PTP_1588_CLOCK
11	tristate "PTP clock support"
12	depends on EXPERIMENTAL
13	depends on PPS
14	help
15	  The IEEE 1588 standard defines a method to precisely
16	  synchronize distributed clocks over Ethernet networks. The
17	  standard defines a Precision Time Protocol (PTP), which can
18	  be used to achieve synchronization within a few dozen
19	  microseconds. In addition, with the help of special hardware
20	  time stamping units, it can be possible to achieve
21	  synchronization to within a few hundred nanoseconds.
22
23	  This driver adds support for PTP clocks as character
24	  devices. If you want to use a PTP clock, then you should
25	  also enable at least one clock driver as well.
26
27	  To compile this driver as a module, choose M here: the module
28	  will be called ptp.
29
30config PTP_1588_CLOCK_GIANFAR
31	tristate "Freescale eTSEC as PTP clock"
32	depends on PTP_1588_CLOCK
33	depends on GIANFAR
34	help
35	  This driver adds support for using the eTSEC as a PTP
36	  clock. This clock is only useful if your PTP programs are
37	  getting hardware time stamps on the PTP Ethernet packets
38	  using the SO_TIMESTAMPING API.
39
40	  To compile this driver as a module, choose M here: the module
41	  will be called gianfar_ptp.
42
43config PTP_1588_CLOCK_IXP46X
44	tristate "Intel IXP46x as PTP clock"
45	depends on PTP_1588_CLOCK
46	depends on IXP4XX_ETH
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 PTP_1588_CLOCK && (PHYLIB=n || NETWORK_PHY_TIMESTAMPING=n)
58
59config DP83640_PHY
60	tristate "Driver for the National Semiconductor DP83640 PHYTER"
61	depends on PTP_1588_CLOCK
62	depends on NETWORK_PHY_TIMESTAMPING
63	depends on PHYLIB
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_timetamp() function.
74
75config PTP_1588_CLOCK_PCH
76	tristate "Intel PCH EG20T as PTP clock"
77	depends on PTP_1588_CLOCK
78	depends on PCH_GBE
79	help
80	  This driver adds support for using the PCH EG20T as a PTP
81	  clock. This clock is only useful if your PTP programs are
82	  getting hardware time stamps on the PTP Ethernet packets
83	  using the SO_TIMESTAMPING API.
84
85	  To compile this driver as a module, choose M here: the module
86	  will be called ptp_pch.
87
88endmenu
89