1# SPDX-License-Identifier: GPL-2.0 2config FSL_ENETC 3 tristate "ENETC PF driver" 4 depends on PCI && PCI_MSI 5 select FSL_ENETC_MDIO 6 select PHYLINK 7 select PCS_LYNX 8 select DIMLIB 9 help 10 This driver supports NXP ENETC gigabit ethernet controller PCIe 11 physical function (PF) devices, managing ENETC Ports at a privileged 12 level. 13 14 If compiled as module (M), the module name is fsl-enetc. 15 16config FSL_ENETC_VF 17 tristate "ENETC VF driver" 18 depends on PCI && PCI_MSI 19 select FSL_ENETC_MDIO 20 select PHYLINK 21 select DIMLIB 22 help 23 This driver supports NXP ENETC gigabit ethernet controller PCIe 24 virtual function (VF) devices enabled by the ENETC PF driver. 25 26 If compiled as module (M), the module name is fsl-enetc-vf. 27 28config FSL_ENETC_MDIO 29 tristate "ENETC MDIO driver" 30 depends on PCI && MDIO_DEVRES && MDIO_BUS 31 help 32 This driver supports NXP ENETC Central MDIO controller as a PCIe 33 physical function (PF) device. 34 35 If compiled as module (M), the module name is fsl-enetc-mdio. 36 37config FSL_ENETC_PTP_CLOCK 38 tristate "ENETC PTP clock driver" 39 depends on PTP_1588_CLOCK_QORIQ && (FSL_ENETC || FSL_ENETC_VF) 40 default y 41 help 42 This driver adds support for using the ENETC 1588 timer 43 as a PTP clock. This clock is only useful if your PTP 44 programs are getting hardware time stamps on the PTP Ethernet 45 packets using the SO_TIMESTAMPING API. 46 47 If compiled as module (M), the module name is fsl-enetc-ptp. 48 49config FSL_ENETC_QOS 50 bool "ENETC hardware Time-sensitive Network support" 51 depends on (FSL_ENETC || FSL_ENETC_VF) && (NET_SCH_TAPRIO || NET_SCH_CBS) 52 help 53 There are Time-Sensitive Network(TSN) capabilities(802.1Qbv/802.1Qci 54 /802.1Qbu etc.) supported by ENETC. These TSN capabilities can be set 55 enable/disable from user space via Qos commands(tc). In the kernel 56 side, it can be loaded by Qos driver. Currently, it is only support 57 taprio(802.1Qbv) and Credit Based Shaper(802.1Qbu). 58