1# SPDX-License-Identifier: GPL-2.0
2config FSL_ENETC
3	tristate "ENETC PF driver"
4	depends on PCI && PCI_MSI && (ARCH_LAYERSCAPE || COMPILE_TEST)
5	select PHYLIB
6	help
7	  This driver supports NXP ENETC gigabit ethernet controller PCIe
8	  physical function (PF) devices, managing ENETC Ports at a privileged
9	  level.
10
11	  If compiled as module (M), the module name is fsl-enetc.
12
13config FSL_ENETC_VF
14	tristate "ENETC VF driver"
15	depends on PCI && PCI_MSI && (ARCH_LAYERSCAPE || COMPILE_TEST)
16	select PHYLIB
17	help
18	  This driver supports NXP ENETC gigabit ethernet controller PCIe
19	  virtual function (VF) devices enabled by the ENETC PF driver.
20
21	  If compiled as module (M), the module name is fsl-enetc-vf.
22
23config FSL_ENETC_PTP_CLOCK
24	tristate "ENETC PTP clock driver"
25	depends on PTP_1588_CLOCK_QORIQ && (FSL_ENETC || FSL_ENETC_VF)
26	default y
27	help
28	  This driver adds support for using the ENETC 1588 timer
29	  as a PTP clock. This clock is only useful if your PTP
30	  programs are getting hardware time stamps on the PTP Ethernet
31	  packets using the SO_TIMESTAMPING API.
32
33	  If compiled as module (M), the module name is fsl-enetc-ptp.
34
35config FSL_ENETC_HW_TIMESTAMPING
36	bool "ENETC hardware timestamping support"
37	depends on FSL_ENETC || FSL_ENETC_VF
38	help
39	  Enable hardware timestamping support on the Ethernet packets
40	  using the SO_TIMESTAMPING API. Because the RX BD ring dynamic
41	  allocation has not been supported and it is too expensive to use
42	  extended RX BDs if timestamping is not used, this option enables
43	  extended RX BDs in order to support hardware timestamping.
44