define KernelPackage/phylink
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Model for MAC to optional PHY connection
+ DEPENDS:=+kmod-libphy
KCONFIG:=CONFIG_PHYLINK
FILES:=$(LINUX_DIR)/drivers/net/phy/phylink.ko
AUTOLOAD:=$(call AutoLoad,15,phylink,1)
define KernelPackage/mdio-devres
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Supports MDIO device registration
- DEPENDS:=@LINUX_5_10 +kmod-libphy PACKAGE_kmod-of-mdio:kmod-of-mdio
+ DEPENDS:=+kmod-libphy +(TARGET_armsr||TARGET_bcm27xx_bcm2708||TARGET_malta||TARGET_tegra):kmod-of-mdio
KCONFIG:=CONFIG_MDIO_DEVRES
HIDDEN:=1
FILES:=$(LINUX_DIR)/drivers/net/phy/mdio_devres.ko
define KernelPackage/mdio-gpio
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:= Supports GPIO lib-based MDIO busses
- DEPENDS:=+kmod-libphy @GPIO_SUPPORT +(TARGET_armvirt||TARGET_bcm27xx_bcm2708||TARGET_tegra):kmod-of-mdio
+ DEPENDS:=+kmod-libphy @GPIO_SUPPORT +(TARGET_armsr||TARGET_bcm27xx_bcm2708||TARGET_malta||TARGET_tegra):kmod-of-mdio
KCONFIG:= \
CONFIG_MDIO_BITBANG \
CONFIG_MDIO_GPIO
FILES:= \
- $(LINUX_DIR)/drivers/net/phy/mdio-gpio.ko@lt5.10 \
- $(LINUX_DIR)/drivers/net/phy/mdio-bitbang.ko@lt5.10 \
- $(LINUX_DIR)/drivers/net/mdio/mdio-gpio.ko@ge5.10 \
- $(LINUX_DIR)/drivers/net/mdio/mdio-bitbang.ko@ge5.10
+ $(LINUX_DIR)/drivers/net/mdio/mdio-gpio.ko \
+ $(LINUX_DIR)/drivers/net/mdio/mdio-bitbang.ko
AUTOLOAD:=$(call AutoProbe,mdio-gpio)
endef
$(eval $(call KernelPackage,et131x))
+define KernelPackage/phy-microchip
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Microchip Ethernet PHY driver
+ KCONFIG:=CONFIG_MICROCHIP_PHY
+ DEPENDS:=+kmod-libphy
+ FILES:=$(LINUX_DIR)/drivers/net/phy/microchip.ko
+ AUTOLOAD:=$(call AutoLoad,18,microchip,1)
+endef
+
+define KernelPackage/phy-microchip/description
+ Supports the LAN88XX PHYs.
+endef
+
+$(eval $(call KernelPackage,phy-microchip))
+
define KernelPackage/phylib-broadcom
SUBMENU:=$(NETWORK_DEVICES_MENU)
$(eval $(call KernelPackage,phylib-broadcom))
+define KernelPackage/phy-amd
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=AMD PHY driver
+ KCONFIG:=CONFIG_AMD_PHY
+ DEPENDS:=+kmod-libphy
+ FILES:=$(LINUX_DIR)/drivers/net/phy/amd.ko
+ AUTOLOAD:=$(call AutoProbe,amd,1)
+endef
+
+define KernelPackage/phy-amd/description
+ Currently supports the AMD and Altima PHYs.
+endef
+
+$(eval $(call KernelPackage,phy-amd))
+
+
+define KernelPackage/phy-ax88796b
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Asix PHY driver
+ KCONFIG:=CONFIG_AX88796B_PHY
+ DEPENDS:=+kmod-libphy
+ FILES:=$(LINUX_DIR)/drivers/net/phy/ax88796b.ko
+ AUTOLOAD:=$(call AutoProbe,ax88796b)
+endef
+
+define KernelPackage/phy-ax88796b/description
+ Currently supports the Asix Electronics PHY found in the X-Surf 100
+ AX88796B package.
+endef
+
+$(eval $(call KernelPackage,phy-ax88796b))
+
+
define KernelPackage/phy-broadcom
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Broadcom Ethernet PHY driver
$(eval $(call KernelPackage,phy-bcm84881))
+define KernelPackage/phy-marvell
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Marvell Gigabit Ethernet PHY driver
+ KCONFIG:=CONFIG_MARVELL_PHY
+ DEPENDS:=+kmod-libphy
+ FILES:=$(LINUX_DIR)/drivers/net/phy/marvell.ko
+ AUTOLOAD:=$(call AutoLoad,18,marvell)
+endef
+
+define KernelPackage/phy-marvell/description
+ Supports Marvell Gigabit Ethernet PHYs:
+ * 88E1101
+ * 88E1112
+ * 88E1111 (incl. Finisar variant)
+ * 88E1118
+ * 88E1121R
+ * 88E1145
+ * 88E1149R
+ * 88E1240
+ * 88E1318S
+ * 88E1116R
+ * 88E1510
+ * 88E1540
+ * 88E1545
+ * 88E3016
+ * 88E6341 family
+ * 88E6390 family
+ * 88E6393 family
+ * 88E1340S
+ * 88E1548P
+endef
+
+$(eval $(call KernelPackage,phy-marvell))
+
+define KernelPackage/phy-marvell-10g
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Marvell 10 Gigabit Ethernet PHY driver
+ KCONFIG:=CONFIG_MARVELL_10G_PHY
+ DEPENDS:=+kmod-libphy
+ FILES:=$(LINUX_DIR)/drivers/net/phy/marvell10g.ko
+ AUTOLOAD:=$(call AutoLoad,18,marvell10g)
+endef
+
+define KernelPackage/phy-marvell/description
+ Supports Marvell 10 Gigabit Ethernet PHYs:
+ * 88E2110
+ * 88E2111
+ * 88x3310
+ * 88x3340
+endef
+
+$(eval $(call KernelPackage,phy-marvell-10g))
define KernelPackage/phy-realtek
SUBMENU:=$(NETWORK_DEVICES_MENU)
$(eval $(call KernelPackage,phy-realtek))
+define KernelPackage/phy-smsc
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=SMSC PHY driver
+ KCONFIG:=CONFIG_SMSC_PHY
+ DEPENDS:=+kmod-libphy
+ FILES:=$(LINUX_DIR)/drivers/net/phy/smsc.ko
+ AUTOLOAD:=$(call AutoProbe,smsc)
+endef
+
+define KernelPackage/phy-smsc/description
+ Currently supports the LAN83C185, LAN8187 and LAN8700 PHYs
+endef
+
+$(eval $(call KernelPackage,phy-smsc))
+
+
+define KernelPackage/phy-aquantia
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Aquantia Ethernet PHYs
+ DEPENDS:=+kmod-libphy +kmod-hwmon-core +kmod-lib-crc-ccitt
+ KCONFIG:=CONFIG_AQUANTIA_PHY
+ FILES:= \
+ $(LINUX_DIR)/drivers/net/phy/aquantia.ko@lt6.1 \
+ $(LINUX_DIR)/drivers/net/phy/aquantia/aquantia.ko@ge6.1
+ AUTOLOAD:=$(call AutoLoad,18,aquantia,1)
+endef
+
+define KernelPackage/phy-aquantia/description
+ Kernel modules for Aquantia Ethernet PHYs
+endef
+
+$(eval $(call KernelPackage,phy-aquantia))
+
+
define KernelPackage/swconfig
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=switch configuration API
define KernelPackage/switch-rtl8366-smi
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Realtek RTL8366 SMI switch interface support
- DEPENDS:=@GPIO_SUPPORT +kmod-swconfig +(TARGET_armvirt||TARGET_bcm27xx_bcm2708||TARGET_tegra):kmod-of-mdio
+ DEPENDS:=@GPIO_SUPPORT +kmod-swconfig +(TARGET_armsr||TARGET_bcm27xx_bcm2708||TARGET_malta||TARGET_tegra):kmod-of-mdio
KCONFIG:=CONFIG_RTL8366_SMI
FILES:=$(LINUX_DIR)/drivers/net/phy/rtl8366_smi.ko
AUTOLOAD:=$(call AutoLoad,42,rtl8366_smi,1)
DEPENDS:=+kmod-switch-rtl8366-smi
KCONFIG:=CONFIG_RTL8366RB_PHY
FILES:=$(LINUX_DIR)/drivers/net/phy/rtl8366rb.ko
- AUTOLOAD:=$(call AutoLoad,43,rtl8366rb)
+ AUTOLOAD:=$(call AutoLoad,43,rtl8366rb,1)
endef
define KernelPackage/switch-rtl8366rb/description
DEPENDS:=+kmod-switch-rtl8366-smi
KCONFIG:=CONFIG_RTL8366S_PHY
FILES:=$(LINUX_DIR)/drivers/net/phy/rtl8366s.ko
- AUTOLOAD:=$(call AutoLoad,43,rtl8366s)
+ AUTOLOAD:=$(call AutoLoad,43,rtl8366s,1)
endef
define KernelPackage/switch-rtl8366s/description
$(eval $(call KernelPackage,switch-rtl8366s))
+define KernelPackage/switch-rtl8367
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Realtek RTL8367 switch support
+ DEPENDS:=+kmod-switch-rtl8366-smi
+ KCONFIG:=CONFIG_RTL8367_PHY
+ FILES:=$(LINUX_DIR)/drivers/net/phy/rtl8367.ko
+ AUTOLOAD:=$(call AutoLoad,43,rtl8367,1)
+endef
+
+define KernelPackage/switch-rtl8367/description
+ Realtek RTL8367 switch support
+endef
+
+$(eval $(call KernelPackage,switch-rtl8367))
+
+
define KernelPackage/switch-rtl8367b
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Realtek RTL8367R/B switch support
$(eval $(call KernelPackage,switch-rtl8367b))
+define KernelPackage/switch-ar8xxx
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Atheros AR8216/8327 switch support
+ DEPENDS:=+kmod-swconfig +kmod-mdio-devres
+ KCONFIG:=CONFIG_AR8216_PHY
+ FILES:=$(LINUX_DIR)/drivers/net/phy/ar8xxx.ko
+ AUTOLOAD:=$(call AutoLoad,43,ar8xxx,1)
+endef
+
+define KernelPackage/switch-ar8xxx/description
+ Atheros AR8216/8327 switch support
+endef
+
+$(eval $(call KernelPackage,switch-ar8xxx))
+
+
define KernelPackage/natsemi
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=National Semiconductor DP8381x series
define KernelPackage/r8169
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=RealTek RTL-8169 PCI Gigabit Ethernet Adapter kernel support
- DEPENDS:=@PCI_SUPPORT +kmod-mii +r8169-firmware +kmod-phy-realtek +LINUX_5_10:kmod-mdio-devres
+ DEPENDS:=@PCI_SUPPORT +kmod-mii +r8169-firmware +kmod-phy-realtek +kmod-mdio-devres
KCONFIG:= \
CONFIG_R8169 \
CONFIG_R8169_NAPI=y \
CONFIG_IGB_HWMON=y \
CONFIG_IGB_DCA=n
FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/igb/igb.ko
- AUTOLOAD:=$(call AutoLoad,35,igb)
+ AUTOLOAD:=$(call AutoLoad,35,igb,1)
endef
define KernelPackage/igb/description
define KernelPackage/ixgbe
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Intel(R) 82598/82599 PCI-Express 10 Gigabit Ethernet support
- DEPENDS:=@PCI_SUPPORT +kmod-mdio +kmod-ptp +kmod-hwmon-core +kmod-libphy +LINUX_5_10:kmod-mdio-devres
+ DEPENDS:=@PCI_SUPPORT +kmod-mdio +kmod-ptp +kmod-hwmon-core +kmod-libphy +kmod-mdio-devres
KCONFIG:=CONFIG_IXGBE \
CONFIG_IXGBE_VXLAN=n \
CONFIG_IXGBE_HWMON=y \
TITLE:=Broadcom Tigon3 Gigabit Ethernet
KCONFIG:=CONFIG_TIGON3 \
CONFIG_TIGON3_HWMON=n
- DEPENDS:=+!TARGET_bcm47xx:kmod-libphy +kmod-ptp
+ DEPENDS:=@PCI_SUPPORT +!TARGET_bcm47xx:kmod-libphy +kmod-ptp
SUBMENU:=$(NETWORK_DEVICES_MENU)
FILES:=$(LINUX_DIR)/drivers/net/ethernet/broadcom/tg3.ko
AUTOLOAD:=$(call AutoLoad,19,tg3,1)
define KernelPackage/hfcpci
TITLE:=HFC PCI cards (single port) support for mISDN
KCONFIG:=CONFIG_MISDN_HFCPCI
- DEPENDS:=+kmod-misdn
+ DEPENDS:=@PCI_SUPPORT +kmod-misdn
SUBMENU:=$(NETWORK_DEVICES_MENU)
FILES:=$(LINUX_DIR)/drivers/isdn/hardware/mISDN/hfcpci.ko
AUTOLOAD:=$(call AutoLoad,31,hfcpci)
define KernelPackage/hfcmulti
TITLE:=HFC multiport cards (HFC-4S/8S/E1) support for mISDN
KCONFIG:=CONFIG_MISDN_HFCMULTI
- DEPENDS:=+kmod-misdn
+ DEPENDS:=@PCI_SUPPORT +kmod-misdn
SUBMENU:=$(NETWORK_DEVICES_MENU)
FILES:=$(LINUX_DIR)/drivers/isdn/hardware/mISDN/hfcmulti.ko
AUTOLOAD:=$(call AutoLoad,31,hfcmulti)
$(eval $(call KernelPackage,forcedeth))
+define KernelPackage/fixed-phy
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=MDIO Bus/PHY emulation with fixed speed/link PHYs
+ DEPENDS:=+kmod-libphy
+ KCONFIG:=CONFIG_FIXED_PHY
+ FILES:=$(LINUX_DIR)/drivers/net/phy/fixed_phy.ko
+ AUTOLOAD:=$(call AutoProbe,fixed_phy)
+endef
+
+define KernelPackage/fixed-phy/description
+ Kernel driver for "fixed" MDIO Bus to cover the boards
+ and devices that use PHYs that are not connected to the real MDIO bus.
+endef
+
+$(eval $(call KernelPackage,fixed-phy))
+
define KernelPackage/of-mdio
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=OpenFirmware MDIO support
- DEPENDS:=+kmod-libphy @!TARGET_x86
+ DEPENDS:=+kmod-libphy +kmod-fixed-phy @!TARGET_x86
KCONFIG:=CONFIG_OF_MDIO
FILES:= \
- $(LINUX_DIR)/drivers/net/phy/fixed_phy.ko \
- $(LINUX_DIR)/drivers/of/of_mdio.ko@lt5.10 \
- $(LINUX_DIR)/drivers/net/mdio/of_mdio.ko@ge5.10
+ $(LINUX_DIR)/drivers/net/mdio/of_mdio.ko \
+ $(LINUX_DIR)/drivers/net/mdio/fwnode_mdio.ko
AUTOLOAD:=$(call AutoLoad,41,of_mdio)
endef
define KernelPackage/mlx5-core
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Mellanox ConnectX(R) mlx5 core Network Driver
- DEPENDS:=@PCI_SUPPORT +kmod-ptp
+ DEPENDS:=@PCI_SUPPORT +kmod-ptp +kmod-mlxfw
FILES:=$(LINUX_DIR)/drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.ko
KCONFIG:= CONFIG_MLX5_CORE \
CONFIG_MLX5_CORE_EN=y \
CONFIG_MLX5_MPFS=y \
CONFIG_MLX5_SW_STEERING=n \
CONFIG_MLX5_TC_CT=n \
- CONFIG_MLX5_TLS=n
+ CONFIG_MLX5_TLS=n \
+ CONFIG_MLX5_VFIO_PCI=n
AUTOLOAD:=$(call AutoProbe,mlx5_core)
endef
$(eval $(call KernelPackage,mlx5-core))
+define KernelPackage/mlxfw
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Mellanox Technologies firmware flash module
+ FILES:=$(LINUX_DIR)/drivers/net/ethernet/mellanox/mlxfw/mlxfw.ko
+ KCONFIG:=CONFIG_MLXFW
+ AUTOLOAD:=$(call AutoProbe,mlxfw)
+endef
+
+define KernelPackage/mlxfw/description
+ This driver supports Mellanox Technologies Firmware
+ flashing common logic.
+endef
+
+$(eval $(call KernelPackage,mlxfw))
+
+
+define KernelPackage/mlxsw-core
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Mellanox Technologies Switch ASICs support
+ DEPENDS:=+kmod-mlxfw +kmod-hwmon-core
+ FILES:=$(LINUX_DIR)/drivers/net/ethernet/mellanox/mlxsw/mlxsw_core.ko
+ KCONFIG:= \
+ CONFIG_MLXSW_CORE \
+ CONFIG_MLXSW_CORE_HWMON=y \
+ CONFIG_MLXSW_CORE_THERMAL=y
+ AUTOLOAD:=$(call AutoProbe,mlxsw_core)
+endef
+
+define KernelPackage/mlxsw-core/description
+ This driver supports Mellanox Technologies Switch ASICs family.
+endef
+
+$(eval $(call KernelPackage,mlxsw-core))
+
+
+define KernelPackage/mlxsw-i2c
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=I2C bus implementation for Mellanox Technologies Switch ASICs
+ DEPENDS:=+kmod-mlxsw-core +kmod-i2c-core
+ FILES:=$(LINUX_DIR)/drivers/net/ethernet/mellanox/mlxsw/mlxsw_i2c.ko
+ KCONFIG:=CONFIG_MLXSW_I2C
+ AUTOLOAD:=$(call AutoProbe,mlxsw_i2c)
+endef
+
+define KernelPackage/mlxsw-i2c/description
+ This is I2C bus implementation for Mellanox Technologies Switch ASICs.
+endef
+
+$(eval $(call KernelPackage,mlxsw-i2c))
+
+
+define KernelPackage/mlxsw-minimal
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Mellanox Technologies minimal I2C support
+ DEPENDS:=+kmod-mlxsw-core +kmod-mlxsw-i2c
+ FILES:=$(LINUX_DIR)/drivers/net/ethernet/mellanox/mlxsw/mlxsw_minimal.ko
+ KCONFIG:=CONFIG_MLXSW_MINIMAL
+ AUTOLOAD:=$(call AutoProbe,mlxsw_minimal)
+endef
+
+define KernelPackage/mlxsw-minimal/description
+ This driver supports I2C access for Mellanox Technologies Switch
+ ASICs.
+endef
+
+$(eval $(call KernelPackage,mlxsw-minimal))
+
+
+define KernelPackage/mlxsw-pci
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=PCI bus implementation for Mellanox Technologies Switch ASICs
+ DEPENDS:=@PCI_SUPPORT +kmod-mlxsw-core
+ FILES:=$(LINUX_DIR)/drivers/net/ethernet/mellanox/mlxsw/mlxsw_pci.ko
+ KCONFIG:=CONFIG_MLXSW_PCI
+ AUTOLOAD:=$(call AutoProbe,mlxsw_pci)
+endef
+
+define KernelPackage/mlxsw-pci/description
+ This is PCI bus implementation for Mellanox Technologies Switch ASICs.
+endef
+
+$(eval $(call KernelPackage,mlxsw-pci))
+
+
+define KernelPackage/mlxsw-spectrum
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Mellanox Technologies Spectrum family support
+ DEPENDS:= \
+ +kmod-mlxsw-core +kmod-mlxsw-pci +kmod-lib-objagg +kmod-lib-parman \
+ +kmod-ip6-tunnel +kmod-ptp +kmod-sched-act-sample +kmod-vxlan
+ FILES:=$(LINUX_DIR)/drivers/net/ethernet/mellanox/mlxsw/mlxsw_spectrum.ko
+ KCONFIG:= \
+ CONFIG_MLXSW_SPECTRUM \
+ CONFIG_NET_SWITCHDEV=y \
+ CONFIG_MLXSW_SPECTRUM_DCB=y \
+ CONFIG_DCB=y \
+ CONFIG_AMD_XGBE_DCB=n \
+ CONFIG_IXGBE_DCB=n \
+ CONFIG_I40E_DCB=n \
+ CONFIG_QLCNIC_DCB=n \
+ CONFIG_FSL_DPAA2_ETH_DCB=n \
+ CONFIG_FSL_DPAA2_SWITCH=n
+ AUTOLOAD:=$(call AutoProbe,mlxsw_spectrum)
+endef
+
+define KernelPackage/mlxsw-spectrum/description
+ This driver supports Mellanox Technologies
+ Spectrum/Spectrum-2/Spectrum-3/Spectrum-4 Ethernet Switch ASICs.
+endef
+
+$(eval $(call KernelPackage,mlxsw-spectrum))
+
+
+define KernelPackage/net-selftests
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ DEPENDS:=+kmod-libphy
+ TITLE:=Network generic selftest support
+ KCONFIG:=CONFIG_NET_SELFTESTS
+ FILES:=$(LINUX_DIR)/net/core/selftests.ko
+ AUTOLOAD:=$(call AutoLoad,99,selftests)
+endef
+
+define KernelPackage/net-selftests/description
+ Kernel modules for the generic selftest support
+endef
+
+$(eval $(call KernelPackage,net-selftests))
+
+
define KernelPackage/qlcnic
SUBMENU:=$(NETWORK_DEVICES_MENU)
DEPENDS:=@PCI_SUPPORT +kmod-hwmon-core
TITLE:=QLogic QLE8240 and QLE8242 device support
KCONFIG:= \
CONFIG_QLCNIC \
- CONFIG_QLCNIC_HWMON=y
+ CONFIG_QLCNIC_HWMON=y \
+ CONFIG_QLCNIC_SRIOV=y
FILES:=$(LINUX_DIR)/drivers/net/ethernet/qlogic/qlcnic/qlcnic.ko
AUTOLOAD:=$(call AutoProbe,qlcnic)
endef
CONFIG_MDIO_I2C
FILES:= \
$(LINUX_DIR)/drivers/net/phy/sfp.ko \
- $(LINUX_DIR)/drivers/net/phy/mdio-i2c.ko@lt5.10 \
- $(LINUX_DIR)/drivers/net/mdio/mdio-i2c.ko@ge5.10
+ $(LINUX_DIR)/drivers/net/mdio/mdio-i2c.ko
AUTOLOAD:=$(call AutoProbe,mdio-i2c sfp)
endef
endef
$(eval $(call KernelPackage,sfc-falcon))
+
+
+define KernelPackage/wwan
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=WWAN Driver Core
+ KCONFIG:= \
+ CONFIG_WWAN \
+ CONFIG_WWAN_DEBUGFS=y@ge5.17
+ FILES:=$(LINUX_DIR)/drivers/net/wwan/wwan.ko
+ AUTOLOAD:=$(call AutoProbe,wwan)
+endef
+
+define KernelPackage/wwan/description
+ This driver provides a common framework for WWAN drivers.
+endef
+
+$(eval $(call KernelPackage,wwan))
+
+
+define KernelPackage/mhi-net
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=MHI Network Device
+ DEPENDS:=@PCI_SUPPORT +kmod-mhi-bus
+ KCONFIG:=CONFIG_MHI_NET
+ FILES:=$(LINUX_DIR)/drivers/net/mhi_net.ko
+ AUTOLOAD:=$(call AutoProbe,mhi_net)
+endef
+
+define KernelPackage/mhi-net/description
+ Driver for MHI network interface
+endef
+
+$(eval $(call KernelPackage,mhi-net))
+
+define KernelPackage/mhi-wwan-ctrl
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=MHI WWAN Control
+ DEPENDS:=@PCI_SUPPORT +kmod-mhi-bus +kmod-wwan
+ KCONFIG:=CONFIG_MHI_WWAN_CTRL
+ FILES:=$(LINUX_DIR)/drivers/net/wwan/mhi_wwan_ctrl.ko
+ AUTOLOAD:=$(call AutoProbe,mhi_wwan_ctrl)
+endef
+
+define KernelPackage/mhi-wwan-ctrl/description
+ Driver for MHI WWAN Control
+ This exposes all modem control ports like AT, MBIM, QMI, DIAG, ..
+endef
+
+$(eval $(call KernelPackage,mhi-wwan-ctrl))
+
+define KernelPackage/mhi-wwan-mbim
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=MHI MBIM
+ DEPENDS:=@PCI_SUPPORT +kmod-mhi-bus +kmod-wwan
+ KCONFIG:=CONFIG_MHI_WWAN_MBIM
+ FILES:=$(LINUX_DIR)/drivers/net/wwan/mhi_wwan_mbim.ko
+ AUTOLOAD:=$(call AutoProbe,mhi_wwan_mbim)
+endef
+
+define KernelPackage/mhi-wwan-mbim/description
+ Driver for MHI MBIM
+ This implements MBIM over MHI
+endef
+
+$(eval $(call KernelPackage,mhi-wwan-mbim))
+
+define KernelPackage/atlantic
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Aquantia AQtion 10Gbps Ethernet NIC
+ DEPENDS:=@PCI_SUPPORT +kmod-ptp +kmod-hwmon-core +kmod-macsec
+ KCONFIG:=CONFIG_AQTION
+ FILES:=$(LINUX_DIR)/drivers/net/ethernet/aquantia/atlantic/atlantic.ko
+ AUTOLOAD:=$(call AutoProbe,atlantic)
+endef
+
+define KernelPackage/atlantic/description
+ Kernel modules for Aquantia AQtion 10Gbps Ethernet NIC
+endef
+
+$(eval $(call KernelPackage,atlantic))
+
+
+define KernelPackage/lan743x
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Microchip LAN743x PCI Express Gigabit Ethernet NIC
+ DEPENDS:=@PCI_SUPPORT +kmod-ptp +kmod-mdio-devres
+ KCONFIG:=CONFIG_LAN743X
+ FILES:=$(LINUX_DIR)/drivers/net/ethernet/microchip/lan743x.ko
+ AUTOLOAD:=$(call AutoProbe,lan743x)
+endef
+
+define KernelPackage/lan743x/description
+ Kernel module for Microchip LAN743x PCI Express Gigabit Ethernet NIC
+endef
+
+$(eval $(call KernelPackage,lan743x))
+
+define KernelPackage/amazon-ena
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Elastic Network Adapter (for Amazon AWS)
+ DEPENDS:=@TARGET_x86_64||TARGET_armsr_armv8
+ KCONFIG:=CONFIG_ENA_ETHERNET
+ FILES:=$(LINUX_DIR)/drivers/net/ethernet/amazon/ena/ena.ko
+ AUTOLOAD:=$(call AutoLoad,12,ena)
+endef
+
+define KernelPackage/amazon-ena/description
+ This driver supports Elastic Network Adapter (ENA)
+ used by Amazon AWS T3 (2018) and later instances.
+endef
+
+$(eval $(call KernelPackage,amazon-ena))