mt76: add mt7986 wmac support
authorFelix Fietkau <nbd@nbd.name>
Wed, 4 May 2022 10:51:55 +0000 (12:51 +0200)
committerDaniel Golle <daniel@makrotopia.org>
Sun, 28 Aug 2022 19:33:15 +0000 (20:33 +0100)
Add firmware package for MT7986 and enable WMAC support in the driver

Signed-off-by: Felix Fietkau <nbd@nbd.name>
package/kernel/mt76/Makefile

index acd1123f1f2172b355fd13e1a7fd7403edad4215..ff58d27bc27032bf1d0b4b4478618be471bbd387 100644 (file)
@@ -226,6 +226,12 @@ define KernelPackage/mt7915e
   AUTOLOAD:=$(call AutoProbe,mt7915e)
 endef
 
+define KernelPackage/mt7986-firmware
+  $(KernelPackage/mt76-default)
+  DEPENDS:=@TARGET_mediatek_filogic
+  TITLE:=MediaTek MT7986 firmware
+endef
+
 define KernelPackage/mt7921-common
   $(KernelPackage/mt76-default)
   TITLE:=MediaTek MT7615 wireless driver common code
@@ -343,6 +349,10 @@ ifdef CONFIG_PACKAGE_kmod-mt7663u
 endif
 ifdef CONFIG_PACKAGE_kmod-mt7915e
   PKG_MAKE_FLAGS += CONFIG_MT7915E=m
+  ifdef CONFIG_TARGET_mediatek_filogic
+    PKG_MAKE_FLAGS += CONFIG_MT7986_WMAC=y
+    NOSTDINC_FLAGS += -DCONFIG_MT7986_WMAC
+  endif
 endif
 ifdef CONFIG_PACKAGE_kmod-mt7921-common
   PKG_MAKE_FLAGS += CONFIG_MT7921_COMMON=m
@@ -450,6 +460,19 @@ define KernelPackage/mt7915e/install
                $(1)/lib/firmware/mediatek
 endef
 
+define KernelPackage/mt7986-firmware/install
+       $(INSTALL_DIR) $(1)/lib/firmware/mediatek
+       cp \
+               $(PKG_BUILD_DIR)/firmware/mt7986_wa.bin \
+               $(PKG_BUILD_DIR)/firmware/mt7986_wm_mt7975.bin \
+               $(PKG_BUILD_DIR)/firmware/mt7986_wm.bin \
+               $(PKG_BUILD_DIR)/firmware/mt7986_rom_patch_mt7975.bin \
+               $(PKG_BUILD_DIR)/firmware/mt7986_rom_patch.bin \
+               $(PKG_BUILD_DIR)/firmware/mt7986_eeprom_mt7975_dual.bin \
+               $(PKG_BUILD_DIR)/firmware/mt7986_eeprom_mt7976_dual.bin \
+               $(1)/lib/firmware/mediatek
+endef
+
 define KernelPackage/mt7921e/install
        $(INSTALL_DIR) $(1)/lib/firmware/mediatek
        cp \
@@ -485,6 +508,7 @@ $(eval $(call KernelPackage,mt7663-usb-sdio))
 $(eval $(call KernelPackage,mt7663u))
 $(eval $(call KernelPackage,mt7663s))
 $(eval $(call KernelPackage,mt7915e))
+$(eval $(call KernelPackage,mt7986-firmware))
 $(eval $(call KernelPackage,mt7921-common))
 $(eval $(call KernelPackage,mt7921u))
 $(eval $(call KernelPackage,mt7921s))