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