#
# Allwinner device configuration
#

config NET_VENDOR_ALLWINNER
       bool "Allwinner devices"
       default y
       depends on ARCH_SUNXI
       ---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 Allwinner cards. If you say Y,
	 you will be asked for your specific card in the following
	 questions.

if NET_VENDOR_ALLWINNER

config SUN4I_EMAC
        tristate "Allwinner A10 EMAC support"
	depends on ARCH_SUNXI
	depends on OF
	select CRC32
	select NET_CORE
	select MII
	select PHYLIB
        ---help---
          Support for Allwinner A10 EMAC ethernet driver.

          To compile this driver as a module, choose M here.  The module
          will be called sun4i-emac.

endif # NET_VENDOR_ALLWINNER
