config NET_VENDOR_SOCIONEXT
	bool "Socionext ethernet drivers"
	default y
	---help---
	  Option to select ethernet drivers for Socionext platforms.

	  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 Socionext devices. If you say Y, you will be asked
	  for your specific card in the following questions.

if NET_VENDOR_SOCIONEXT

config SNI_AVE
	tristate "Socionext AVE ethernet support"
	depends on (ARCH_UNIPHIER || COMPILE_TEST) && OF
	depends on HAS_IOMEM
	select MFD_SYSCON
	select PHYLIB
	---help---
	  Driver for gigabit ethernet MACs, called AVE, in the
	  Socionext UniPhier family.

config SNI_NETSEC
	tristate "Socionext NETSEC ethernet support"
	depends on (ARCH_SYNQUACER || COMPILE_TEST) && OF
	select PHYLIB
	select MII
	---help---
	  Enable to add support for the SocioNext NetSec Gigabit Ethernet
	  controller + PHY, as found on the Synquacer SC2A11 SoC

	  To compile this driver as a module, choose M here: the module will be
	  called netsec.  If unsure, say N.

endif #NET_VENDOR_SOCIONEXT
