xref: /linux/drivers/net/ethernet/ti/Kconfig (revision 7bb377107c72a40ab7505341f8626c8eb79a0cb7)
1# SPDX-License-Identifier: GPL-2.0-only
2#
3# TI device configuration
4#
5
6config NET_VENDOR_TI
7	bool "Texas Instruments (TI) devices"
8	default y
9	depends on PCI || EISA || AR7 || ARCH_DAVINCI || ARCH_OMAP2PLUS || ARCH_KEYSTONE || ARCH_K3
10	---help---
11	  If you have a network (Ethernet) card belonging to this class, say Y.
12
13	  Note that the answer to this question doesn't directly affect the
14	  kernel: saying N will just cause the configurator to skip all
15	  the questions about TI devices. If you say Y, you will be asked for
16	  your specific card in the following questions.
17
18if NET_VENDOR_TI
19
20config TI_DAVINCI_EMAC
21	tristate "TI DaVinci EMAC Support"
22	depends on ARM && ( ARCH_DAVINCI || ARCH_OMAP3 ) || COMPILE_TEST
23	select TI_DAVINCI_MDIO
24	select PHYLIB
25	select GENERIC_ALLOCATOR
26	---help---
27	  This driver supports TI's DaVinci Ethernet .
28
29	  To compile this driver as a module, choose M here: the module
30	  will be called davinci_emac_driver.  This is recommended.
31
32config TI_DAVINCI_MDIO
33	tristate "TI DaVinci MDIO Support"
34	depends on ARCH_DAVINCI || ARCH_OMAP2PLUS || ARCH_KEYSTONE || ARCH_K3 || COMPILE_TEST
35	select PHYLIB
36	---help---
37	  This driver supports TI's DaVinci MDIO module.
38
39	  To compile this driver as a module, choose M here: the module
40	  will be called davinci_mdio.  This is recommended.
41
42config TI_CPSW_PHY_SEL
43	bool "TI CPSW Phy mode Selection (DEPRECATED)"
44	default n
45	---help---
46	  This driver supports configuring of the phy mode connected to
47	  the CPSW. DEPRECATED: use PHY_TI_GMII_SEL.
48
49config TI_CPSW
50	tristate "TI CPSW Switch Support"
51	depends on ARCH_DAVINCI || ARCH_OMAP2PLUS || COMPILE_TEST
52	select TI_DAVINCI_MDIO
53	select MFD_SYSCON
54	select PAGE_POOL
55	select REGMAP
56	imply PHY_TI_GMII_SEL
57	---help---
58	  This driver supports TI's CPSW Ethernet Switch.
59
60	  To compile this driver as a module, choose M here: the module
61	  will be called cpsw.
62
63config TI_CPSW_SWITCHDEV
64	tristate "TI CPSW Switch Support with switchdev"
65	depends on ARCH_DAVINCI || ARCH_OMAP2PLUS || COMPILE_TEST
66	depends on NET_SWITCHDEV
67	select PAGE_POOL
68	select TI_DAVINCI_MDIO
69	select MFD_SYSCON
70	select REGMAP
71	select NET_DEVLINK
72	imply PHY_TI_GMII_SEL
73	help
74	  This driver supports TI's CPSW Ethernet Switch.
75
76	  To compile this driver as a module, choose M here: the module
77	  will be called cpsw_new.
78
79config TI_CPTS
80	bool "TI Common Platform Time Sync (CPTS) Support"
81	depends on TI_CPSW || TI_KEYSTONE_NETCP || TI_CPSW_SWITCHDEV || COMPILE_TEST
82	depends on COMMON_CLK
83	depends on POSIX_TIMERS
84	---help---
85	  This driver supports the Common Platform Time Sync unit of
86	  the CPSW Ethernet Switch and Keystone 2 1g/10g Switch Subsystem.
87	  The unit can time stamp PTP UDP/IPv4 and Layer 2 packets, and the
88	  driver offers a PTP Hardware Clock.
89
90config TI_CPTS_MOD
91	tristate
92	depends on TI_CPTS
93	depends on PTP_1588_CLOCK
94	default y if TI_CPSW=y || TI_KEYSTONE_NETCP=y || TI_CPSW_SWITCHDEV=y
95	default m
96
97config TI_K3_AM65_CPSW_NUSS
98	tristate "TI K3 AM654x/J721E CPSW Ethernet driver"
99	depends on ARCH_K3 && OF && TI_K3_UDMA_GLUE_LAYER
100	select TI_DAVINCI_MDIO
101	imply PHY_TI_GMII_SEL
102	depends on TI_K3_AM65_CPTS || !TI_K3_AM65_CPTS
103	help
104	  This driver supports TI K3 AM654/J721E CPSW2G Ethernet SubSystem.
105	  The two-port Gigabit Ethernet MAC (MCU_CPSW0) subsystem provides
106	  Ethernet packet communication for the device: One Ethernet port
107	  (port 1) with selectable RGMII and RMII interfaces and an internal
108	  Communications Port Programming Interface (CPPI) port (port 0).
109
110	  To compile this driver as a module, choose M here: the module
111	  will be called ti-am65-cpsw-nuss.
112
113config TI_K3_AM65_CPTS
114	tristate "TI K3 AM65x CPTS"
115	depends on ARCH_K3 && OF
116	depends on PTP_1588_CLOCK
117	help
118	  Say y here to support the TI K3 AM65x CPTS with 1588 features such as
119	  PTP hardware clock for each CPTS device and network packets
120	  timestamping where applicable.
121	  Depending on integration CPTS blocks enable compliance with
122	  the IEEE 1588-2008 standard for a precision clock synchronization
123	  protocol, Ethernet Enhanced Scheduled Traffic Operations (CPTS_ESTFn)
124	  and PCIe Subsystem Precision Time Measurement (PTM).
125
126config TI_KEYSTONE_NETCP
127	tristate "TI Keystone NETCP Core Support"
128	select TI_DAVINCI_MDIO
129	depends on OF
130	depends on KEYSTONE_NAVIGATOR_DMA && KEYSTONE_NAVIGATOR_QMSS
131	---help---
132	  This driver supports TI's Keystone NETCP Core.
133
134	  To compile this driver as a module, choose M here: the module
135	  will be called keystone_netcp.
136
137config TI_KEYSTONE_NETCP_ETHSS
138	depends on TI_KEYSTONE_NETCP
139	tristate "TI Keystone NETCP Ethernet subsystem Support"
140	---help---
141
142	  To compile this driver as a module, choose M here: the module
143	  will be called keystone_netcp_ethss.
144
145config TLAN
146	tristate "TI ThunderLAN support"
147	depends on (PCI || EISA)
148	---help---
149	  If you have a PCI Ethernet network card based on the ThunderLAN chip
150	  which is supported by this driver, say Y here.
151
152	  Devices currently supported by this driver are Compaq Netelligent,
153	  Compaq NetFlex and Olicom cards.  Please read the file
154	  <file:Documentation/networking/device_drivers/ti/tlan.rst>
155	  for more details.
156
157	  To compile this driver as a module, choose M here. The module
158	  will be called tlan.
159
160	  Please email feedback to <torben.mathiasen@compaq.com>.
161
162config CPMAC
163	tristate "TI AR7 CPMAC Ethernet support"
164	depends on AR7
165	select PHYLIB
166	---help---
167	  TI AR7 CPMAC Ethernet support
168
169endif # NET_VENDOR_TI
170