| # SPDX-License-Identifier: GPL-2.0-only | |
| # | |
| # TI device configuration | |
| # | |
| config NET_VENDOR_TI | |
| bool "Texas Instruments (TI) devices" | |
| default y | |
| depends on PCI || EISA || ARCH_DAVINCI || ARCH_OMAP2PLUS || ARCH_KEYSTONE || ARCH_K3 | |
| help | |
| If you have a network (Ethernet) card belonging to this class, say Y. | |
| Note that the answer to this question doesn't directly affect the | |
| kernel: saying N will just cause the configurator to skip all | |
| the questions about TI devices. If you say Y, you will be asked for | |
| your specific card in the following questions. | |
| if NET_VENDOR_TI | |
| config TI_DAVINCI_EMAC | |
| tristate "TI DaVinci EMAC Support" | |
| depends on ARM && ( ARCH_DAVINCI || ARCH_OMAP3 ) || COMPILE_TEST | |
| select TI_DAVINCI_MDIO | |
| select PHYLIB | |
| select GENERIC_ALLOCATOR | |
| help | |
| This driver supports TI's DaVinci Ethernet . | |
| To compile this driver as a module, choose M here: the module | |
| will be called davinci_emac_driver. This is recommended. | |
| config TI_DAVINCI_MDIO | |
| tristate "TI DaVinci MDIO Support" | |
| depends on ARCH_DAVINCI || ARCH_OMAP2PLUS || ARCH_KEYSTONE || ARCH_K3 || COMPILE_TEST | |
| select PHYLIB | |
| select MDIO_BITBANG | |
| help | |
| This driver supports TI's DaVinci MDIO module. | |
| To compile this driver as a module, choose M here: the module | |
| will be called davinci_mdio. This is recommended. | |
| config TI_CPSW_PHY_SEL | |
| bool "TI CPSW Phy mode Selection (DEPRECATED)" | |
| default n | |
| help | |
| This driver supports configuring of the phy mode connected to | |
| the CPSW. DEPRECATED: use PHY_TI_GMII_SEL. | |
| config TI_CPSW | |
| tristate "TI CPSW Switch Support" | |
| depends on ARCH_DAVINCI || ARCH_OMAP2PLUS || COMPILE_TEST | |
| depends on TI_CPTS || !TI_CPTS | |
| select TI_DAVINCI_MDIO | |
| select MFD_SYSCON | |
| select PAGE_POOL | |
| select REGMAP | |
| imply PHY_TI_GMII_SEL | |
| help | |
| This driver supports TI's CPSW Ethernet Switch. | |
| To compile this driver as a module, choose M here: the module | |
| will be called cpsw. | |
| config TI_CPSW_SWITCHDEV | |
| tristate "TI CPSW Switch Support with switchdev" | |
| depends on ARCH_DAVINCI || ARCH_OMAP2PLUS || COMPILE_TEST | |
| depends on NET_SWITCHDEV | |
| depends on TI_CPTS || !TI_CPTS | |
| select PAGE_POOL | |
| select TI_DAVINCI_MDIO | |
| select MFD_SYSCON | |
| select REGMAP | |
| select NET_DEVLINK | |
| imply PHY_TI_GMII_SEL | |
| help | |
| This driver supports TI's CPSW Ethernet Switch. | |
| To compile this driver as a module, choose M here: the module | |
| will be called cpsw_new. | |
| config TI_CPTS | |
| tristate "TI Common Platform Time Sync (CPTS) Support" | |
| depends on ARCH_OMAP2PLUS || ARCH_KEYSTONE || COMPILE_TEST | |
| depends on COMMON_CLK | |
| depends on PTP_1588_CLOCK | |
| help | |
| This driver supports the Common Platform Time Sync unit of | |
| the CPSW Ethernet Switch and Keystone 2 1g/10g Switch Subsystem. | |
| The unit can time stamp PTP UDP/IPv4 and Layer 2 packets, and the | |
| driver offers a PTP Hardware Clock. | |
| config TI_K3_CPPI_DESC_POOL | |
| tristate | |
| config TI_K3_AM65_CPSW_NUSS | |
| tristate "TI K3 AM654x/J721E CPSW Ethernet driver" | |
| depends on ARCH_K3 && OF && TI_K3_UDMA_GLUE_LAYER | |
| select NET_DEVLINK | |
| select TI_DAVINCI_MDIO | |
| select PHYLINK | |
| select PAGE_POOL | |
| select TI_K3_CPPI_DESC_POOL | |
| imply PHY_TI_GMII_SEL | |
| depends on TI_K3_AM65_CPTS || !TI_K3_AM65_CPTS | |
| help | |
| This driver supports TI K3 AM654/J721E CPSW2G Ethernet SubSystem. | |
| The two-port Gigabit Ethernet MAC (MCU_CPSW0) subsystem provides | |
| Ethernet packet communication for the device: One Ethernet port | |
| (port 1) with selectable RGMII and RMII interfaces and an internal | |
| Communications Port Programming Interface (CPPI) port (port 0). | |
| To compile this driver as a module, choose M here: the module | |
| will be called ti-am65-cpsw-nuss. | |
| config TI_K3_AM65_CPSW_SWITCHDEV | |
| bool "TI K3 AM654x/J721E CPSW Switch mode support" | |
| depends on TI_K3_AM65_CPSW_NUSS | |
| depends on NET_SWITCHDEV | |
| help | |
| This enables switchdev support for TI K3 CPSWxG Ethernet | |
| Switch. Enable this driver to support hardware switch support for AM65 | |
| CPSW NUSS driver. | |
| config TI_K3_AM65_CPTS | |
| tristate "TI K3 AM65x CPTS" | |
| depends on ARCH_K3 && OF | |
| depends on PTP_1588_CLOCK | |
| help | |
| Say y here to support the TI K3 AM65x CPTS with 1588 features such as | |
| PTP hardware clock for each CPTS device and network packets | |
| timestamping where applicable. | |
| Depending on integration CPTS blocks enable compliance with | |
| the IEEE 1588-2008 standard for a precision clock synchronization | |
| protocol, Ethernet Enhanced Scheduled Traffic Operations (CPTS_ESTFn) | |
| and PCIe Subsystem Precision Time Measurement (PTM). | |
| config TI_AM65_CPSW_QOS | |
| bool "Enable QoS offload features in AM65 CPSW" | |
| depends on TI_K3_AM65_CPSW_NUSS && NET_SCH_TAPRIO && TI_K3_AM65_CPTS | |
| help | |
| This option enables QoS offload features in AM65 CPSW like | |
| Time Aware Shaper (TAS) / Enhanced Scheduled Traffic (EST), | |
| MQPRIO qdisc offload and Frame-Preemption MAC Merge / Interspersing | |
| Express Traffic (IET). | |
| The EST scheduler runs on CPTS and the TAS/EST schedule is | |
| updated in the Fetch RAM memory of the CPSW. | |
| config TI_KEYSTONE_NETCP | |
| tristate "TI Keystone NETCP Core Support" | |
| select TI_DAVINCI_MDIO | |
| depends on OF | |
| depends on KEYSTONE_NAVIGATOR_DMA && KEYSTONE_NAVIGATOR_QMSS | |
| depends on TI_CPTS || !TI_CPTS | |
| help | |
| This driver supports TI's Keystone NETCP Core. | |
| To compile this driver as a module, choose M here: the module | |
| will be called keystone_netcp. | |
| config TI_KEYSTONE_NETCP_ETHSS | |
| depends on TI_KEYSTONE_NETCP | |
| tristate "TI Keystone NETCP Ethernet subsystem Support" | |
| help | |
| To compile this driver as a module, choose M here: the module | |
| will be called keystone_netcp_ethss. | |
| config TLAN | |
| tristate "TI ThunderLAN support" | |
| depends on (PCI || EISA) && HAS_IOPORT | |
| help | |
| If you have a PCI Ethernet network card based on the ThunderLAN chip | |
| which is supported by this driver, say Y here. | |
| Devices currently supported by this driver are Compaq Netelligent, | |
| Compaq NetFlex and Olicom cards. Please read the file | |
| <file:Documentation/networking/device_drivers/ethernet/ti/tlan.rst> | |
| for more details. | |
| To compile this driver as a module, choose M here. The module | |
| will be called tlan. | |
| Please email feedback to <torben.mathiasen@compaq.com>. | |
| config TI_ICSSG_PRUETH | |
| tristate "TI Gigabit PRU Ethernet driver" | |
| select PHYLIB | |
| select TI_ICSS_IEP | |
| select TI_K3_CPPI_DESC_POOL | |
| depends on PRU_REMOTEPROC | |
| depends on NET_SWITCHDEV | |
| depends on ARCH_K3 && OF && TI_K3_UDMA_GLUE_LAYER | |
| depends on PTP_1588_CLOCK_OPTIONAL | |
| depends on HSR || !HSR | |
| help | |
| Support dual Gigabit Ethernet ports over the ICSSG PRU Subsystem. | |
| This subsystem is available starting with the AM65 platform. | |
| This driver requires firmware binaries which will run on the PRUs | |
| to support the Ethernet operation. Currently, it supports Ethernet | |
| with 1G and 100M link speed. | |
| config TI_ICSSG_PRUETH_SR1 | |
| tristate "TI Gigabit PRU SR1.0 Ethernet driver" | |
| select PHYLIB | |
| select TI_ICSS_IEP | |
| select TI_K3_CPPI_DESC_POOL | |
| select PAGE_POOL | |
| depends on PRU_REMOTEPROC | |
| depends on NET_SWITCHDEV | |
| depends on ARCH_K3 && OF && TI_K3_UDMA_GLUE_LAYER | |
| depends on PTP_1588_CLOCK_OPTIONAL | |
| help | |
| Support dual Gigabit Ethernet ports over the ICSSG PRU Subsystem. | |
| This subsystem is available on the AM65 SR1.0 platform. | |
| This driver requires firmware binaries which will run on the PRUs | |
| to support the Ethernet operation. Currently, it supports Ethernet | |
| with 1G, 100M and 10M link speed. | |
| config TI_ICSS_IEP | |
| tristate "TI PRU ICSS IEP driver" | |
| depends on PTP_1588_CLOCK_OPTIONAL | |
| depends on TI_PRUSS | |
| default TI_PRUSS | |
| help | |
| This driver enables support for the PRU-ICSS Industrial Ethernet | |
| Peripheral within a PRU-ICSS subsystem present on various TI SoCs. | |
| To compile this driver as a module, choose M here. The module | |
| will be called icss_iep. | |
| config TI_PRUETH | |
| tristate "TI PRU Ethernet EMAC driver" | |
| depends on PRU_REMOTEPROC | |
| depends on NET_SWITCHDEV | |
| select TI_ICSS_IEP | |
| depends on PTP_1588_CLOCK_OPTIONAL | |
| help | |
| Some TI SoCs has Programmable Realtime Unit (PRU) cores which can | |
| support Single or Dual Ethernet ports with the help of firmware code | |
| running on PRU cores. This driver supports remoteproc based | |
| communication to PRU firmware to expose Ethernet interface to Linux. | |
| endif # NET_VENDOR_TI |