162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0 262306a36Sopenharmony_ciconfig FSL_ENETC_CORE 362306a36Sopenharmony_ci tristate 462306a36Sopenharmony_ci help 562306a36Sopenharmony_ci This module supports common functionality between the PF and VF 662306a36Sopenharmony_ci drivers for the NXP ENETC controller. 762306a36Sopenharmony_ci 862306a36Sopenharmony_ci If compiled as module (M), the module name is fsl-enetc-core. 962306a36Sopenharmony_ci 1062306a36Sopenharmony_ciconfig FSL_ENETC 1162306a36Sopenharmony_ci tristate "ENETC PF driver" 1262306a36Sopenharmony_ci depends on PCI_MSI 1362306a36Sopenharmony_ci select MDIO_DEVRES 1462306a36Sopenharmony_ci select FSL_ENETC_CORE 1562306a36Sopenharmony_ci select FSL_ENETC_IERB 1662306a36Sopenharmony_ci select FSL_ENETC_MDIO 1762306a36Sopenharmony_ci select PHYLINK 1862306a36Sopenharmony_ci select PCS_LYNX 1962306a36Sopenharmony_ci select DIMLIB 2062306a36Sopenharmony_ci help 2162306a36Sopenharmony_ci This driver supports NXP ENETC gigabit ethernet controller PCIe 2262306a36Sopenharmony_ci physical function (PF) devices, managing ENETC Ports at a privileged 2362306a36Sopenharmony_ci level. 2462306a36Sopenharmony_ci 2562306a36Sopenharmony_ci If compiled as module (M), the module name is fsl-enetc. 2662306a36Sopenharmony_ci 2762306a36Sopenharmony_ciconfig FSL_ENETC_VF 2862306a36Sopenharmony_ci tristate "ENETC VF driver" 2962306a36Sopenharmony_ci depends on PCI_MSI 3062306a36Sopenharmony_ci select FSL_ENETC_CORE 3162306a36Sopenharmony_ci select FSL_ENETC_MDIO 3262306a36Sopenharmony_ci select PHYLINK 3362306a36Sopenharmony_ci select DIMLIB 3462306a36Sopenharmony_ci help 3562306a36Sopenharmony_ci This driver supports NXP ENETC gigabit ethernet controller PCIe 3662306a36Sopenharmony_ci virtual function (VF) devices enabled by the ENETC PF driver. 3762306a36Sopenharmony_ci 3862306a36Sopenharmony_ci If compiled as module (M), the module name is fsl-enetc-vf. 3962306a36Sopenharmony_ci 4062306a36Sopenharmony_ciconfig FSL_ENETC_IERB 4162306a36Sopenharmony_ci tristate "ENETC IERB driver" 4262306a36Sopenharmony_ci help 4362306a36Sopenharmony_ci This driver configures the Integrated Endpoint Register Block on NXP 4462306a36Sopenharmony_ci LS1028A. 4562306a36Sopenharmony_ci 4662306a36Sopenharmony_ci If compiled as module (M), the module name is fsl-enetc-ierb. 4762306a36Sopenharmony_ci 4862306a36Sopenharmony_ciconfig FSL_ENETC_MDIO 4962306a36Sopenharmony_ci tristate "ENETC MDIO driver" 5062306a36Sopenharmony_ci depends on PCI && MDIO_DEVRES && MDIO_BUS 5162306a36Sopenharmony_ci help 5262306a36Sopenharmony_ci This driver supports NXP ENETC Central MDIO controller as a PCIe 5362306a36Sopenharmony_ci physical function (PF) device. 5462306a36Sopenharmony_ci 5562306a36Sopenharmony_ci If compiled as module (M), the module name is fsl-enetc-mdio. 5662306a36Sopenharmony_ci 5762306a36Sopenharmony_ciconfig FSL_ENETC_PTP_CLOCK 5862306a36Sopenharmony_ci tristate "ENETC PTP clock driver" 5962306a36Sopenharmony_ci depends on PTP_1588_CLOCK_QORIQ && (FSL_ENETC || FSL_ENETC_VF) 6062306a36Sopenharmony_ci default y 6162306a36Sopenharmony_ci help 6262306a36Sopenharmony_ci This driver adds support for using the ENETC 1588 timer 6362306a36Sopenharmony_ci as a PTP clock. This clock is only useful if your PTP 6462306a36Sopenharmony_ci programs are getting hardware time stamps on the PTP Ethernet 6562306a36Sopenharmony_ci packets using the SO_TIMESTAMPING API. 6662306a36Sopenharmony_ci 6762306a36Sopenharmony_ci If compiled as module (M), the module name is fsl-enetc-ptp. 6862306a36Sopenharmony_ci 6962306a36Sopenharmony_ciconfig FSL_ENETC_QOS 7062306a36Sopenharmony_ci bool "ENETC hardware Time-sensitive Network support" 7162306a36Sopenharmony_ci depends on (FSL_ENETC || FSL_ENETC_VF) && (NET_SCH_TAPRIO || NET_SCH_CBS) 7262306a36Sopenharmony_ci help 7362306a36Sopenharmony_ci There are Time-Sensitive Network(TSN) capabilities(802.1Qbv/802.1Qci 7462306a36Sopenharmony_ci /802.1Qbu etc.) supported by ENETC. These TSN capabilities can be set 7562306a36Sopenharmony_ci enable/disable from user space via Qos commands(tc). In the kernel 7662306a36Sopenharmony_ci side, it can be loaded by Qos driver. Currently, it is only support 7762306a36Sopenharmony_ci taprio(802.1Qbv) and Credit Based Shaper(802.1Qbu). 78