Merge branch 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git...
[linux-2.6-block.git] / drivers / ptp / Kconfig
CommitLineData
d94ba80e
RC
1#
2# PTP clock support configuration
3#
4
5menu "PTP clock support"
6
d94ba80e
RC
7config PTP_1588_CLOCK
8 tristate "PTP clock support"
baa73d9e 9 depends on NET && POSIX_TIMERS
42a7ccef 10 select PPS
408eccce 11 select NET_PTP_CLASSIFY
d94ba80e
RC
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
c78275f3
RC
28config PTP_1588_CLOCK_GIANFAR
29 tristate "Freescale eTSEC as PTP clock"
c78275f3 30 depends on GIANFAR
d1cbfd77 31 depends on PTP_1588_CLOCK
a24006ed 32 default y
c78275f3
RC
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
32bd93e8
RC
42config PTP_1588_CLOCK_IXP46X
43 tristate "Intel IXP46x as PTP clock"
32bd93e8 44 depends on IXP4XX_ETH
d1cbfd77 45 depends on PTP_1588_CLOCK
a24006ed 46 default y
32bd93e8
RC
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
cb646e2b 56comment "Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks."
a24006ed 57 depends on PHYLIB=n || NETWORK_PHY_TIMESTAMPING=n
cb646e2b
RC
58
59config DP83640_PHY
60 tristate "Driver for the National Semiconductor DP83640 PHYTER"
cb646e2b
RC
61 depends on NETWORK_PHY_TIMESTAMPING
62 depends on PHYLIB
d1cbfd77 63 depends on PTP_1588_CLOCK
cb646e2b
RC
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
6b2aac42 73 implement the skb_tx_timestamp() function.
cb646e2b 74
863d08ec
TS
75config PTP_1588_CLOCK_PCH
76 tristate "Intel PCH EG20T as PTP clock"
bc56151d 77 depends on X86_32 || COMPILE_TEST
1a466ae9 78 depends on HAS_IOMEM && NET
d1cbfd77 79 imply PTP_1588_CLOCK
863d08ec
TS
80 help
81 This driver adds support for using the PCH EG20T as a PTP
358dfb6d
TS
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.
863d08ec
TS
89
90 To compile this driver as a module, choose M here: the module
91 will be called ptp_pch.
92
a0e136d4
MT
93config 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
d94ba80e 105endmenu