#
# Faraday device configuration
#

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

if NET_VENDOR_FARADAY

config FTMAC100
	tristate "Faraday FTMAC100 10/100 Ethernet support"
	depends on ARM
	select MII
	---help---
	  This driver supports the FTMAC100 10/100 Ethernet controller
	  from Faraday. It is used on Faraday A320, Andes AG101 and some
	  other ARM/NDS32 SoC's.

config FTGMAC100
	tristate "Faraday FTGMAC100 Gigabit Ethernet support"
	depends on ARM
	select PHYLIB
	---help---
	  This driver supports the FTGMAC100 Gigabit Ethernet controller
	  from Faraday. It is used on Faraday A369, Andes AG102 and some
	  other ARM/NDS32 SoC's.

endif # NET_VENDOR_FARADAY
