File Index
Files and directories
Sign in
FILE

Kconfig

File preview with syntax highlighting.

linux-6.19.14/drivers/net/ethernet/freescale/enetc/Kconfig KCONFIG
  1# SPDX-License-Identifier: GPL-2.0
  2config FSL_ENETC_CORE
  3	tristate
  4	select NXP_NETC_LIB if NXP_NTMP
  5	help
  6	  This module supports common functionality between the PF and VF
  7	  drivers for the NXP ENETC controller.
  8
  9	  If compiled as module (M), the module name is fsl-enetc-core.
 10
 11config NXP_ENETC_PF_COMMON
 12	tristate
 13	help
 14	  This module supports common functionality between drivers of
 15	  different versions of NXP ENETC PF controllers.
 16
 17	  If compiled as module (M), the module name is nxp-enetc-pf-common.
 18
 19config NXP_NETC_LIB
 20	tristate
 21	help
 22	  This module provides common functionalities for both ENETC and NETC
 23	  Switch, such as NETC Table Management Protocol (NTMP) 2.0, common tc
 24	  flower and debugfs interfaces and so on.
 25
 26config NXP_NTMP
 27	bool
 28
 29config FSL_ENETC
 30	tristate "ENETC PF driver"
 31	depends on PTP_1588_CLOCK_OPTIONAL
 32	depends on PCI_MSI
 33	select FSL_ENETC_CORE
 34	select FSL_ENETC_IERB
 35	select FSL_ENETC_MDIO
 36	select NXP_ENETC_PF_COMMON
 37	select PHYLINK
 38	select PCS_LYNX
 39	select DIMLIB
 40	help
 41	  This driver supports NXP ENETC gigabit ethernet controller PCIe
 42	  physical function (PF) devices, managing ENETC Ports at a privileged
 43	  level.
 44
 45	  If compiled as module (M), the module name is fsl-enetc.
 46
 47config NXP_ENETC4
 48	tristate "ENETC4 PF driver"
 49	depends on PTP_1588_CLOCK_OPTIONAL
 50	depends on PCI_MSI
 51	select FSL_ENETC_CORE
 52	select FSL_ENETC_MDIO
 53	select NXP_ENETC_PF_COMMON
 54	select NXP_NTMP
 55	select PHYLINK
 56	select DIMLIB
 57	help
 58	  This driver supports NXP ENETC devices with major revision 4. ENETC is
 59	  as the NIC functionality in NETC, it supports virtualization/isolation
 60	  based on PCIe Single Root IO Virtualization (SR-IOV) and a full range
 61	  of TSN standards and NIC offload capabilities.
 62
 63	  If compiled as module (M), the module name is nxp-enetc4.
 64
 65config FSL_ENETC_VF
 66	tristate "ENETC VF driver"
 67	depends on PTP_1588_CLOCK_OPTIONAL
 68	depends on PCI_MSI
 69	select FSL_ENETC_CORE
 70	select FSL_ENETC_MDIO
 71	select PHYLINK
 72	select DIMLIB
 73	help
 74	  This driver supports NXP ENETC gigabit ethernet controller PCIe
 75	  virtual function (VF) devices enabled by the ENETC PF driver.
 76
 77	  If compiled as module (M), the module name is fsl-enetc-vf.
 78
 79config FSL_ENETC_IERB
 80	tristate "ENETC IERB driver"
 81	help
 82	  This driver configures the Integrated Endpoint Register Block on NXP
 83	  LS1028A.
 84
 85	  If compiled as module (M), the module name is fsl-enetc-ierb.
 86
 87config FSL_ENETC_MDIO
 88	tristate "ENETC MDIO driver"
 89	depends on PCI && PHYLIB
 90	help
 91	  This driver supports NXP ENETC Central MDIO controller as a PCIe
 92	  physical function (PF) device.
 93
 94	  If compiled as module (M), the module name is fsl-enetc-mdio.
 95
 96config FSL_ENETC_PTP_CLOCK
 97	tristate "ENETC PTP clock driver"
 98	depends on PTP_1588_CLOCK_QORIQ && (FSL_ENETC || FSL_ENETC_VF)
 99	default y
100	help
101	  This driver adds support for using the ENETC 1588 timer
102	  as a PTP clock. This clock is only useful if your PTP
103	  programs are getting hardware time stamps on the PTP Ethernet
104	  packets using the SO_TIMESTAMPING API.
105
106	  If compiled as module (M), the module name is fsl-enetc-ptp.
107
108config FSL_ENETC_QOS
109	bool "ENETC hardware Time-sensitive Network support"
110	depends on (FSL_ENETC || FSL_ENETC_VF) && (NET_SCH_TAPRIO || NET_SCH_CBS)
111	help
112	  There are Time-Sensitive Network(TSN) capabilities(802.1Qbv/802.1Qci
113	  /802.1Qbu etc.) supported by ENETC. These TSN capabilities can be set
114	  enable/disable from user space via Qos commands(tc). In the kernel
115	  side, it can be loaded by Qos driver. Currently, it is only support
116	  taprio(802.1Qbv) and Credit Based Shaper(802.1Qbu).
117
118config NXP_NETC_BLK_CTRL
119	tristate "NETC blocks control driver"
120	help
121	  This driver configures Integrated Endpoint Register Block (IERB) and
122	  Privileged Register Block (PRB) of NETC. For i.MX platforms, it also
123	  includes the configuration of NETCMIX block.
124	  The IERB contains registers that are used for pre-boot initialization,
125	  debug, and non-customer configuration. The PRB controls global reset
126	  and global error handling for NETC. The NETCMIX block is mainly used
127	  to set MII protocol and PCS protocol of the links, it also contains
128	  settings for some other functions.
129
130	  If compiled as module (M), the module name is nxp-netc-blk-ctrl.
~/ Read-only file preview.