forked from Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
188 lines
6.0 KiB
188 lines
6.0 KiB
# SPDX-License-Identifier: GPL-2.0-only |
|
# |
|
# PTP clock support configuration |
|
# |
|
|
|
menu "PTP clock support" |
|
|
|
config PTP_1588_CLOCK |
|
tristate "PTP clock support" |
|
depends on NET && POSIX_TIMERS |
|
default ETHERNET |
|
select PPS |
|
select NET_PTP_CLASSIFY |
|
help |
|
The IEEE 1588 standard defines a method to precisely |
|
synchronize distributed clocks over Ethernet networks. The |
|
standard defines a Precision Time Protocol (PTP), which can |
|
be used to achieve synchronization within a few dozen |
|
microseconds. In addition, with the help of special hardware |
|
time stamping units, it can be possible to achieve |
|
synchronization to within a few hundred nanoseconds. |
|
|
|
This driver adds support for PTP clocks as character |
|
devices. If you want to use a PTP clock, then you should |
|
also enable at least one clock driver as well. |
|
|
|
To compile this driver as a module, choose M here: the module |
|
will be called ptp. |
|
|
|
config PTP_1588_CLOCK_OPTIONAL |
|
tristate |
|
default y if PTP_1588_CLOCK=n |
|
default PTP_1588_CLOCK |
|
help |
|
Drivers that can optionally use the PTP_1588_CLOCK framework |
|
should depend on this symbol to prevent them from being built |
|
into vmlinux while the PTP support itself is in a loadable |
|
module. |
|
If PTP support is disabled, this dependency will still be |
|
met, and drivers refer to dummy helpers. |
|
|
|
config PTP_1588_CLOCK_DTE |
|
tristate "Broadcom DTE as PTP clock" |
|
depends on PTP_1588_CLOCK |
|
depends on NET && HAS_IOMEM |
|
depends on ARCH_BCM_MOBILE || (ARCH_BCM_IPROC && !(ARCH_BCM_NSP || ARCH_BCM_5301X)) || COMPILE_TEST |
|
default y |
|
help |
|
This driver adds support for using the Digital timing engine |
|
(DTE) in the Broadcom SoC's as a PTP clock. |
|
|
|
The clock can be used in both wired and wireless networks |
|
for PTP purposes. |
|
|
|
To compile this driver as a module, choose M here: the module |
|
will be called ptp_dte. |
|
|
|
config PTP_1588_CLOCK_QORIQ |
|
tristate "Freescale QorIQ 1588 timer as PTP clock" |
|
depends on GIANFAR || FSL_DPAA_ETH || FSL_DPAA2_ETH || FSL_ENETC || FSL_ENETC_VF || COMPILE_TEST |
|
depends on PTP_1588_CLOCK |
|
default y |
|
help |
|
This driver adds support for using the Freescale QorIQ 1588 |
|
timer as a PTP clock. This clock is only useful if your PTP |
|
programs are getting hardware time stamps on the PTP Ethernet |
|
packets using the SO_TIMESTAMPING API. |
|
|
|
To compile this driver as a module, choose M here: the module |
|
will be called ptp-qoriq. |
|
|
|
comment "Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks." |
|
depends on PHYLIB=n || NETWORK_PHY_TIMESTAMPING=n |
|
|
|
config DP83640_PHY |
|
tristate "Driver for the National Semiconductor DP83640 PHYTER" |
|
depends on NETWORK_PHY_TIMESTAMPING |
|
depends on PHYLIB |
|
depends on PTP_1588_CLOCK |
|
select CRC32 |
|
help |
|
Supports the DP83640 PHYTER with IEEE 1588 features. |
|
|
|
This driver adds support for using the DP83640 as a PTP |
|
clock. This clock is only useful if your PTP programs are |
|
getting hardware time stamps on the PTP Ethernet packets |
|
using the SO_TIMESTAMPING API. |
|
|
|
In order for this to work, your MAC driver must also |
|
implement the skb_tx_timestamp() function. |
|
|
|
config PTP_1588_CLOCK_INES |
|
tristate "ZHAW InES PTP time stamping IP core" |
|
depends on NETWORK_PHY_TIMESTAMPING |
|
depends on HAS_IOMEM |
|
depends on PHYLIB |
|
depends on PTP_1588_CLOCK |
|
help |
|
This driver adds support for using the ZHAW InES 1588 IP |
|
core. This clock is only useful if the MII bus of your MAC |
|
is wired up to the core. |
|
|
|
config PTP_1588_CLOCK_PCH |
|
tristate "Intel PCH EG20T as PTP clock" |
|
depends on X86_32 || COMPILE_TEST |
|
depends on HAS_IOMEM && PCI |
|
depends on NET |
|
depends on PTP_1588_CLOCK |
|
help |
|
This driver adds support for using the PCH EG20T as a PTP |
|
clock. The hardware supports time stamping of PTP packets |
|
when using the end-to-end delay (E2E) mechanism. The peer |
|
delay mechanism (P2P) is not supported. |
|
|
|
This clock is only useful if your PTP programs are getting |
|
hardware time stamps on the PTP Ethernet packets using the |
|
SO_TIMESTAMPING API. |
|
|
|
To compile this driver as a module, choose M here: the module |
|
will be called ptp_pch. |
|
|
|
config PTP_1588_CLOCK_KVM |
|
tristate "KVM virtual PTP clock" |
|
depends on PTP_1588_CLOCK |
|
depends on (KVM_GUEST && X86) || (HAVE_ARM_SMCCC_DISCOVERY && ARM_ARCH_TIMER) |
|
default y |
|
help |
|
This driver adds support for using kvm infrastructure as a PTP |
|
clock. This clock is only useful if you are using KVM guests. |
|
|
|
To compile this driver as a module, choose M here: the module |
|
will be called ptp_kvm. |
|
|
|
config PTP_1588_CLOCK_IDT82P33 |
|
tristate "IDT 82P33xxx PTP clock" |
|
depends on PTP_1588_CLOCK && I2C |
|
default n |
|
help |
|
This driver adds support for using the IDT 82P33xxx as a PTP |
|
clock. This clock is only useful if your time stamping MAC |
|
is connected to the IDT chip. |
|
|
|
To compile this driver as a module, choose M here: the module |
|
will be called ptp_idt82p33. |
|
|
|
config PTP_1588_CLOCK_IDTCM |
|
tristate "IDT CLOCKMATRIX as PTP clock" |
|
depends on PTP_1588_CLOCK && I2C |
|
default n |
|
help |
|
This driver adds support for using IDT CLOCKMATRIX(TM) as a PTP |
|
clock. This clock is only useful if your time stamping MAC |
|
is connected to the IDT chip. |
|
|
|
To compile this driver as a module, choose M here: the module |
|
will be called ptp_clockmatrix. |
|
|
|
config PTP_1588_CLOCK_VMW |
|
tristate "VMware virtual PTP clock" |
|
depends on ACPI && HYPERVISOR_GUEST && X86 |
|
depends on PTP_1588_CLOCK |
|
help |
|
This driver adds support for using VMware virtual precision |
|
clock device as a PTP clock. This is only useful in virtual |
|
machines running on VMware virtual infrastructure. |
|
|
|
To compile this driver as a module, choose M here: the module |
|
will be called ptp_vmw. |
|
|
|
config PTP_1588_CLOCK_OCP |
|
tristate "OpenCompute TimeCard as PTP clock" |
|
depends on PTP_1588_CLOCK |
|
depends on HAS_IOMEM && PCI |
|
depends on I2C && MTD |
|
depends on SERIAL_8250 |
|
depends on !S390 |
|
depends on COMMON_CLK |
|
select NET_DEVLINK |
|
help |
|
This driver adds support for an OpenCompute time card. |
|
|
|
The OpenCompute time card is an atomic clock along with |
|
a GPS receiver that provides a Grandmaster clock source |
|
for a PTP enabled network. |
|
|
|
More information is available at http://www.timingcard.com/ |
|
|
|
endmenu
|
|
|