162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only 262306a36Sopenharmony_ci# 362306a36Sopenharmony_ci# TI device configuration 462306a36Sopenharmony_ci# 562306a36Sopenharmony_ci 662306a36Sopenharmony_ciconfig NET_VENDOR_TI 762306a36Sopenharmony_ci bool "Texas Instruments (TI) devices" 862306a36Sopenharmony_ci default y 962306a36Sopenharmony_ci depends on PCI || EISA || AR7 || ARCH_DAVINCI || ARCH_OMAP2PLUS || ARCH_KEYSTONE || ARCH_K3 1062306a36Sopenharmony_ci help 1162306a36Sopenharmony_ci If you have a network (Ethernet) card belonging to this class, say Y. 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ci Note that the answer to this question doesn't directly affect the 1462306a36Sopenharmony_ci kernel: saying N will just cause the configurator to skip all 1562306a36Sopenharmony_ci the questions about TI devices. If you say Y, you will be asked for 1662306a36Sopenharmony_ci your specific card in the following questions. 1762306a36Sopenharmony_ci 1862306a36Sopenharmony_ciif NET_VENDOR_TI 1962306a36Sopenharmony_ci 2062306a36Sopenharmony_ciconfig TI_DAVINCI_EMAC 2162306a36Sopenharmony_ci tristate "TI DaVinci EMAC Support" 2262306a36Sopenharmony_ci depends on ARM && ( ARCH_DAVINCI || ARCH_OMAP3 ) || COMPILE_TEST 2362306a36Sopenharmony_ci select TI_DAVINCI_MDIO 2462306a36Sopenharmony_ci select PHYLIB 2562306a36Sopenharmony_ci select GENERIC_ALLOCATOR 2662306a36Sopenharmony_ci help 2762306a36Sopenharmony_ci This driver supports TI's DaVinci Ethernet . 2862306a36Sopenharmony_ci 2962306a36Sopenharmony_ci To compile this driver as a module, choose M here: the module 3062306a36Sopenharmony_ci will be called davinci_emac_driver. This is recommended. 3162306a36Sopenharmony_ci 3262306a36Sopenharmony_ciconfig TI_DAVINCI_MDIO 3362306a36Sopenharmony_ci tristate "TI DaVinci MDIO Support" 3462306a36Sopenharmony_ci depends on ARCH_DAVINCI || ARCH_OMAP2PLUS || ARCH_KEYSTONE || ARCH_K3 || COMPILE_TEST 3562306a36Sopenharmony_ci select PHYLIB 3662306a36Sopenharmony_ci select MDIO_BITBANG 3762306a36Sopenharmony_ci help 3862306a36Sopenharmony_ci This driver supports TI's DaVinci MDIO module. 3962306a36Sopenharmony_ci 4062306a36Sopenharmony_ci To compile this driver as a module, choose M here: the module 4162306a36Sopenharmony_ci will be called davinci_mdio. This is recommended. 4262306a36Sopenharmony_ci 4362306a36Sopenharmony_ciconfig TI_CPSW_PHY_SEL 4462306a36Sopenharmony_ci bool "TI CPSW Phy mode Selection (DEPRECATED)" 4562306a36Sopenharmony_ci default n 4662306a36Sopenharmony_ci help 4762306a36Sopenharmony_ci This driver supports configuring of the phy mode connected to 4862306a36Sopenharmony_ci the CPSW. DEPRECATED: use PHY_TI_GMII_SEL. 4962306a36Sopenharmony_ci 5062306a36Sopenharmony_ciconfig TI_CPSW 5162306a36Sopenharmony_ci tristate "TI CPSW Switch Support" 5262306a36Sopenharmony_ci depends on ARCH_DAVINCI || ARCH_OMAP2PLUS || COMPILE_TEST 5362306a36Sopenharmony_ci depends on TI_CPTS || !TI_CPTS 5462306a36Sopenharmony_ci select TI_DAVINCI_MDIO 5562306a36Sopenharmony_ci select MFD_SYSCON 5662306a36Sopenharmony_ci select PAGE_POOL 5762306a36Sopenharmony_ci select REGMAP 5862306a36Sopenharmony_ci imply PHY_TI_GMII_SEL 5962306a36Sopenharmony_ci help 6062306a36Sopenharmony_ci This driver supports TI's CPSW Ethernet Switch. 6162306a36Sopenharmony_ci 6262306a36Sopenharmony_ci To compile this driver as a module, choose M here: the module 6362306a36Sopenharmony_ci will be called cpsw. 6462306a36Sopenharmony_ci 6562306a36Sopenharmony_ciconfig TI_CPSW_SWITCHDEV 6662306a36Sopenharmony_ci tristate "TI CPSW Switch Support with switchdev" 6762306a36Sopenharmony_ci depends on ARCH_DAVINCI || ARCH_OMAP2PLUS || COMPILE_TEST 6862306a36Sopenharmony_ci depends on NET_SWITCHDEV 6962306a36Sopenharmony_ci depends on TI_CPTS || !TI_CPTS 7062306a36Sopenharmony_ci select PAGE_POOL 7162306a36Sopenharmony_ci select TI_DAVINCI_MDIO 7262306a36Sopenharmony_ci select MFD_SYSCON 7362306a36Sopenharmony_ci select REGMAP 7462306a36Sopenharmony_ci select NET_DEVLINK 7562306a36Sopenharmony_ci imply PHY_TI_GMII_SEL 7662306a36Sopenharmony_ci help 7762306a36Sopenharmony_ci This driver supports TI's CPSW Ethernet Switch. 7862306a36Sopenharmony_ci 7962306a36Sopenharmony_ci To compile this driver as a module, choose M here: the module 8062306a36Sopenharmony_ci will be called cpsw_new. 8162306a36Sopenharmony_ci 8262306a36Sopenharmony_ciconfig TI_CPTS 8362306a36Sopenharmony_ci tristate "TI Common Platform Time Sync (CPTS) Support" 8462306a36Sopenharmony_ci depends on ARCH_OMAP2PLUS || ARCH_KEYSTONE || COMPILE_TEST 8562306a36Sopenharmony_ci depends on COMMON_CLK 8662306a36Sopenharmony_ci depends on PTP_1588_CLOCK 8762306a36Sopenharmony_ci help 8862306a36Sopenharmony_ci This driver supports the Common Platform Time Sync unit of 8962306a36Sopenharmony_ci the CPSW Ethernet Switch and Keystone 2 1g/10g Switch Subsystem. 9062306a36Sopenharmony_ci The unit can time stamp PTP UDP/IPv4 and Layer 2 packets, and the 9162306a36Sopenharmony_ci driver offers a PTP Hardware Clock. 9262306a36Sopenharmony_ci 9362306a36Sopenharmony_ciconfig TI_K3_CPPI_DESC_POOL 9462306a36Sopenharmony_ci tristate 9562306a36Sopenharmony_ci 9662306a36Sopenharmony_ciconfig TI_K3_AM65_CPSW_NUSS 9762306a36Sopenharmony_ci tristate "TI K3 AM654x/J721E CPSW Ethernet driver" 9862306a36Sopenharmony_ci depends on ARCH_K3 && OF && TI_K3_UDMA_GLUE_LAYER 9962306a36Sopenharmony_ci select NET_DEVLINK 10062306a36Sopenharmony_ci select TI_DAVINCI_MDIO 10162306a36Sopenharmony_ci select PHYLINK 10262306a36Sopenharmony_ci select TI_K3_CPPI_DESC_POOL 10362306a36Sopenharmony_ci imply PHY_TI_GMII_SEL 10462306a36Sopenharmony_ci depends on TI_K3_AM65_CPTS || !TI_K3_AM65_CPTS 10562306a36Sopenharmony_ci help 10662306a36Sopenharmony_ci This driver supports TI K3 AM654/J721E CPSW2G Ethernet SubSystem. 10762306a36Sopenharmony_ci The two-port Gigabit Ethernet MAC (MCU_CPSW0) subsystem provides 10862306a36Sopenharmony_ci Ethernet packet communication for the device: One Ethernet port 10962306a36Sopenharmony_ci (port 1) with selectable RGMII and RMII interfaces and an internal 11062306a36Sopenharmony_ci Communications Port Programming Interface (CPPI) port (port 0). 11162306a36Sopenharmony_ci 11262306a36Sopenharmony_ci To compile this driver as a module, choose M here: the module 11362306a36Sopenharmony_ci will be called ti-am65-cpsw-nuss. 11462306a36Sopenharmony_ci 11562306a36Sopenharmony_ciconfig TI_K3_AM65_CPSW_SWITCHDEV 11662306a36Sopenharmony_ci bool "TI K3 AM654x/J721E CPSW Switch mode support" 11762306a36Sopenharmony_ci depends on TI_K3_AM65_CPSW_NUSS 11862306a36Sopenharmony_ci depends on NET_SWITCHDEV 11962306a36Sopenharmony_ci help 12062306a36Sopenharmony_ci This enables switchdev support for TI K3 CPSWxG Ethernet 12162306a36Sopenharmony_ci Switch. Enable this driver to support hardware switch support for AM65 12262306a36Sopenharmony_ci CPSW NUSS driver. 12362306a36Sopenharmony_ci 12462306a36Sopenharmony_ciconfig TI_K3_AM65_CPTS 12562306a36Sopenharmony_ci tristate "TI K3 AM65x CPTS" 12662306a36Sopenharmony_ci depends on ARCH_K3 && OF 12762306a36Sopenharmony_ci depends on PTP_1588_CLOCK 12862306a36Sopenharmony_ci help 12962306a36Sopenharmony_ci Say y here to support the TI K3 AM65x CPTS with 1588 features such as 13062306a36Sopenharmony_ci PTP hardware clock for each CPTS device and network packets 13162306a36Sopenharmony_ci timestamping where applicable. 13262306a36Sopenharmony_ci Depending on integration CPTS blocks enable compliance with 13362306a36Sopenharmony_ci the IEEE 1588-2008 standard for a precision clock synchronization 13462306a36Sopenharmony_ci protocol, Ethernet Enhanced Scheduled Traffic Operations (CPTS_ESTFn) 13562306a36Sopenharmony_ci and PCIe Subsystem Precision Time Measurement (PTM). 13662306a36Sopenharmony_ci 13762306a36Sopenharmony_ciconfig TI_AM65_CPSW_TAS 13862306a36Sopenharmony_ci bool "Enable TAS offload in AM65 CPSW" 13962306a36Sopenharmony_ci depends on TI_K3_AM65_CPSW_NUSS && NET_SCH_TAPRIO && TI_K3_AM65_CPTS 14062306a36Sopenharmony_ci help 14162306a36Sopenharmony_ci Say y here to support Time Aware Shaper(TAS) offload in AM65 CPSW. 14262306a36Sopenharmony_ci AM65 CPSW hardware supports Enhanced Scheduled Traffic (EST) 14362306a36Sopenharmony_ci defined in IEEE 802.1Q 2018. The EST scheduler runs on CPTS and the 14462306a36Sopenharmony_ci TAS/EST schedule is updated in the Fetch RAM memory of the CPSW. 14562306a36Sopenharmony_ci 14662306a36Sopenharmony_ciconfig TI_KEYSTONE_NETCP 14762306a36Sopenharmony_ci tristate "TI Keystone NETCP Core Support" 14862306a36Sopenharmony_ci select TI_DAVINCI_MDIO 14962306a36Sopenharmony_ci depends on OF 15062306a36Sopenharmony_ci depends on KEYSTONE_NAVIGATOR_DMA && KEYSTONE_NAVIGATOR_QMSS 15162306a36Sopenharmony_ci depends on TI_CPTS || !TI_CPTS 15262306a36Sopenharmony_ci help 15362306a36Sopenharmony_ci This driver supports TI's Keystone NETCP Core. 15462306a36Sopenharmony_ci 15562306a36Sopenharmony_ci To compile this driver as a module, choose M here: the module 15662306a36Sopenharmony_ci will be called keystone_netcp. 15762306a36Sopenharmony_ci 15862306a36Sopenharmony_ciconfig TI_KEYSTONE_NETCP_ETHSS 15962306a36Sopenharmony_ci depends on TI_KEYSTONE_NETCP 16062306a36Sopenharmony_ci tristate "TI Keystone NETCP Ethernet subsystem Support" 16162306a36Sopenharmony_ci help 16262306a36Sopenharmony_ci 16362306a36Sopenharmony_ci To compile this driver as a module, choose M here: the module 16462306a36Sopenharmony_ci will be called keystone_netcp_ethss. 16562306a36Sopenharmony_ci 16662306a36Sopenharmony_ciconfig TLAN 16762306a36Sopenharmony_ci tristate "TI ThunderLAN support" 16862306a36Sopenharmony_ci depends on (PCI || EISA) 16962306a36Sopenharmony_ci help 17062306a36Sopenharmony_ci If you have a PCI Ethernet network card based on the ThunderLAN chip 17162306a36Sopenharmony_ci which is supported by this driver, say Y here. 17262306a36Sopenharmony_ci 17362306a36Sopenharmony_ci Devices currently supported by this driver are Compaq Netelligent, 17462306a36Sopenharmony_ci Compaq NetFlex and Olicom cards. Please read the file 17562306a36Sopenharmony_ci <file:Documentation/networking/device_drivers/ethernet/ti/tlan.rst> 17662306a36Sopenharmony_ci for more details. 17762306a36Sopenharmony_ci 17862306a36Sopenharmony_ci To compile this driver as a module, choose M here. The module 17962306a36Sopenharmony_ci will be called tlan. 18062306a36Sopenharmony_ci 18162306a36Sopenharmony_ci Please email feedback to <torben.mathiasen@compaq.com>. 18262306a36Sopenharmony_ci 18362306a36Sopenharmony_ciconfig CPMAC 18462306a36Sopenharmony_ci tristate "TI AR7 CPMAC Ethernet support" 18562306a36Sopenharmony_ci depends on AR7 18662306a36Sopenharmony_ci select PHYLIB 18762306a36Sopenharmony_ci help 18862306a36Sopenharmony_ci TI AR7 CPMAC Ethernet support 18962306a36Sopenharmony_ci 19062306a36Sopenharmony_ciconfig TI_ICSSG_PRUETH 19162306a36Sopenharmony_ci tristate "TI Gigabit PRU Ethernet driver" 19262306a36Sopenharmony_ci select PHYLIB 19362306a36Sopenharmony_ci select TI_ICSS_IEP 19462306a36Sopenharmony_ci select TI_K3_CPPI_DESC_POOL 19562306a36Sopenharmony_ci depends on PRU_REMOTEPROC 19662306a36Sopenharmony_ci depends on ARCH_K3 && OF && TI_K3_UDMA_GLUE_LAYER 19762306a36Sopenharmony_ci help 19862306a36Sopenharmony_ci Support dual Gigabit Ethernet ports over the ICSSG PRU Subsystem. 19962306a36Sopenharmony_ci This subsystem is available starting with the AM65 platform. 20062306a36Sopenharmony_ci 20162306a36Sopenharmony_ci This driver requires firmware binaries which will run on the PRUs 20262306a36Sopenharmony_ci to support the Ethernet operation. Currently, it supports Ethernet 20362306a36Sopenharmony_ci with 1G and 100M link speed. 20462306a36Sopenharmony_ci 20562306a36Sopenharmony_ciconfig TI_ICSS_IEP 20662306a36Sopenharmony_ci tristate "TI PRU ICSS IEP driver" 20762306a36Sopenharmony_ci depends on PTP_1588_CLOCK_OPTIONAL 20862306a36Sopenharmony_ci depends on TI_PRUSS 20962306a36Sopenharmony_ci default TI_PRUSS 21062306a36Sopenharmony_ci help 21162306a36Sopenharmony_ci This driver enables support for the PRU-ICSS Industrial Ethernet 21262306a36Sopenharmony_ci Peripheral within a PRU-ICSS subsystem present on various TI SoCs. 21362306a36Sopenharmony_ci 21462306a36Sopenharmony_ci To compile this driver as a module, choose M here. The module 21562306a36Sopenharmony_ci will be called icss_iep. 21662306a36Sopenharmony_ci 21762306a36Sopenharmony_ciendif # NET_VENDOR_TI 218