source "drivers/net/arm/Kconfig"
 
-config MACE
-       tristate "MACE (Power Mac ethernet) support"
-       depends on PPC_PMAC && PPC32
-       select CRC32
-       help
-         Power Macintoshes and clones with Ethernet built-in on the
-         motherboard will usually use a MACE (Medium Access Control for
-         Ethernet) interface. Say Y to include support for the MACE chip.
-
-         To compile this driver as a module, choose M here: the module
-         will be called mace.
-
-config MACE_AAUI_PORT
-       bool "Use AAUI port instead of TP by default"
-       depends on MACE
-       help
-         Some Apple machines (notably the Apple Network Server) which use the
-         MACE ethernet chip have an Apple AUI port (small 15-pin connector),
-         instead of an 8-pin RJ45 connector for twisted-pair ethernet.  Say
-         Y here if you have such a machine.  If unsure, say N.
-         The driver will default to AAUI on ANS anyway, and if you use it as
-         a module, you can provide the port_aaui=0|1 to force the driver.
-
-config BMAC
-       tristate "BMAC (G3 ethernet) support"
-       depends on PPC_PMAC && PPC32
-       select CRC32
-       help
-         Say Y for support of BMAC Ethernet interfaces. These are used on G3
-         computers.
-
-         To compile this driver as a module, choose M here: the module
-         will be called bmac.
-
-config MAC89x0
-       tristate "Macintosh CS89x0 based ethernet cards"
-       depends on MAC
-       ---help---
-         Support for CS89x0 chipset based Ethernet cards.  If you have a
-         Nubus or LC-PDS network (Ethernet) card of this type, say Y and
-         read the Ethernet-HOWTO, available from
-         <http://www.tldp.org/docs.html#howto>.
-
-         To compile this driver as a module, choose M here. This module will
-         be called mac89x0.
-
 config MACSONIC
        tristate "Macintosh SONIC based ethernet (onboard, NuBus, LC, CS)"
        depends on MAC
          To compile this driver as a module, choose M here. This module will
          be called macsonic.
 
-config MACMACE
-       bool "Macintosh (AV) onboard MACE ethernet"
-       depends on MAC
-       select CRC32
-       help
-         Support for the onboard AMD 79C940 MACE Ethernet controller used in
-         the 660AV and 840AV Macintosh.  If you have one of these Macintoshes
-         say Y and read the Ethernet-HOWTO, available from
-         <http://www.tldp.org/docs.html#howto>.
-
 config KORINA
        tristate "Korina (IDT RC32434) Ethernet support"
        depends on NET_ETHERNET && MIKROTIK_RB532
          To compile this driver as a module, choose M here. The module
          will be called forcedeth.
 
-config CS89x0
-       tristate "CS89x0 support"
-       depends on NET_ETHERNET && (ISA || EISA || MACH_IXDP2351 \
-               || ARCH_IXDP2X01 || MACH_MX31ADS || MACH_QQ2440)
-       ---help---
-         Support for CS89x0 chipset based Ethernet cards. If you have a
-         network (Ethernet) card of this type, say Y and read the
-         Ethernet-HOWTO, available from
-         <http://www.tldp.org/docs.html#howto> as well as
-         <file:Documentation/networking/cs89x0.txt>.
-
-         To compile this driver as a module, choose M here. The module
-         will be called cs89x0.
-
-config CS89x0_NONISA_IRQ
-       def_bool y
-       depends on CS89x0 != n
-       depends on MACH_IXDP2351 || ARCH_IXDP2X01 || MACH_MX31ADS || MACH_QQ2440
-
 config TC35815
        tristate "TOSHIBA TC35815 Ethernet support"
        depends on NET_PCI && PCI && MIPS
 
 
 obj-$(CONFIG_ROADRUNNER) += rrunner.o
 
-obj-$(CONFIG_MACE) += mace.o
-obj-$(CONFIG_BMAC) += bmac.o
-
 obj-$(CONFIG_TLAN) += tlan.o
 obj-$(CONFIG_SIS190) += sis190.o
 obj-$(CONFIG_SIS900) += sis900.o
 obj-$(CONFIG_MIPS_JAZZ_SONIC) += jazzsonic.o
 obj-$(CONFIG_MIPS_SIM_NET) += mipsnet.o
 obj-$(CONFIG_SGI_IOC3_ETH) += ioc3-eth.o
-obj-$(CONFIG_CS89x0) += cs89x0.o
 obj-$(CONFIG_MACSONIC) += macsonic.o
-obj-$(CONFIG_MACMACE) += macmace.o
-obj-$(CONFIG_MAC89x0) += mac89x0.o
 obj-$(CONFIG_TUN) += tun.o
 obj-$(CONFIG_VETH) += veth.o
 obj-$(CONFIG_NET_NETX) += netx-eth.o
 
 source "drivers/net/ethernet/3com/Kconfig"
 source "drivers/net/ethernet/8390/Kconfig"
 source "drivers/net/ethernet/amd/Kconfig"
+source "drivers/net/ethernet/apple/Kconfig"
 source "drivers/net/ethernet/broadcom/Kconfig"
 source "drivers/net/ethernet/brocade/Kconfig"
 source "drivers/net/ethernet/chelsio/Kconfig"
 
 obj-$(CONFIG_NET_VENDOR_3COM) += 3com/
 obj-$(CONFIG_NET_VENDOR_8390) += 8390/
 obj-$(CONFIG_NET_VENDOR_AMD) += amd/
+obj-$(CONFIG_NET_VENDOR_APPLE) += apple/
 obj-$(CONFIG_NET_VENDOR_BROADCOM) += broadcom/
 obj-$(CONFIG_NET_VENDOR_BROCADE) += brocade/
 obj-$(CONFIG_NET_VENDOR_CHELSIO) += chelsio/
 
--- /dev/null
+#
+# Apple device configuration
+#
+
+config NET_VENDOR_APPLE
+       bool "Apple devices"
+       depends on (PPC_PMAC && PPC32) || MAC || ISA || EISA || MACH_IXDP2351 \
+                  || ARCH_IXDP2X01 || MACH_MX31ADS || MACH_QQ2440
+       ---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 IBM devices. If you say Y, you will be asked for
+         your specific card in the following questions.
+
+if NET_VENDOR_APPLE
+
+config MACE
+       tristate "MACE (Power Mac ethernet) support"
+       depends on PPC_PMAC && PPC32
+       select CRC32
+       ---help---
+         Power Macintoshes and clones with Ethernet built-in on the
+         motherboard will usually use a MACE (Medium Access Control for
+         Ethernet) interface. Say Y to include support for the MACE chip.
+
+         To compile this driver as a module, choose M here: the module
+         will be called mace.
+
+config MACE_AAUI_PORT
+       bool "Use AAUI port instead of TP by default"
+       depends on MACE
+       ---help---
+         Some Apple machines (notably the Apple Network Server) which use the
+         MACE ethernet chip have an Apple AUI port (small 15-pin connector),
+         instead of an 8-pin RJ45 connector for twisted-pair ethernet.  Say
+         Y here if you have such a machine.  If unsure, say N.
+         The driver will default to AAUI on ANS anyway, and if you use it as
+         a module, you can provide the port_aaui=0|1 to force the driver.
+
+config BMAC
+       tristate "BMAC (G3 ethernet) support"
+       depends on PPC_PMAC && PPC32
+       select CRC32
+       ---help---
+         Say Y for support of BMAC Ethernet interfaces. These are used on G3
+         computers.
+
+         To compile this driver as a module, choose M here: the module
+         will be called bmac.
+
+config MAC89x0
+       tristate "Macintosh CS89x0 based ethernet cards"
+       depends on MAC
+       ---help---
+         Support for CS89x0 chipset based Ethernet cards.  If you have a
+         Nubus or LC-PDS network (Ethernet) card of this type, say Y and
+         read the Ethernet-HOWTO, available from
+         <http://www.tldp.org/docs.html#howto>.
+
+         To compile this driver as a module, choose M here. This module will
+         be called mac89x0.
+
+config MACMACE
+       bool "Macintosh (AV) onboard MACE ethernet"
+       depends on MAC
+       select CRC32
+       ---help---
+         Support for the onboard AMD 79C940 MACE Ethernet controller used in
+         the 660AV and 840AV Macintosh.  If you have one of these Macintoshes
+         say Y and read the Ethernet-HOWTO, available from
+         <http://www.tldp.org/docs.html#howto>.
+
+config CS89x0
+       tristate "CS89x0 support"
+       depends on (ISA || EISA || MACH_IXDP2351 \
+               || ARCH_IXDP2X01 || MACH_MX31ADS || MACH_QQ2440)
+       ---help---
+         Support for CS89x0 chipset based Ethernet cards. If you have a
+         network (Ethernet) card of this type, say Y and read the
+         Ethernet-HOWTO, available from
+         <http://www.tldp.org/docs.html#howto> as well as
+         <file:Documentation/networking/cs89x0.txt>.
+
+         To compile this driver as a module, choose M here. The module
+         will be called cs89x0.
+
+config CS89x0_NONISA_IRQ
+       def_bool y
+       depends on CS89x0 != n
+       depends on MACH_IXDP2351 || ARCH_IXDP2X01 || MACH_MX31ADS || MACH_QQ2440
+
+endif # NET_VENDOR_APPLE
 
--- /dev/null
+#
+# Makefile for the Apple network device drivers.
+#
+
+obj-$(CONFIG_MACE) += mace.o
+obj-$(CONFIG_BMAC) += bmac.o
+obj-$(CONFIG_MAC89x0) += mac89x0.o
+obj-$(CONFIG_CS89x0) += cs89x0.o
+obj-$(CONFIG_MACMACE) += macmace.o