190 lines
		
	
	
		
			6.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			190 lines
		
	
	
		
			6.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| # 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
 | |
| 	select CRC16
 | |
| 	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
 |