b.liu | e958203 | 2025-04-17 19:18:16 +0800 | [diff] [blame] | 1 | # |
| 2 | # Copyright (C) 2014-2016 OpenWrt.org |
| 3 | # |
| 4 | # This is free software, licensed under the GNU General Public License v2. |
| 5 | # See /LICENSE for more information. |
| 6 | # |
| 7 | |
| 8 | include $(TOPDIR)/rules.mk |
| 9 | |
| 10 | PKG_NAME:=mwlwifi |
| 11 | PKG_RELEASE=2 |
| 12 | |
| 13 | PKG_LICENSE:=ISC |
| 14 | PKG_LICENSE_FILES:= |
| 15 | |
| 16 | PKG_SOURCE_URL:=https://github.com/kaloz/mwlwifi |
| 17 | PKG_SOURCE_PROTO:=git |
| 18 | PKG_SOURCE_DATE:=2020-02-06 |
| 19 | PKG_SOURCE_VERSION:=a2fd00bb74c35820dfe233d762690c0433a87ef5 |
| 20 | PKG_MIRROR_HASH:=0eda0e774a87e58e611d6436350e1cf2be3de50fddde334909a07a15b0c9862b |
| 21 | |
| 22 | PKG_MAINTAINER:=Imre Kaloz <kaloz@openwrt.org> |
| 23 | PKG_BUILD_PARALLEL:=1 |
| 24 | PKG_FLAGS:=nonshared |
| 25 | |
| 26 | include $(INCLUDE_DIR)/kernel.mk |
| 27 | include $(INCLUDE_DIR)/package.mk |
| 28 | |
| 29 | define KernelPackage/mwlwifi |
| 30 | SUBMENU:=Wireless Drivers |
| 31 | TITLE:=Marvell 88W8864/88W8897/88W8964/88W8997 wireless driver |
| 32 | DEPENDS:=+kmod-mac80211 +@DRIVER_11N_SUPPORT +@DRIVER_11AC_SUPPORT @PCI_SUPPORT @TARGET_mvebu |
| 33 | FILES:=$(PKG_BUILD_DIR)/mwlwifi.ko |
| 34 | AUTOLOAD:=$(call AutoLoad,50,mwlwifi) |
| 35 | endef |
| 36 | |
| 37 | NOSTDINC_FLAGS := \ |
| 38 | $(KERNEL_NOSTDINC_FLAGS) \ |
| 39 | -I$(PKG_BUILD_DIR) \ |
| 40 | -I$(STAGING_DIR)/usr/include/mac80211-backport/uapi \ |
| 41 | -I$(STAGING_DIR)/usr/include/mac80211-backport \ |
| 42 | -I$(STAGING_DIR)/usr/include/mac80211/uapi \ |
| 43 | -I$(STAGING_DIR)/usr/include/mac80211 \ |
| 44 | -include backport/backport.h |
| 45 | |
| 46 | define Build/Compile |
| 47 | +$(MAKE) $(PKG_JOBS) -C "$(LINUX_DIR)" \ |
| 48 | $(KERNEL_MAKE_FLAGS) \ |
| 49 | M="$(PKG_BUILD_DIR)" \ |
| 50 | NOSTDINC_FLAGS="$(NOSTDINC_FLAGS)" \ |
| 51 | modules |
| 52 | endef |
| 53 | |
| 54 | define Package/mwlwifi-firmware-default |
| 55 | SECTION:=firmware |
| 56 | CATEGORY:=Firmware |
| 57 | TITLE:=Marvell $(1) firmware |
| 58 | DEPENDS:=+kmod-mwlwifi @TARGET_mvebu |
| 59 | endef |
| 60 | |
| 61 | define Package/mwlwifi-firmware/install |
| 62 | $(INSTALL_DIR) $(1)/lib/firmware |
| 63 | $(INSTALL_DIR) $(1)/lib/firmware/mwlwifi |
| 64 | $(CP) $(PKG_BUILD_DIR)/bin/firmware/$(2) $(1)/lib/firmware/mwlwifi/ |
| 65 | $(CP) $(PKG_BUILD_DIR)/bin/firmware/Marvell_license.txt $(1)/lib/firmware/mwlwifi/$(2).Marvell_license.txt |
| 66 | endef |
| 67 | |
| 68 | define Package/mwlwifi-firmware-88w8864 |
| 69 | $(call Package/mwlwifi-firmware-default,88W8864) |
| 70 | endef |
| 71 | |
| 72 | define Package/mwlwifi-firmware-88w8864/install |
| 73 | $(call Package/mwlwifi-firmware/install,$(1),88W8864.bin) |
| 74 | endef |
| 75 | |
| 76 | define Package/mwlwifi-firmware-88w8897 |
| 77 | $(call Package/mwlwifi-firmware-default,88W8897) |
| 78 | endef |
| 79 | |
| 80 | define Package/mwlwifi-firmware-88w8897/install |
| 81 | $(call Package/mwlwifi-firmware/install,$(1),88W8897.bin) |
| 82 | endef |
| 83 | |
| 84 | define Package/mwlwifi-firmware-88w8964 |
| 85 | $(call Package/mwlwifi-firmware-default,88W8964) |
| 86 | endef |
| 87 | |
| 88 | define Package/mwlwifi-firmware-88w8964/install |
| 89 | $(call Package/mwlwifi-firmware/install,$(1),88W8964.bin) |
| 90 | endef |
| 91 | |
| 92 | define Package/mwlwifi-firmware-88w8997 |
| 93 | $(call Package/mwlwifi-firmware-default,88W8997) |
| 94 | endef |
| 95 | |
| 96 | define Package/mwlwifi-firmware-88w8997/install |
| 97 | $(call Package/mwlwifi-firmware/install,$(1),88W8997.bin) |
| 98 | endef |
| 99 | |
| 100 | $(eval $(call KernelPackage,mwlwifi)) |
| 101 | $(eval $(call BuildPackage,mwlwifi-firmware-88w8864)) |
| 102 | $(eval $(call BuildPackage,mwlwifi-firmware-88w8897)) |
| 103 | $(eval $(call BuildPackage,mwlwifi-firmware-88w8964)) |
| 104 | $(eval $(call BuildPackage,mwlwifi-firmware-88w8997)) |