# SPDX-License-Identifier: GPL-2.0-only
config NET_VENDOR_MEDIATEK
	bool "MediaTek ethernet driver"
	depends on ARCH_MEDIATEK || SOC_MT7621 || SOC_MT7620
	---help---
	  If you have a Mediatek SoC with ethernet, say Y.

if NET_VENDOR_MEDIATEK

config NET_MEDIATEK_SOC
	tristate "MediaTek SoC Gigabit Ethernet support"
	select PHYLINK
	---help---
	  This driver supports the gigabit ethernet MACs in the
	  MediaTek SoC family.

config MEDIATEK_NETSYS_V2
	tristate "MediaTek Ethernet NETSYS V2 support"
	 depends on ARCH_MEDIATEK && NET_MEDIATEK_SOC
	---help---
	  This options enable MTK Ethernet NETSYS V2 support

config NET_MEDIATEK_HNAT
	tristate "MediaTek HW NAT support"
	depends on NET_MEDIATEK_SOC && NF_CONNTRACK && IP_NF_NAT
	---help---
	  This driver supports the hardward Network Address Translation
	  in the MediaTek MT7986/MT2701/MT7622/MT7629/MT7621 chipset
	  family.

endif #NET_VENDOR_MEDIATEK
