# This file is part of the OpenADK project. OpenADK is copyrighted
# material, please see the LICENCE file in the top-level directory.

menu "Ethernet network devices support"
depends on ADK_TARGET_WITH_NETDEVICE \
	|| ADK_TARGET_GENERIC

config ADK_KERNEL_NET_CADENCE
	bool

config ADK_KERNEL_NET_VENDOR_ARC
	bool

config ADK_KERNEL_NET_VENDOR_AMD
	bool

config ADK_KERNEL_NET_VENDOR_ATHEROS
	bool

config ADK_KERNEL_NET_VENDOR_IBM
	bool

config ADK_KERNEL_NET_VENDOR_INTEL
	bool

config ADK_KERNEL_NET_VENDOR_FARADAY
	bool

config ADK_KERNEL_NET_VENDOR_FREESCALE
	bool

config ADK_KERNEL_NET_VENDOR_NATSEMI
	bool

config ADK_KERNEL_NET_VENDOR_8390
	bool

config ADK_KERNEL_NET_VENDOR_REALTEK
	bool

config ADK_KERNEL_NET_VENDOR_MARVELL
	bool

config ADK_KERNEL_NET_VENDOR_SGI
	bool

config ADK_KERNEL_NET_VENDOR_TI
	bool

config ADK_KERNEL_NET_VENDOR_VIA
	bool

config ADK_KERNEL_NET_VENDOR_SMSC
	bool

config ADK_KERNEL_NET_VENDOR_STMICRO
	bool

config ADK_KERNEL_NET_VENDOR_XILINX
	bool

config ADK_KERNEL_NET_VENDOR_XSCALE
	select ADK_KERNEL_NET_VENDOR_INTEL
	bool

config ADK_KERNEL_NET_PTP_CLASSIFY
	bool

config ADK_KERNEL_PHYLIB
	bool

config ADK_KERNEL_GENERIC_PHY
	bool

config ADK_KERNEL_MII
	bool

config ADK_KERNEL_MDIO_BITBANG
	bool

config ADK_KERNEL_ETRAX_HAVE_PHY
	bool

config ADK_KERNEL_NET_PCI
	bool

config ADK_KERNEL_NET_ETHERNET
	bool

config ADK_KERNEL_NETDEV_1000
	bool

config ADK_KERNEL_VIA_RHINE_MMIO
	bool

config ADK_KERNEL_DWMAC_SUNXI
	bool

config ADK_KERNEL_STMMAC_PLATFORM
	bool

config ADK_KERNEL_LXT_PHY
	bool

config ADK_KERNEL_AT803X_PHY
	tristate
	select ADK_KERNEL_PHYLIB

config ADK_KERNEL_MICREL_PHY
	bool

config ADK_KERNEL_SWCONFIG
	bool

config ADK_KERNEL_AG71XX_AR8216_SUPPORT
	bool

config ADK_KERNEL_AR8216_PHY
	bool

config ADK_KERNEL_AG71XX
	tristate "AG71XX ethernet driver"
	select ADK_KERNEL_NET_VENDOR_ATHEROS
	select ADK_KERNEL_SWCONFIG
	select ADK_KERNEL_PHYLIB
	select ADK_KERNEL_GENERIC_PHY
	select ADK_KERNEL_MDIO_BITBANG
	select ADK_KERNEL_AR8216_PHY
	select ADK_KERNEL_AG71XX_AR8216_SUPPORT
	depends on ADK_TARGET_SYSTEM_MIKROTIK_RB4XX
	default y if ADK_TARGET_SYSTEM_MIKROTIK_RB4XX
	default n
	help
	  Atheros AG71XX ethernet driver

config ADK_KERNEL_FEC
	tristate "FEC ethernet driver"
	select ADK_KERNEL_NET_VENDOR_FREESCALE
	select ADK_KERNEL_AT803X_PHY
	depends on ADK_TARGET_SYSTEM_SOLIDRUN_IMX6 || \
		   ADK_TARGET_SYSTEM_QEMU_M68K_MCF5208 || \
		   ADK_TARGET_SYSTEM_KINETIS_K70
	default y if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
	default y if ADK_TARGET_SYSTEM_QEMU_M68K_MCF5208
	default n
	help
	  FEC ethernet driver


config ADK_KERNEL_IXP4XX_ETH
	tristate "IXP4XX ethernet driver"
	select ADK_KERNEL_NET_VENDOR_XSCALE
	select ADK_KERNEL_NET_PCI
	select ADK_KERNEL_PHYLIB
	select ADK_KERNEL_MII
	select ADK_KERNEL_NET_PTP_CLASSIFY
	depends on ADK_TARGET_SYSTEM_LINKSYS_NSLU2
	default y if ADK_TARGET_SYSTEM_LINKSYS_NSLU2
	default n
	help
	  IXP4XX ethernet driver

config ADK_KERNEL_KINETIS_MAC
	bool "Kinetis ethernet driver"
	select ADK_KERNEL_NET_ETHERNET
	select ADK_KERNEL_NET_VENDOR_FREESCALE
	select ADK_KERNEL_FEC
	select ADK_KERNEL_PHYLIB
	select ADK_KERNEL_MICREL_PHY
	select ADK_KERNEL_MII
	depends on ADK_TARGET_SYSTEM_KINETIS_K70
	default y if ADK_TARGET_SYSTEM_KINETIS_K70
	default n
	help
	  Ethernet driver for Kinetis K70

config ADK_KERNEL_KORINA
	tristate "Korina ethernet driver"
	depends on ADK_TARGET_SYSTEM_MIKROTIK_RB532
	default y if ADK_TARGET_SYSTEM_MIKROTIK_RB532
	default n
	help
	  Korina ethernet driver

config ADK_KERNEL_USB_NET_SMSC95XX
	tristate "SMSC95XX USB ethernet driver"
	select ADK_KERNEL_USB_NET_DRIVERS
	select ADK_KERNEL_USB_USBNET
	depends on ADK_TARGET_BOARD_BCM28XX
	default y if ADK_TARGET_BOARD_BCM28XX
	default n
	help
	  USB SMSC95XX ethernet driver

config ADK_KERNEL_SMC91X
	tristate "SMC91X ethernet driver"
	select ADK_KERNEL_NET_VENDOR_SMSC
	select ADK_KERNEL_GPIOLIB
	depends on ADK_TARGET_SYSTEM_ARM_FM || \
		   ADK_TARGET_SYSTEM_QEMU_ARM_VERSATILEPB || \
		   ADK_TARGET_SYSTEM_QEMU_ARM_VERSATILEPB_NOMMU || \
		   ADK_TARGET_SYSTEM_QEMU_ARM_REALVIEW_EB_MPCORE
	default y if ADK_TARGET_SYSTEM_QEMU_ARM_VERSATILEPB
	default y if ADK_TARGET_SYSTEM_QEMU_ARM_VERSATILEPB_NOMMU
	default y if ADK_TARGET_SYSTEM_QEMU_ARM_REALVIEW_EB_MPCORE
	default y if ADK_TARGET_SYSTEM_ARM_FM
	default n
	help
 	  SMC91X ethernet driver

config ADK_KERNEL_SMSC911X
	tristate "SMC911X ethernet driver"
	select ADK_KERNEL_NET_VENDOR_SMSC
	default y if ADK_TARGET_SYSTEM_QEMU_ARM_VEXPRESS_A9
	default n
	depends on ADK_TARGET_SYSTEM_QEMU_ARM_VEXPRESS_A9
	help
 	  SMC911X ethernet driver

config ADK_KERNEL_VIA_RHINE
	tristate "VIA Rhine ethernet driver"
	select ADK_KERNEL_NET_VENDOR_VIA
	select ADK_KERNEL_VIA_RHINE_MMIO
	depends on ADK_TARGET_SYSTEM_MIKROTIK_RB532 \
		|| ADK_TARGET_SYSTEM_PCENGINES_ALIX
	default y if ADK_TARGET_SYSTEM_MIKROTIK_RB532
	default y if ADK_TARGET_SYSTEM_PCENGINES_ALIX
	default n
	help
	  VIA Rhine ethernet driver

config ADK_KERNEL_XILINX_AXI_EMAC
	tristate "Xilinx AXI ethernet driver"
	select ADK_KERNEL_NET_VENDOR_XILINX
	depends on ADK_TARGET_SYSTEM_QEMU_MICROBLAZE_ML605
	default y if ADK_TARGET_SYSTEM_QEMU_MICROBLAZE_ML605
	default n
	help
	  Xilinx AXI ethernet driver

config ADK_KERNEL_XILINX_LL_TEMAC
	tristate "Xilinx Temac ethernet driver"
	select ADK_KERNEL_NET_VENDOR_XILINX
	depends on ADK_TARGET_SYSTEM_QEMU_PPC_VIRTEX_ML507
	default y if ADK_TARGET_SYSTEM_QEMU_PPC_VIRTEX_ML507
	default n
	help
	  Xilinx Temac ethernet driver
	
config ADK_KERNEL_XILINX_EMACLITE
	tristate "Xilinx Emaclite ethernet driver"
	select ADK_KERNEL_NET_VENDOR_XILINX
	depends on ADK_TARGET_SYSTEM_QEMU_MICROBLAZE_S3ADSP1800
	default y if ADK_TARGET_SYSTEM_QEMU_MICROBLAZE_S3ADSP1800
	default n
	help
	  Xilinx Emaclite ethernet driver

config ADK_KERNEL_NE2K_PCI
	tristate "NE2000 PCI driver"
	select ADK_KERNEL_NET_PCI
	select ADK_KERNEL_NET_VENDOR_NATSEMI
	select ADK_KERNEL_NET_VENDOR_8390
	select ADK_KERNEL_MII
	depends on ADK_TARGET_WITH_PCI \
		|| ADK_TARGET_GENERIC
	default n
	help
	  NE2000 PCI driver

config ADK_KERNEL_PCNET32
	tristate "AMD PCNet32 PCI driver"
	select ADK_KERNEL_NET_PCI
	select ADK_KERNEL_MII
	depends on ADK_TARGET_WITH_PCI \
		|| ADK_TARGET_GENERIC
	help
	  AMD PCnet32 driver

config ADK_KERNEL_8139CP
	tristate "RTL8139C+ PCI driver"
	select ADK_KERNEL_NET_PCI
	select ADK_KERNEL_NET_VENDOR_REALTEK
	select ADK_KERNEL_MII
	depends on ADK_TARGET_WITH_PCI \
		|| ADK_TARGET_SYSTEM_QEMU_SH \
		|| ADK_TARGET_GENERIC
	default y if ADK_TARGET_SYSTEM_QEMU_SH
	default n
	help
	  RTL8139C+ pci driver

config ADK_KERNEL_8139TOO
	tristate "RTL8139 PCI driver"
	select ADK_KERNEL_NET_VENDOR_REALTEK
	select ADK_KERNEL_NET_PCI
	select ADK_KERNEL_MII
	depends on ADK_TARGET_WITH_PCI \
		|| ADK_TARGET_GENERIC
	default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
	default n
	help
	  RTL8139 pci driver

config ADK_KERNEL_E100
	tristate "Intel(R) PRO/100+ driver"
	select ADK_KERNEL_NET_VENDOR_INTEL
	select ADK_KERNEL_NET_PCI
	select ADK_KERNEL_MII
	depends on ADK_TARGET_WITH_PCI \
		|| ADK_TARGET_GENERIC
	help
	  Intel(R) PRO/100+ cards kernel support

config ADK_KERNEL_E1000
	tristate "Intel(R) PRO/1000 Gigabit Ethernet driver"
	select ADK_KERNEL_NET_VENDOR_INTEL
	select ADK_KERNEL_NETDEV_1000
	depends on ADK_TARGET_WITH_PCI || \
		ADK_TARGET_SYSTEM_QEMU_X86 || \
		ADK_TARGET_SYSTEM_QEMU_X86_64 || \
		ADK_TARGET_SYSTEM_QEMU_MIPS || \
		ADK_TARGET_SYSTEM_QEMU_MIPS64 || \
		ADK_TARGET_SYSTEM_QEMU_PPC_MACPPC || \
		ADK_TARGET_SYSTEM_QEMU_PPC_BAMBOO || \
		ADK_TARGET_SYSTEM_QEMU_ALPHA || \
		ADK_TARGET_SYSTEM_QEMU_SPARC64 || \
		ADK_TARGET_VBOX || \
		ADK_TARGET_GENERIC
	default y if ADK_TARGET_SYSTEM_IBM_X40
	default y if ADK_TARGET_SYSTEM_QEMU_X86
	default y if ADK_TARGET_SYSTEM_QEMU_X86_64
	default y if ADK_TARGET_SYSTEM_QEMU_MIPS
	default y if ADK_TARGET_SYSTEM_QEMU_MIPS64
	default y if ADK_TARGET_SYSTEM_QEMU_PPC_MACPPC
	default y if ADK_TARGET_SYSTEM_QEMU_PPC_BAMBOO
	default y if ADK_TARGET_SYSTEM_QEMU_ALPHA
	default y if ADK_TARGET_SYSTEM_QEMU_SPARC64
	default y if ADK_TARGET_VBOX
	default n
	help
	  Intel(R) PRO/1000 gigabit ethernet driver

config ADK_KERNEL_SUNLANCE
	tristate "AMD Sunlance Ethernet driver"
	select ADK_KERNEL_NET_VENDOR_AMD
	depends on ADK_TARGET_WITH_PCI || ADK_TARGET_SYSTEM_QEMU_SPARC
	default y if ADK_TARGET_SYSTEM_QEMU_SPARC
	default n
	help
	  AMD Sunlance ethernet driver

config ADK_KERNEL_IBMVETH
	tristate "IBM Ethernet driver"
	select ADK_KERNEL_NET_VENDOR_IBM
	depends on ADK_TARGET_WITH_PCI || ADK_TARGET_SYSTEM_QEMU_PPC64
	default y if ADK_TARGET_SYSTEM_QEMU_PPC64
	default n
	help
	  IBM ethernet driver

config ADK_KERNEL_MACB
	tristate "Atmel AT32/AT91 network driver"
	select ADK_KERNEL_NET_CADENCE
	depends on ADK_TARGET_CPU_AVR32 \
		|| ADK_TARGET_SYSTEM_QEMU_ARM_XILINX_ZYNQ
	default y if ADK_TARGET_SYSTEM_ATMEL_NGW100
	default y if ADK_TARGET_SYSTEM_ATMEL_GRASSHOPPER
	default y if ADK_TARGET_SYSTEM_QEMU_ARM_XILINX_ZYNQ
	default n
	help
	  Ethernet Driver for Atmel AT32 and AT91 parts. This driver
	  also supports the Cadence GEM (Gigabit Ethernet MAC found
	  in some ARM SoC devices).

config ADK_KERNEL_TI_DAVINCI_MDIO
	tristate "BeagleBone Back Davinci"
	select ADK_KERNEL_NET_VENDOR_TI
	depends on ADK_TARGET_SYSTEM_BEAGLEBONE_BLACK
	default y if ADK_TARGET_SYSTEM_BEAGLEBONE_BLACK
	default n
	help
	  TI Davinci driver

config ADK_KERNEL_SKY2
	tristate "Marvell Yukon SKY2 driver"
	select ADK_KERNEL_NETDEV_1000
	select ADK_KERNEL_NET_VENDOR_MARVELL
	depends on ADK_TARGET_WITH_PCI \
		|| ADK_TARGET_GENERIC
	default n
	help
	  Marvell Yukon SKY2 driver

config ADK_KERNEL_R8169
	tristate "RTL8169 driver"
	select ADK_KERNEL_NET_VENDOR_REALTEK
	select ADK_KERNEL_NETDEV_1000
	select ADK_KERNEL_MII
	select ADK_KERNEL_FW_LOADER
	select ADK_PACKAGE_REALTEK_FIRMWARE_WIRED
	depends on ADK_TARGET_WITH_PCI \
		|| ADK_TARGET_WITH_MINIPCI \
		|| ADK_TARGET_GENERIC
	default y if ADK_TARGET_SYSTEM_PCENGINES_APU
	default n

config ADK_KERNEL_ETRAX_ETHERNET
	bool "ETRAX ethernet driver"
	select ADK_KERNEL_ETRAX_HAVE_PHY
	depends on ADK_TARGET_ARCH_CRIS
	default y if ADK_TARGET_ARCH_CRIS
	default n

config ADK_KERNEL_MACSONIC
	bool "MAC sonic ethernet driver"
	select ADK_KERNEL_NET_VENDOR_NATSEMI
	depends on ADK_TARGET_SYSTEM_QEMU_M68K_Q800
	default y if ADK_TARGET_SYSTEM_QEMU_M68K_Q800
	default n

config ADK_KERNEL_STMMAC_ETH
	bool "Stmicro MAC ethernet driver"
	select ADK_KERNEL_NET_VENDOR_STMICRO
	select ADK_KERNEL_STMMAC_PLATFORM
	select ADK_KERNEL_DWMAC_SUNXI
	depends on ADK_TARGET_SYSTEM_BANANA_PRO
	default y if ADK_TARGET_SYSTEM_BANANA_PRO
	default n

config ADK_KERNEL_ETHOC
	bool "OpenCore ethernet driver"
	select ADK_KERNEL_PHYLIB
	select ADK_KERNEL_MII
	depends on ADK_TARGET_SYSTEM_QEMU_OR1K
	default y if ADK_TARGET_SYSTEM_QEMU_OR1K
	default n

config ADK_KERNEL_FTMAC100
	bool "Andes ethernet driver"
	select ADK_KERNEL_NET_VENDOR_FARADAY
	depends on ADK_TARGET_SYSTEM_ANDES_AG101P
	default y if ADK_TARGET_SYSTEM_ANDES_AG101P
	default n

config ADK_KERNEL_ATL1
	tristate "Atheros/Attansic L1 Gigabit Ethernet support"
	select ADK_KERNEL_NET_VENDOR_ATHEROS
	select ADK_KERNEL_MII
	select ADK_KERNEL_CRC32
	depends on ADK_TARGET_WITH_PCI \
		|| ADK_TARGET_GENERIC
	default y if ADK_TARGET_SYSTEM_ASUS_P5BVM
	default n
	help
	  This driver supports the Atheros/Attansic L1 gigabit ethernet adapter.

config ADK_KERNEL_SGI_O2MACE_ETH
	tristate "SGI O2 ethernet driver"
	select ADK_KERNEL_NET_VENDOR_SGI
	select ADK_KERNEL_CRC32
	depends on ADK_TARGET_SYSTEM_SGI_O2
	default y if ADK_TARGET_SYSTEM_SGI_O2
	default n
	help
	  This driver supports the SGI O2 ethernet card.

config ADK_KERNEL_ALTERA_TSE
	tristate "Altera TSE ethernet driver"
	select ADK_KERNEL_PHYLIB
	depends on ADK_TARGET_SYSTEM_QEMU_NIOS2
	default y if ADK_TARGET_SYSTEM_QEMU_NIOS2
	default n
	help
	  This driver supports the NIOS2 ethernet chips.

endmenu