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