Makefile 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. include $(TOPDIR)/rules.mk
  2. PKG_NAME:=mt76
  3. PKG_RELEASE=1
  4. PKG_LICENSE:=GPLv2
  5. PKG_LICENSE_FILES:=
  6. PKG_SOURCE_URL:=https://github.com/openwrt/mt76
  7. PKG_SOURCE_PROTO:=git
  8. PKG_SOURCE_DATE:=2017-10-12
  9. PKG_SOURCE_VERSION:=37654d704772512065cd28b007342758c2a0f14a
  10. PKG_MIRROR_HASH:=487ca40ed4e1ffe015dabc76c0a84782602d84f5b08c9c86cc6c892cb499623b
  11. PKG_MAINTAINER:=Felix Fietkau <[email protected]>
  12. PKG_BUILD_PARALLEL:=1
  13. STAMP_CONFIGURED_DEPENDS := $(STAGING_DIR)/usr/include/mac80211-backport/backport/autoconf.h
  14. include $(INCLUDE_DIR)/kernel.mk
  15. include $(INCLUDE_DIR)/package.mk
  16. define KernelPackage/mt76-default
  17. SUBMENU:=Wireless Drivers
  18. DEPENDS:= \
  19. +kmod-mac80211 @PCI_SUPPORT @!LINUX_3_18 \
  20. +@DRIVER_11AC_SUPPORT +@DRIVER_11N_SUPPORT +@DRIVER_11W_SUPPORT
  21. endef
  22. define KernelPackage/mt76
  23. SUBMENU:=Wireless Drivers
  24. TITLE:=MediaTek MT76x2/MT7603 wireless driver (metapackage)
  25. DEPENDS:= \
  26. +kmod-mt76-core +kmod-mt76x2 +kmod-mt7603
  27. endef
  28. define KernelPackage/mt76-core
  29. $(KernelPackage/mt76-default)
  30. TITLE:=MediaTek MT76xx wireless driver
  31. FILES:=\
  32. $(PKG_BUILD_DIR)/mt76.ko
  33. endef
  34. define KernelPackage/mt76x2
  35. $(KernelPackage/mt76-default)
  36. TITLE:=MediaTek MT76x2 wireless driver
  37. DEPENDS+=+kmod-mt76-core
  38. FILES:=\
  39. $(PKG_BUILD_DIR)/mt76x2e.ko
  40. AUTOLOAD:=$(call AutoProbe,mt76x2e)
  41. endef
  42. define KernelPackage/mt7603
  43. $(KernelPackage/mt76-default)
  44. TITLE:=MediaTek MT7603 wireless driver
  45. DEPENDS+=+kmod-mt76-core
  46. FILES:=\
  47. $(PKG_BUILD_DIR)/mt7603e.ko
  48. AUTOLOAD:=$(call AutoProbe,mt7603e)
  49. endef
  50. NOSTDINC_FLAGS = \
  51. -I$(PKG_BUILD_DIR) \
  52. -I$(STAGING_DIR)/usr/include/mac80211-backport/uapi \
  53. -I$(STAGING_DIR)/usr/include/mac80211-backport \
  54. -I$(STAGING_DIR)/usr/include/mac80211/uapi \
  55. -I$(STAGING_DIR)/usr/include/mac80211 \
  56. -include backport/autoconf.h \
  57. -include backport/backport.h
  58. ifdef CONFIG_PACKAGE_MAC80211_MESH
  59. NOSTDINC_FLAGS += -DCONFIG_MAC80211_MESH
  60. endif
  61. define Build/Compile
  62. +$(MAKE) $(PKG_JOBS) -C "$(LINUX_DIR)" \
  63. $(KERNEL_MAKE_FLAGS) \
  64. SUBDIRS="$(PKG_BUILD_DIR)" \
  65. NOSTDINC_FLAGS="$(NOSTDINC_FLAGS)" \
  66. modules
  67. endef
  68. define Package/kmod-mt76/install
  69. true
  70. endef
  71. define KernelPackage/mt76x2/install
  72. $(INSTALL_DIR) $(1)/lib/firmware
  73. cp \
  74. $(PKG_BUILD_DIR)/firmware/mt7662_rom_patch.bin \
  75. $(PKG_BUILD_DIR)/firmware/mt7662.bin \
  76. $(1)/lib/firmware
  77. endef
  78. define KernelPackage/mt7603/install
  79. $(INSTALL_DIR) $(1)/lib/firmware
  80. cp $(if $(CONFIG_TARGET_ramips_mt76x8), \
  81. $(PKG_BUILD_DIR)/firmware/mt7628_e1.bin \
  82. $(PKG_BUILD_DIR)/firmware/mt7628_e2.bin \
  83. ,\
  84. $(PKG_BUILD_DIR)/firmware/mt7603_e1.bin \
  85. $(PKG_BUILD_DIR)/firmware/mt7603_e2.bin \
  86. ) \
  87. $(1)/lib/firmware
  88. endef
  89. $(eval $(call KernelPackage,mt76-core))
  90. $(eval $(call KernelPackage,mt76x2))
  91. $(eval $(call KernelPackage,mt7603))
  92. $(eval $(call KernelPackage,mt76))