M:     Florian Fainelli <florian@openwrt.org>
 L:     netdev@vger.kernel.org
 S:     Maintained
-F:     drivers/net/cpmac.c
+F:     drivers/net/ethernet/ti/cpmac.c
 
 CPU FREQUENCY DRIVERS
 M:     Dave Jones <davej@redhat.com>
 W:     http://sourceforge.net/projects/tlan/
 S:     Maintained
 F:     Documentation/networking/tlan.txt
-F:     drivers/net/tlan.*
+F:     drivers/net/ethernet/ti/tlan.*
 
 TOMOYO SECURITY MODULE
 M:     Kentaro Takeda <takedakn@nttdata.co.jp>
 
          To compile this driver as a module, choose M here. The module
          will be called netx-eth.
 
-config TI_DAVINCI_EMAC
-       tristate "TI DaVinci EMAC Support"
-       depends on ARM && ( ARCH_DAVINCI || ARCH_OMAP3 )
-       select TI_DAVINCI_MDIO
-       select TI_DAVINCI_CPDMA
-       select PHYLIB
-       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 ARM && ( ARCH_DAVINCI || ARCH_OMAP3 )
-       select PHYLIB
-       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_DAVINCI_CPDMA
-       tristate "TI DaVinci CPDMA Support"
-       depends on ARM && ( ARCH_DAVINCI || ARCH_OMAP3 )
-       help
-         This driver supports TI's DaVinci CPDMA dma engine.
-
-         To compile this driver as a module, choose M here: the module
-         will be called davinci_cpdma.  This is recommended.
-
 config DM9000
        tristate "DM9000 support"
        depends on ARM || BLACKFIN || MIPS
          To compile this driver as a module, choose M here: the module
          will be called r6040. This is recommended.
 
-config TLAN
-       tristate "TI ThunderLAN support"
-       depends on NET_PCI && (PCI || EISA)
-       ---help---
-         If you have a PCI Ethernet network card based on the ThunderLAN chip
-         which is supported by this driver, say Y and read the
-         Ethernet-HOWTO, available from
-         <http://www.tldp.org/docs.html#howto>.
-
-         Devices currently supported by this driver are Compaq Netelligent,
-         Compaq NetFlex and Olicom cards.  Please read the file
-         <file:Documentation/networking/tlan.txt> 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 CPMAC
-       tristate "TI AR7 CPMAC Ethernet support (EXPERIMENTAL)"
-       depends on NET_ETHERNET && EXPERIMENTAL && AR7
-       select PHYLIB
-       help
-         TI AR7 CPMAC Ethernet support
-
 config NET_POCKET
        bool "Pocket and portable adapters"
        depends on PARPORT
 
 obj-$(CONFIG_MII) += mii.o
 obj-$(CONFIG_MDIO) += mdio.o
 obj-$(CONFIG_PHYLIB) += phy/
-
-obj-$(CONFIG_TI_DAVINCI_EMAC) += davinci_emac.o
-obj-$(CONFIG_TI_DAVINCI_MDIO) += davinci_mdio.o
-obj-$(CONFIG_TI_DAVINCI_CPDMA) += davinci_cpdma.o
-
 obj-$(CONFIG_IP1000) += ipg.o
 obj-$(CONFIG_CAN) += can/
 obj-$(CONFIG_BONDING) += bonding/
 
 obj-$(CONFIG_ROADRUNNER) += rrunner.o
 
-obj-$(CONFIG_TLAN) += tlan.o
 obj-$(CONFIG_R6040) += r6040.o
 obj-$(CONFIG_YELLOWFIN) += yellowfin.o
 obj-$(CONFIG_FEALNX) += fealnx.o
 obj-$(CONFIG_MACVLAN) += macvlan.o
 obj-$(CONFIG_MACVTAP) += macvtap.o
 obj-$(CONFIG_DEFXX) += defxx.o
-obj-$(CONFIG_CPMAC) += cpmac.o
 obj-$(CONFIG_EQUALIZER) += eql.o
 obj-$(CONFIG_KORINA) += korina.o
 obj-$(CONFIG_MIPS_SIM_NET) += mipsnet.o
 
 source "drivers/net/ethernet/stmicro/Kconfig"
 source "drivers/net/ethernet/sun/Kconfig"
 source "drivers/net/ethernet/tehuti/Kconfig"
+source "drivers/net/ethernet/ti/Kconfig"
 source "drivers/net/ethernet/toshiba/Kconfig"
 source "drivers/net/ethernet/tundra/Kconfig"
 source "drivers/net/ethernet/via/Kconfig"
 
 obj-$(CONFIG_NET_VENDOR_STMICRO) += stmicro/
 obj-$(CONFIG_NET_VENDOR_SUN) += sun/
 obj-$(CONFIG_NET_VENDOR_TEHUTI) += tehuti/
+obj-$(CONFIG_NET_VENDOR_TI) += ti/
 obj-$(CONFIG_NET_VENDOR_TOSHIBA) += toshiba/
 obj-$(CONFIG_NET_VENDOR_TUNDRA) += tundra/
 obj-$(CONFIG_NET_VENDOR_VIA) += via/
 
--- /dev/null
+#
+# TI device configuration
+#
+
+config NET_VENDOR_TI
+       bool "Texas Instruments (TI) devices"
+       depends on PCI || EISA || AR7 || (ARM && (ARCH_DAVINCI || ARCH_OMAP3))
+       ---help---
+         If you have a network (Ethernet) card belonging to this class, say Y
+         and read the Ethernet-HOWTO, available from
+         <http://www.tldp.org/docs.html#howto>.
+
+         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 )
+       select TI_DAVINCI_MDIO
+       select TI_DAVINCI_CPDMA
+       select PHYLIB
+       ---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 ARM && ( ARCH_DAVINCI || ARCH_OMAP3 )
+       select PHYLIB
+       ---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_DAVINCI_CPDMA
+       tristate "TI DaVinci CPDMA Support"
+       depends on ARM && ( ARCH_DAVINCI || ARCH_OMAP3 )
+       ---help---
+         This driver supports TI's DaVinci CPDMA dma engine.
+
+         To compile this driver as a module, choose M here: the module
+         will be called davinci_cpdma.  This is recommended.
+
+config TLAN
+       tristate "TI ThunderLAN support"
+       depends on (PCI || EISA)
+       ---help---
+         If you have a PCI Ethernet network card based on the ThunderLAN chip
+         which is supported by this driver, say Y and read the
+         Ethernet-HOWTO, available from
+         <http://www.tldp.org/docs.html#howto>.
+
+         Devices currently supported by this driver are Compaq Netelligent,
+         Compaq NetFlex and Olicom cards.  Please read the file
+         <file:Documentation/networking/tlan.txt> 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 CPMAC
+       tristate "TI AR7 CPMAC Ethernet support (EXPERIMENTAL)"
+       depends on EXPERIMENTAL && AR7
+       select PHYLIB
+       ---help---
+         TI AR7 CPMAC Ethernet support
+
+endif # NET_VENDOR_TI
 
--- /dev/null
+#
+# Makefile for the TI network device drivers.
+#
+
+obj-$(CONFIG_TLAN) += tlan.o
+obj-$(CONFIG_CPMAC) += cpmac.o
+obj-$(CONFIG_TI_DAVINCI_EMAC) += davinci_emac.o
+obj-$(CONFIG_TI_DAVINCI_MDIO) += davinci_mdio.o
+obj-$(CONFIG_TI_DAVINCI_CPDMA) += davinci_cpdma.o