1include $(TOPDIR)/rules.mk
2
3PKG_NAME:=mt76
4PKG_VERSION:=2016-06-17
5PKG_RELEASE=1
6
7PKG_LICENSE:=GPLv2
8PKG_LICENSE_FILES:=
9
10PKG_SOURCE_URL:=https://github.com/openwrt/mt76
11PKG_SOURCE_PROTO:=git
12PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
13PKG_SOURCE_VERSION:=f06ed811cda67ab2ed9932c3e87ba03229e75f4e
14PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.xz
15
16PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
17PKG_BUILD_PARALLEL:=1
18
19STAMP_CONFIGURED_DEPENDS := $(STAGING_DIR)/usr/include/mac80211-backport/backport/autoconf.h
20
21include $(INCLUDE_DIR)/kernel.mk
22include $(INCLUDE_DIR)/package.mk
23
24define KernelPackage/mt76
25  SUBMENU:=Wireless Drivers
26  TITLE:=MediaTek MT76x2/MT7603 wireless driver
27  DEPENDS:=+kmod-mac80211 +@DRIVER_11N_SUPPORT @PCI_SUPPORT
28  FILES:=\
29	$(PKG_BUILD_DIR)/mt76.ko \
30	$(PKG_BUILD_DIR)/mt76x2e.ko \
31	$(PKG_BUILD_DIR)/mt7603e.ko
32  AUTOLOAD:=$(call AutoLoad,50,mac80211 mt76 mt76x2e mt7603e)
33endef
34
35NOSTDINC_FLAGS = \
36	-I$(PKG_BUILD_DIR) \
37	-I$(STAGING_DIR)/usr/include/mac80211-backport/uapi \
38	-I$(STAGING_DIR)/usr/include/mac80211-backport \
39	-I$(STAGING_DIR)/usr/include/mac80211/uapi \
40	-I$(STAGING_DIR)/usr/include/mac80211 \
41	-include backport/autoconf.h \
42	-include backport/backport.h
43
44ifdef CONFIG_PACKAGE_MAC80211_MESH
45  NOSTDINC_FLAGS += -DCONFIG_MAC80211_MESH
46endif
47
48define Build/Compile
49	+$(MAKE) $(PKG_JOBS) -C "$(LINUX_DIR)" \
50		ARCH="$(LINUX_KARCH)" \
51		CROSS_COMPILE="$(TARGET_CROSS)" \
52		SUBDIRS="$(PKG_BUILD_DIR)" \
53		NOSTDINC_FLAGS="$(NOSTDINC_FLAGS)" \
54		modules
55endef
56
57define KernelPackage/mt76/install
58	$(INSTALL_DIR) $(1)/lib/firmware
59	cp \
60		$(if $(CONFIG_TARGET_ramips_mt7628) || $(CONFIG_TARGET_ramips_mt7688), \
61			$(PKG_BUILD_DIR)/firmware/mt7628_e1.bin \
62			$(PKG_BUILD_DIR)/firmware/mt7628_e2.bin \
63		) \
64		$(PKG_BUILD_DIR)/firmware/mt7603_e1.bin \
65		$(PKG_BUILD_DIR)/firmware/mt7603_e2.bin \
66		$(PKG_BUILD_DIR)/firmware/mt7662_rom_patch.bin \
67		$(PKG_BUILD_DIR)/firmware/mt7662.bin \
68		$(1)/lib/firmware
69endef
70
71$(eval $(call KernelPackage,mt76))
72