diff --git a/package/firmware/linux-firmware/broadcom.mk b/package/firmware/linux-firmware/broadcom.mk index eeed8ec9ce7..ee83b69c4bf 100644 --- a/package/firmware/linux-firmware/broadcom.mk +++ b/package/firmware/linux-firmware/broadcom.mk @@ -100,3 +100,12 @@ define Package/bnx2-firmware/install $(1)/lib/firmware/bnx2/ endef $(eval $(call BuildPackage,bnx2-firmware)) + +Package/bnx2x-firmware = $(call Package/firmware-default,=QLogic 5771x/578xx firmware) +define Package/bnx2x-firmware/install + $(INSTALL_DIR) $(1)/lib/firmware/bnx2x + $(INSTALL_DATA) \ + $(PKG_BUILD_DIR)/bnx2x/* \ + $(1)/lib/firmware/bnx2x/ +endef +$(eval $(call BuildPackage,bnx2x-firmware)) diff --git a/package/kernel/linux/modules/netdevices.mk b/package/kernel/linux/modules/netdevices.mk index e77ddfd5f03..3f36332ba2a 100644 --- a/package/kernel/linux/modules/netdevices.mk +++ b/package/kernel/linux/modules/netdevices.mk @@ -930,7 +930,7 @@ $(eval $(call KernelPackage,of-mdio)) define KernelPackage/vmxnet3 SUBMENU:=$(NETWORK_DEVICES_MENU) - TITLE:=VMware VMXNET3 ethernet driver + TITLE:=VMware VMXNET3 ethernet driver DEPENDS:=@PCI_SUPPORT KCONFIG:=CONFIG_VMXNET3 FILES:=$(LINUX_DIR)/drivers/net/vmxnet3/vmxnet3.ko @@ -991,3 +991,21 @@ define KernelPackage/bnx2/description endef $(eval $(call KernelPackage,bnx2)) + + +define KernelPackage/bnx2x + SUBMENU:=$(NETWORK_DEVICES_MENU) + TITLE:=QLogic 5771x/578xx 10/20-Gigabit ethernet adapter driver + DEPENDS:=@PCI_SUPPORT +bnx2x-firmware +kmod-lib-crc32c +kmod-mdio +kmod-ptp +kmod-lib-zlib-inflate + FILES:=$(LINUX_DIR)/drivers/net/ethernet/broadcom/bnx2x/bnx2x.ko + KCONFIG:= \ + CONFIG_BNX2X \ + CONFIG_BNX2X_SRIOV=y + AUTOLOAD:=$(call AutoProbe,bnx2x) +endef + +define KernelPackage/bnx2x/description + QLogic BCM57710/57711/57711E/57712/57712_MF/57800/57800_MF/57810/57810_MF/57840/57840_MF Driver +endef + +$(eval $(call KernelPackage,bnx2x)) diff --git a/target/linux/generic/config-4.14 b/target/linux/generic/config-4.14 index 8aaa54b8ff1..b299f4a7496 100644 --- a/target/linux/generic/config-4.14 +++ b/target/linux/generic/config-4.14 @@ -589,6 +589,7 @@ CONFIG_BLOCK=y # CONFIG_BNA is not set # CONFIG_BNX2 is not set # CONFIG_BNX2X is not set +# CONFIG_BNX2X_SRIOV is not set # CONFIG_BNXT is not set # CONFIG_BONDING is not set # CONFIG_BOOKE_WDT is not set diff --git a/target/linux/generic/config-4.19 b/target/linux/generic/config-4.19 index 1b2f5c8d073..6b8497be4b0 100644 --- a/target/linux/generic/config-4.19 +++ b/target/linux/generic/config-4.19 @@ -611,6 +611,7 @@ CONFIG_BLOCK=y # CONFIG_BNA is not set # CONFIG_BNX2 is not set # CONFIG_BNX2X is not set +# CONFIG_BNX2X_SRIOV is not set # CONFIG_BNXT is not set # CONFIG_BONDING is not set # CONFIG_BOOKE_WDT is not set diff --git a/target/linux/x86/config-4.14 b/target/linux/x86/config-4.14 index 014e7b275b2..1388a995b76 100644 --- a/target/linux/x86/config-4.14 +++ b/target/linux/x86/config-4.14 @@ -363,6 +363,7 @@ CONFIG_PCI_GOANY=y # CONFIG_PCI_GOBIOS is not set # CONFIG_PCI_GODIRECT is not set # CONFIG_PCI_GOMMCONFIG is not set +CONFIG_PCI_IOV=y CONFIG_PCI_LABEL=y CONFIG_PCI_LOCKLESS_CONFIG=y CONFIG_PCI_MSI=y diff --git a/target/linux/x86/config-4.19 b/target/linux/x86/config-4.19 index d8c2d966d05..316209c30c6 100644 --- a/target/linux/x86/config-4.19 +++ b/target/linux/x86/config-4.19 @@ -354,6 +354,7 @@ CONFIG_PCI_GOANY=y # CONFIG_PCI_GOBIOS is not set # CONFIG_PCI_GODIRECT is not set # CONFIG_PCI_GOMMCONFIG is not set +CONFIG_PCI_IOV=y CONFIG_PCI_LABEL=y CONFIG_PCI_LOCKLESS_CONFIG=y CONFIG_PCI_MSI=y