18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0
28c2ecf20Sopenharmony_ciconfig FSL_ENETC
38c2ecf20Sopenharmony_ci	tristate "ENETC PF driver"
48c2ecf20Sopenharmony_ci	depends on PCI && PCI_MSI
58c2ecf20Sopenharmony_ci	select FSL_ENETC_MDIO
68c2ecf20Sopenharmony_ci	select PHYLINK
78c2ecf20Sopenharmony_ci	select PCS_LYNX
88c2ecf20Sopenharmony_ci	select DIMLIB
98c2ecf20Sopenharmony_ci	help
108c2ecf20Sopenharmony_ci	  This driver supports NXP ENETC gigabit ethernet controller PCIe
118c2ecf20Sopenharmony_ci	  physical function (PF) devices, managing ENETC Ports at a privileged
128c2ecf20Sopenharmony_ci	  level.
138c2ecf20Sopenharmony_ci
148c2ecf20Sopenharmony_ci	  If compiled as module (M), the module name is fsl-enetc.
158c2ecf20Sopenharmony_ci
168c2ecf20Sopenharmony_ciconfig FSL_ENETC_VF
178c2ecf20Sopenharmony_ci	tristate "ENETC VF driver"
188c2ecf20Sopenharmony_ci	depends on PCI && PCI_MSI
198c2ecf20Sopenharmony_ci	select FSL_ENETC_MDIO
208c2ecf20Sopenharmony_ci	select PHYLINK
218c2ecf20Sopenharmony_ci	select DIMLIB
228c2ecf20Sopenharmony_ci	help
238c2ecf20Sopenharmony_ci	  This driver supports NXP ENETC gigabit ethernet controller PCIe
248c2ecf20Sopenharmony_ci	  virtual function (VF) devices enabled by the ENETC PF driver.
258c2ecf20Sopenharmony_ci
268c2ecf20Sopenharmony_ci	  If compiled as module (M), the module name is fsl-enetc-vf.
278c2ecf20Sopenharmony_ci
288c2ecf20Sopenharmony_ciconfig FSL_ENETC_MDIO
298c2ecf20Sopenharmony_ci	tristate "ENETC MDIO driver"
308c2ecf20Sopenharmony_ci	depends on PCI
318c2ecf20Sopenharmony_ci	help
328c2ecf20Sopenharmony_ci	  This driver supports NXP ENETC Central MDIO controller as a PCIe
338c2ecf20Sopenharmony_ci	  physical function (PF) device.
348c2ecf20Sopenharmony_ci
358c2ecf20Sopenharmony_ci	  If compiled as module (M), the module name is fsl-enetc-mdio.
368c2ecf20Sopenharmony_ci
378c2ecf20Sopenharmony_ciconfig FSL_ENETC_PTP_CLOCK
388c2ecf20Sopenharmony_ci	tristate "ENETC PTP clock driver"
398c2ecf20Sopenharmony_ci	depends on PTP_1588_CLOCK_QORIQ && (FSL_ENETC || FSL_ENETC_VF)
408c2ecf20Sopenharmony_ci	default y
418c2ecf20Sopenharmony_ci	help
428c2ecf20Sopenharmony_ci	  This driver adds support for using the ENETC 1588 timer
438c2ecf20Sopenharmony_ci	  as a PTP clock. This clock is only useful if your PTP
448c2ecf20Sopenharmony_ci	  programs are getting hardware time stamps on the PTP Ethernet
458c2ecf20Sopenharmony_ci	  packets using the SO_TIMESTAMPING API.
468c2ecf20Sopenharmony_ci
478c2ecf20Sopenharmony_ci	  If compiled as module (M), the module name is fsl-enetc-ptp.
488c2ecf20Sopenharmony_ci
498c2ecf20Sopenharmony_ciconfig FSL_ENETC_QOS
508c2ecf20Sopenharmony_ci	bool "ENETC hardware Time-sensitive Network support"
518c2ecf20Sopenharmony_ci	depends on (FSL_ENETC || FSL_ENETC_VF) && (NET_SCH_TAPRIO || NET_SCH_CBS)
528c2ecf20Sopenharmony_ci	help
538c2ecf20Sopenharmony_ci	  There are Time-Sensitive Network(TSN) capabilities(802.1Qbv/802.1Qci
548c2ecf20Sopenharmony_ci	  /802.1Qbu etc.) supported by ENETC. These TSN capabilities can be set
558c2ecf20Sopenharmony_ci	  enable/disable from user space via Qos commands(tc). In the kernel
568c2ecf20Sopenharmony_ci	  side, it can be loaded by Qos driver. Currently, it is only support
578c2ecf20Sopenharmony_ci	  taprio(802.1Qbv) and Credit Based Shaper(802.1Qbu).
58