Makefile 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644
  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:=2023-09-18
  9. PKG_SOURCE_VERSION:=2afc7285f75dca5a0583fd917285bf33f1429cc6
  10. PKG_MIRROR_HASH:=2c9556b298246277ac2d65415e4449f98e6d5fdb99e0d0a92262f162df772bbc
  11. PKG_MAINTAINER:=Felix Fietkau <[email protected]>
  12. PKG_USE_NINJA:=0
  13. PKG_BUILD_PARALLEL:=1
  14. PKG_CONFIG_DEPENDS += \
  15. CONFIG_PACKAGE_kmod-mt76-usb \
  16. CONFIG_PACKAGE_kmod-mt76x02-common \
  17. CONFIG_PACKAGE_kmod-mt76x0-common \
  18. CONFIG_PACKAGE_kmod-mt76x0u \
  19. CONFIG_PACKAGE_kmod-mt76x2-common \
  20. CONFIG_PACKAGE_kmod-mt76x2 \
  21. CONFIG_PACKAGE_kmod-mt76x2u \
  22. CONFIG_PACKAGE_kmod-mt7603 \
  23. CONFIG_PACKAGE_CFG80211_TESTMODE
  24. STAMP_CONFIGURED_DEPENDS := $(STAGING_DIR)/usr/include/mac80211-backport/backport/autoconf.h
  25. include $(INCLUDE_DIR)/kernel.mk
  26. include $(INCLUDE_DIR)/package.mk
  27. include $(INCLUDE_DIR)/cmake.mk
  28. CMAKE_SOURCE_DIR:=$(PKG_BUILD_DIR)/tools
  29. CMAKE_BINARY_DIR:=$(PKG_BUILD_DIR)/tools
  30. define KernelPackage/mt76-default
  31. SUBMENU:=Wireless Drivers
  32. DEPENDS:= \
  33. +kmod-mac80211 \
  34. +@DRIVER_11AC_SUPPORT \
  35. +@KERNEL_PAGE_POOL
  36. endef
  37. define KernelPackage/mt76
  38. SUBMENU:=Wireless Drivers
  39. TITLE:=MediaTek MT76x2/MT7603 wireless driver (metapackage)
  40. DEPENDS:= \
  41. +kmod-mt76-core +kmod-mt76x2 +kmod-mt7603
  42. endef
  43. define KernelPackage/mt76-core
  44. $(KernelPackage/mt76-default)
  45. TITLE:=MediaTek MT76xx wireless driver
  46. HIDDEN:=1
  47. FILES:=\
  48. $(PKG_BUILD_DIR)/mt76.ko
  49. endef
  50. define KernelPackage/mt76-usb
  51. $(KernelPackage/mt76-default)
  52. TITLE:=MediaTek MT76xx wireless driver USB support
  53. DEPENDS += +kmod-usb-core +kmod-mt76-core
  54. HIDDEN:=1
  55. FILES:=\
  56. $(PKG_BUILD_DIR)/mt76-usb.ko
  57. endef
  58. define KernelPackage/mt76x02-usb
  59. $(KernelPackage/mt76-default)
  60. TITLE:=MediaTek MT76x0/MT76x2 USB wireless driver common code
  61. DEPENDS+=+kmod-mt76-usb +kmod-mt76x02-common
  62. HIDDEN:=1
  63. FILES:=$(PKG_BUILD_DIR)/mt76x02-usb.ko
  64. endef
  65. define KernelPackage/mt76x02-common
  66. $(KernelPackage/mt76-default)
  67. TITLE:=MediaTek MT76x0/MT76x2 wireless driver common code
  68. DEPENDS+=+kmod-mt76-core
  69. HIDDEN:=1
  70. FILES:=$(PKG_BUILD_DIR)/mt76x02-lib.ko
  71. endef
  72. define KernelPackage/mt76x0-common
  73. $(KernelPackage/mt76-default)
  74. TITLE:=MediaTek MT76x0 wireless driver common code
  75. DEPENDS+=+kmod-mt76x02-common
  76. HIDDEN:=1
  77. FILES:=$(PKG_BUILD_DIR)/mt76x0/mt76x0-common.ko
  78. endef
  79. define KernelPackage/mt76x0e
  80. $(KernelPackage/mt76-default)
  81. TITLE:=MediaTek MT76x0E wireless driver
  82. DEPENDS+=@PCI_SUPPORT +kmod-mt76x0-common
  83. FILES:=\
  84. $(PKG_BUILD_DIR)/mt76x0/mt76x0e.ko
  85. AUTOLOAD:=$(call AutoProbe,mt76x0e)
  86. endef
  87. define KernelPackage/mt76x0u
  88. $(KernelPackage/mt76-default)
  89. TITLE:=MediaTek MT76x0U wireless driver
  90. DEPENDS+=+kmod-mt76x0-common +kmod-mt76x02-usb
  91. FILES:=\
  92. $(PKG_BUILD_DIR)/mt76x0/mt76x0u.ko
  93. AUTOLOAD:=$(call AutoProbe,mt76x0u)
  94. endef
  95. define KernelPackage/mt76x2-common
  96. $(KernelPackage/mt76-default)
  97. TITLE:=MediaTek MT76x2 wireless driver common code
  98. DEPENDS+=+kmod-mt76-core +kmod-mt76x02-common
  99. HIDDEN:=1
  100. FILES:=$(PKG_BUILD_DIR)/mt76x2/mt76x2-common.ko
  101. endef
  102. define KernelPackage/mt76x2u
  103. $(KernelPackage/mt76-default)
  104. TITLE:=MediaTek MT76x2U wireless driver
  105. DEPENDS+=+kmod-mt76x2-common +kmod-mt76x02-usb
  106. FILES:=\
  107. $(PKG_BUILD_DIR)/mt76x2/mt76x2u.ko
  108. AUTOLOAD:=$(call AutoProbe,mt76x2u)
  109. endef
  110. define KernelPackage/mt76x2
  111. $(KernelPackage/mt76-default)
  112. TITLE:=MediaTek MT76x2 wireless driver
  113. DEPENDS+=@PCI_SUPPORT +kmod-mt76x2-common
  114. FILES:=\
  115. $(PKG_BUILD_DIR)/mt76x2/mt76x2e.ko
  116. AUTOLOAD:=$(call AutoProbe,mt76x2e)
  117. endef
  118. define KernelPackage/mt7603
  119. $(KernelPackage/mt76-default)
  120. TITLE:=MediaTek MT7603 wireless driver
  121. DEPENDS+=@PCI_SUPPORT +kmod-mt76-core
  122. FILES:=\
  123. $(PKG_BUILD_DIR)/mt7603/mt7603e.ko
  124. AUTOLOAD:=$(call AutoProbe,mt7603e)
  125. endef
  126. define KernelPackage/mt76-connac
  127. $(KernelPackage/mt76-default)
  128. TITLE:=MediaTek MT7615/MT79xx wireless driver common code
  129. HIDDEN:=1
  130. DEPENDS+=+kmod-mt76-core
  131. FILES:= $(PKG_BUILD_DIR)/mt76-connac-lib.ko
  132. endef
  133. define KernelPackage/mt76-sdio
  134. $(KernelPackage/mt76-default)
  135. TITLE:=MediaTek MT7615/MT79xx SDIO driver common code
  136. HIDDEN:=1
  137. DEPENDS+=+kmod-mt76-core +kmod-mmc
  138. FILES:= $(PKG_BUILD_DIR)/mt76-sdio.ko
  139. endef
  140. define KernelPackage/mt7615-common
  141. $(KernelPackage/mt76-default)
  142. TITLE:=MediaTek MT7615 wireless driver common code
  143. HIDDEN:=1
  144. DEPENDS+=@PCI_SUPPORT +kmod-mt76-core +kmod-mt76-connac +kmod-hwmon-core
  145. FILES:= $(PKG_BUILD_DIR)/mt7615/mt7615-common.ko
  146. endef
  147. define KernelPackage/mt7615-firmware
  148. $(KernelPackage/mt76-default)
  149. TITLE:=MediaTek MT7615e firmware
  150. DEPENDS+=+kmod-mt7615e
  151. endef
  152. define KernelPackage/mt7615e
  153. $(KernelPackage/mt76-default)
  154. TITLE:=MediaTek MT7615e wireless driver
  155. DEPENDS+=@PCI_SUPPORT +kmod-mt7615-common
  156. FILES:= $(PKG_BUILD_DIR)/mt7615/mt7615e.ko
  157. AUTOLOAD:=$(call AutoProbe,mt7615e)
  158. endef
  159. define KernelPackage/mt7622-firmware
  160. $(KernelPackage/mt76-default)
  161. TITLE:=MediaTek MT7622 firmware
  162. DEPENDS+=+kmod-mt7615e
  163. endef
  164. define KernelPackage/mt7663-firmware-ap
  165. $(KernelPackage/mt76-default)
  166. TITLE:=MediaTek MT7663e firmware (optimized for AP)
  167. endef
  168. define KernelPackage/mt7663-firmware-sta
  169. $(KernelPackage/mt76-default)
  170. TITLE:=MediaTek MT7663e firmware (client mode offload)
  171. endef
  172. define KernelPackage/mt7663-usb-sdio
  173. $(KernelPackage/mt76-default)
  174. TITLE:=MediaTek MT7663 USB/SDIO shared code
  175. DEPENDS+=+kmod-mt7615-common
  176. HIDDEN:=1
  177. FILES:= \
  178. $(PKG_BUILD_DIR)/mt7615/mt7663-usb-sdio-common.ko
  179. endef
  180. define KernelPackage/mt7663s
  181. $(KernelPackage/mt76-default)
  182. TITLE:=MediaTek MT7663s wireless driver
  183. DEPENDS+=+kmod-mt76-sdio +kmod-mt7615-common +kmod-mt7663-usb-sdio
  184. FILES:= \
  185. $(PKG_BUILD_DIR)/mt7615/mt7663s.ko
  186. AUTOLOAD:=$(call AutoProbe,mt7663s)
  187. endef
  188. define KernelPackage/mt7663u
  189. $(KernelPackage/mt76-default)
  190. TITLE:=MediaTek MT7663u wireless driver
  191. DEPENDS+=+kmod-mt76-usb +kmod-mt7615-common +kmod-mt7663-usb-sdio
  192. FILES:= $(PKG_BUILD_DIR)/mt7615/mt7663u.ko
  193. AUTOLOAD:=$(call AutoProbe,mt7663u)
  194. endef
  195. define KernelPackage/mt7915-firmware
  196. $(KernelPackage/mt76-default)
  197. TITLE:=MediaTek MT7915 firmware
  198. DEPENDS+=+kmod-mt7915e
  199. endef
  200. define KernelPackage/mt7915e
  201. $(KernelPackage/mt76-default)
  202. TITLE:=MediaTek MT7915e wireless driver
  203. DEPENDS+=@PCI_SUPPORT +kmod-mt76-connac +kmod-hwmon-core +kmod-thermal +@DRIVER_11AX_SUPPORT +@KERNEL_RELAY
  204. FILES:= $(PKG_BUILD_DIR)/mt7915/mt7915e.ko
  205. AUTOLOAD:=$(call AutoProbe,mt7915e)
  206. endef
  207. define KernelPackage/mt7916-firmware
  208. $(KernelPackage/mt76-default)
  209. DEPENDS+=+kmod-mt7915e
  210. TITLE:=MediaTek MT7916 firmware
  211. endef
  212. define KernelPackage/mt7981-firmware
  213. $(KernelPackage/mt76-default)
  214. DEPENDS:=@TARGET_mediatek_filogic
  215. TITLE:=MediaTek MT7981 firmware
  216. endef
  217. define KernelPackage/mt7986-firmware
  218. $(KernelPackage/mt76-default)
  219. DEPENDS:=@TARGET_mediatek_filogic
  220. TITLE:=MediaTek MT7986 firmware
  221. endef
  222. define KernelPackage/mt7921-firmware
  223. $(KernelPackage/mt76-default)
  224. TITLE:=MediaTek MT7921 firmware
  225. endef
  226. define KernelPackage/mt792x-common
  227. $(KernelPackage/mt76-default)
  228. TITLE:=MediaTek MT792x wireless driver common code
  229. HIDDEN:=1
  230. DEPENDS+=+kmod-mt76-connac +@DRIVER_11AX_SUPPORT
  231. FILES:= $(PKG_BUILD_DIR)/mt792x-lib.ko
  232. endef
  233. define KernelPackage/mt792x-usb
  234. $(KernelPackage/mt76-default)
  235. TITLE:=MediaTek MT792x wireless driver USB code
  236. HIDDEN:=1
  237. DEPENDS+=+kmod-mt792x-common +kmod-mt76-usb +@DRIVER_11AX_SUPPORT
  238. FILES:= $(PKG_BUILD_DIR)/mt792x-usb.ko
  239. endef
  240. define KernelPackage/mt7921-common
  241. $(KernelPackage/mt76-default)
  242. TITLE:=MediaTek MT7921 wireless driver common code
  243. HIDDEN:=1
  244. DEPENDS+=+kmod-mt792x-common +kmod-mt7921-firmware +@DRIVER_11AX_SUPPORT +kmod-hwmon-core
  245. FILES:= $(PKG_BUILD_DIR)/mt7921/mt7921-common.ko
  246. endef
  247. define KernelPackage/mt7921u
  248. $(KernelPackage/mt76-default)
  249. TITLE:=MediaTek MT7921U wireless driver
  250. DEPENDS+=+kmod-mt792x-usb +kmod-mt7921-common
  251. FILES:= $(PKG_BUILD_DIR)/mt7921/mt7921u.ko
  252. AUTOLOAD:=$(call AutoProbe,mt7921u)
  253. endef
  254. define KernelPackage/mt7921s
  255. $(KernelPackage/mt76-default)
  256. TITLE:=MediaTek MT7921S wireless driver
  257. DEPENDS+=+kmod-mt76-sdio +kmod-mt7921-common
  258. FILES:= $(PKG_BUILD_DIR)/mt7921/mt7921s.ko
  259. AUTOLOAD:=$(call AutoProbe,mt7921s)
  260. endef
  261. define KernelPackage/mt7921e
  262. $(KernelPackage/mt76-default)
  263. TITLE:=MediaTek MT7921e wireless driver
  264. DEPENDS+=@PCI_SUPPORT +kmod-mt7921-common
  265. FILES:= $(PKG_BUILD_DIR)/mt7921/mt7921e.ko
  266. AUTOLOAD:=$(call AutoProbe,mt7921e)
  267. endef
  268. define KernelPackage/mt7996e
  269. $(KernelPackage/mt76-default)
  270. TITLE:=MediaTek MT7996E wireless driver
  271. DEPENDS+=@PCI_SUPPORT +kmod-mt76-connac
  272. FILES:= $(PKG_BUILD_DIR)/mt7996/mt7996e.ko
  273. AUTOLOAD:=$(call AutoProbe,mt7996e)
  274. endef
  275. define KernelPackage/mt7925-common
  276. $(KernelPackage/mt76-default)
  277. TITLE:=MediaTek MT7925 wireless driver common code
  278. HIDDEN:=1
  279. DEPENDS+=+kmod-mt792x-common +@DRIVER_11AX_SUPPORT +kmod-hwmon-core
  280. FILES:= $(PKG_BUILD_DIR)/mt7925/mt7925-common.ko
  281. endef
  282. define KernelPackage/mt7925u
  283. $(KernelPackage/mt76-default)
  284. TITLE:=MediaTek MT7925U wireless driver
  285. DEPENDS+=+kmod-mt792x-usb +kmod-mt7925-common
  286. FILES:= $(PKG_BUILD_DIR)/mt7925/mt7925u.ko
  287. AUTOLOAD:=$(call AutoProbe,mt7921u)
  288. endef
  289. define KernelPackage/mt7925e
  290. $(KernelPackage/mt76-default)
  291. TITLE:=MediaTek MT7925e wireless driver
  292. DEPENDS+=@PCI_SUPPORT +kmod-mt7925-common
  293. FILES:= $(PKG_BUILD_DIR)/mt7925/mt7925e.ko
  294. AUTOLOAD:=$(call AutoProbe,mt7921e)
  295. endef
  296. define Package/mt76-test
  297. SECTION:=devel
  298. CATEGORY:=Development
  299. TITLE:=mt76 testmode CLI
  300. DEPENDS:=kmod-mt76-core +libnl-tiny
  301. endef
  302. TARGET_CFLAGS += -I$(STAGING_DIR)/usr/include/libnl-tiny
  303. NOSTDINC_FLAGS := \
  304. $(KERNEL_NOSTDINC_FLAGS) \
  305. -I$(PKG_BUILD_DIR) \
  306. -I$(STAGING_DIR)/usr/include/mac80211-backport/uapi \
  307. -I$(STAGING_DIR)/usr/include/mac80211-backport \
  308. -I$(STAGING_DIR)/usr/include/mac80211/uapi \
  309. -I$(STAGING_DIR)/usr/include/mac80211 \
  310. -include backport/autoconf.h \
  311. -include backport/backport.h
  312. ifdef CONFIG_PACKAGE_MAC80211_MESH
  313. NOSTDINC_FLAGS += -DCONFIG_MAC80211_MESH
  314. endif
  315. ifdef CONFIG_PACKAGE_CFG80211_TESTMODE
  316. NOSTDINC_FLAGS += -DCONFIG_NL80211_TESTMODE
  317. PKG_MAKE_FLAGS += CONFIG_NL80211_TESTMODE=y
  318. endif
  319. ifdef CONFIG_PACKAGE_kmod-mt76-usb
  320. PKG_MAKE_FLAGS += CONFIG_MT76_USB=m
  321. endif
  322. ifdef CONFIG_PACKAGE_kmod-mt76x02-common
  323. PKG_MAKE_FLAGS += CONFIG_MT76x02_LIB=m
  324. endif
  325. ifdef CONFIG_PACKAGE_kmod-mt76x02-usb
  326. PKG_MAKE_FLAGS += CONFIG_MT76x02_USB=m
  327. endif
  328. ifdef CONFIG_PACKAGE_kmod-mt76x0-common
  329. PKG_MAKE_FLAGS += CONFIG_MT76x0_COMMON=m
  330. endif
  331. ifdef CONFIG_PACKAGE_kmod-mt76x0e
  332. PKG_MAKE_FLAGS += CONFIG_MT76x0E=m
  333. endif
  334. ifdef CONFIG_PACKAGE_kmod-mt76x0u
  335. PKG_MAKE_FLAGS += CONFIG_MT76x0U=m
  336. endif
  337. ifdef CONFIG_PACKAGE_kmod-mt76x2-common
  338. PKG_MAKE_FLAGS += CONFIG_MT76x2_COMMON=m
  339. endif
  340. ifdef CONFIG_PACKAGE_kmod-mt76x2
  341. PKG_MAKE_FLAGS += CONFIG_MT76x2E=m
  342. endif
  343. ifdef CONFIG_PACKAGE_kmod-mt76x2u
  344. PKG_MAKE_FLAGS += CONFIG_MT76x2U=m
  345. endif
  346. ifdef CONFIG_PACKAGE_kmod-mt7603
  347. PKG_MAKE_FLAGS += CONFIG_MT7603E=m
  348. endif
  349. ifdef CONFIG_PACKAGE_kmod-mt76-connac
  350. PKG_MAKE_FLAGS += CONFIG_MT76_CONNAC_LIB=m
  351. endif
  352. ifdef CONFIG_PACKAGE_kmod-mt76-sdio
  353. PKG_MAKE_FLAGS += CONFIG_MT76_SDIO=m
  354. endif
  355. ifdef CONFIG_PACKAGE_kmod-mt7615-common
  356. PKG_MAKE_FLAGS += CONFIG_MT7615_COMMON=m
  357. endif
  358. ifdef CONFIG_PACKAGE_kmod-mt7615e
  359. PKG_MAKE_FLAGS += CONFIG_MT7615E=m
  360. ifdef CONFIG_TARGET_mediatek_mt7622
  361. PKG_MAKE_FLAGS += CONFIG_MT7622_WMAC=y
  362. NOSTDINC_FLAGS += -DCONFIG_MT7622_WMAC
  363. endif
  364. endif
  365. ifdef CONFIG_PACKAGE_kmod-mt7663-usb-sdio
  366. PKG_MAKE_FLAGS += CONFIG_MT7663_USB_SDIO_COMMON=m
  367. endif
  368. ifdef CONFIG_PACKAGE_kmod-mt7663s
  369. PKG_MAKE_FLAGS += CONFIG_MT7663S=m
  370. endif
  371. ifdef CONFIG_PACKAGE_kmod-mt7663u
  372. PKG_MAKE_FLAGS += CONFIG_MT7663U=m
  373. endif
  374. ifdef CONFIG_PACKAGE_kmod-mt7915e
  375. PKG_MAKE_FLAGS += CONFIG_MT7915E=m
  376. ifdef CONFIG_TARGET_mediatek_filogic
  377. PKG_MAKE_FLAGS += CONFIG_MT798X_WMAC=y
  378. NOSTDINC_FLAGS += -DCONFIG_MT798X_WMAC
  379. endif
  380. endif
  381. ifdef CONFIG_PACKAGE_kmod-mt792x-common
  382. PKG_MAKE_FLAGS += CONFIG_MT792x_LIB=m
  383. endif
  384. ifdef CONFIG_PACKAGE_kmod-mt792x-usb
  385. PKG_MAKE_FLAGS += CONFIG_MT792x_USB=m
  386. endif
  387. ifdef CONFIG_PACKAGE_kmod-mt7921-common
  388. PKG_MAKE_FLAGS += CONFIG_MT7921_COMMON=m
  389. endif
  390. ifdef CONFIG_PACKAGE_kmod-mt7921u
  391. PKG_MAKE_FLAGS += CONFIG_MT7921U=m
  392. endif
  393. ifdef CONFIG_PACKAGE_kmod-mt7921s
  394. PKG_MAKE_FLAGS += CONFIG_MT7921S=m
  395. endif
  396. ifdef CONFIG_PACKAGE_kmod-mt7921e
  397. PKG_MAKE_FLAGS += CONFIG_MT7921E=m
  398. endif
  399. ifdef CONFIG_PACKAGE_kmod-mt7996e
  400. PKG_MAKE_FLAGS += CONFIG_MT7996E=m
  401. endif
  402. ifdef CONFIG_PACKAGE_kmod-mt7925-common
  403. PKG_MAKE_FLAGS += CONFIG_MT7925_COMMON=m
  404. endif
  405. ifdef CONFIG_PACKAGE_kmod-mt7925u
  406. PKG_MAKE_FLAGS += CONFIG_MT7925U=m
  407. endif
  408. ifdef CONFIG_PACKAGE_kmod-mt7925e
  409. PKG_MAKE_FLAGS += CONFIG_MT7925E=m
  410. endif
  411. define Build/Compile
  412. +$(KERNEL_MAKE) $(PKG_JOBS) \
  413. $(PKG_MAKE_FLAGS) \
  414. M="$(PKG_BUILD_DIR)" \
  415. NOSTDINC_FLAGS="$(NOSTDINC_FLAGS)" \
  416. modules
  417. $(MAKE) -C $(PKG_BUILD_DIR)/tools
  418. endef
  419. define Build/Install
  420. :
  421. endef
  422. define Package/kmod-mt76/install
  423. true
  424. endef
  425. define KernelPackage/mt76x0-common/install
  426. $(INSTALL_DIR) $(1)/lib/firmware/mediatek
  427. cp \
  428. $(PKG_BUILD_DIR)/firmware/mt7610e.bin \
  429. $(1)/lib/firmware/mediatek
  430. endef
  431. define KernelPackage/mt76x2-common/install
  432. $(INSTALL_DIR) $(1)/lib/firmware
  433. cp \
  434. $(PKG_BUILD_DIR)/firmware/mt7662_rom_patch.bin \
  435. $(PKG_BUILD_DIR)/firmware/mt7662.bin \
  436. $(1)/lib/firmware
  437. endef
  438. define KernelPackage/mt76x0u/install
  439. $(INSTALL_DIR) $(1)/lib/firmware/mediatek
  440. ln -sf mt7610e.bin $(1)/lib/firmware/mediatek/mt7610u.bin
  441. endef
  442. define KernelPackage/mt76x2u/install
  443. $(INSTALL_DIR) $(1)/lib/firmware/mediatek
  444. ln -sf ../mt7662.bin $(1)/lib/firmware/mediatek/mt7662u.bin
  445. ln -sf ../mt7662_rom_patch.bin $(1)/lib/firmware/mediatek/mt7662u_rom_patch.bin
  446. endef
  447. define KernelPackage/mt7603/install
  448. $(INSTALL_DIR) $(1)/lib/firmware
  449. cp $(if $(CONFIG_TARGET_ramips_mt76x8), \
  450. $(PKG_BUILD_DIR)/firmware/mt7628_e1.bin \
  451. $(PKG_BUILD_DIR)/firmware/mt7628_e2.bin \
  452. ,\
  453. $(PKG_BUILD_DIR)/firmware/mt7603_e1.bin \
  454. $(PKG_BUILD_DIR)/firmware/mt7603_e2.bin \
  455. ) \
  456. $(1)/lib/firmware
  457. endef
  458. define KernelPackage/mt7615-firmware/install
  459. $(INSTALL_DIR) $(1)/lib/firmware/mediatek
  460. cp \
  461. $(PKG_BUILD_DIR)/firmware/mt7615_cr4.bin \
  462. $(PKG_BUILD_DIR)/firmware/mt7615_n9.bin \
  463. $(PKG_BUILD_DIR)/firmware/mt7615_rom_patch.bin \
  464. $(1)/lib/firmware/mediatek
  465. endef
  466. define KernelPackage/mt7622-firmware/install
  467. $(INSTALL_DIR) $(1)/lib/firmware/mediatek
  468. cp \
  469. $(PKG_BUILD_DIR)/firmware/mt7622_n9.bin \
  470. $(PKG_BUILD_DIR)/firmware/mt7622_rom_patch.bin \
  471. $(1)/lib/firmware/mediatek
  472. endef
  473. define KernelPackage/mt7663-firmware-ap/install
  474. $(INSTALL_DIR) $(1)/lib/firmware/mediatek
  475. cp \
  476. $(PKG_BUILD_DIR)/firmware/mt7663_n9_rebb.bin \
  477. $(PKG_BUILD_DIR)/firmware/mt7663pr2h_rebb.bin \
  478. $(1)/lib/firmware/mediatek
  479. endef
  480. define KernelPackage/mt7663-firmware-sta/install
  481. $(INSTALL_DIR) $(1)/lib/firmware/mediatek
  482. cp \
  483. $(PKG_BUILD_DIR)/firmware/mt7663_n9_v3.bin \
  484. $(PKG_BUILD_DIR)/firmware/mt7663pr2h.bin \
  485. $(1)/lib/firmware/mediatek
  486. endef
  487. define KernelPackage/mt7915-firmware/install
  488. $(INSTALL_DIR) $(1)/lib/firmware/mediatek
  489. cp \
  490. $(PKG_BUILD_DIR)/firmware/mt7915_wa.bin \
  491. $(PKG_BUILD_DIR)/firmware/mt7915_wm.bin \
  492. $(PKG_BUILD_DIR)/firmware/mt7915_rom_patch.bin \
  493. $(1)/lib/firmware/mediatek
  494. endef
  495. define KernelPackage/mt7916-firmware/install
  496. $(INSTALL_DIR) $(1)/lib/firmware/mediatek
  497. cp \
  498. $(PKG_BUILD_DIR)/firmware/mt7916_wa.bin \
  499. $(PKG_BUILD_DIR)/firmware/mt7916_wm.bin \
  500. $(PKG_BUILD_DIR)/firmware/mt7916_rom_patch.bin \
  501. $(1)/lib/firmware/mediatek
  502. endef
  503. define KernelPackage/mt7981-firmware/install
  504. $(INSTALL_DIR) $(1)/lib/firmware/mediatek
  505. cp \
  506. $(PKG_BUILD_DIR)/firmware/mt7981_wa.bin \
  507. $(PKG_BUILD_DIR)/firmware/mt7981_wm.bin \
  508. $(PKG_BUILD_DIR)/firmware/mt7981_rom_patch.bin \
  509. $(1)/lib/firmware/mediatek
  510. endef
  511. define KernelPackage/mt7986-firmware/install
  512. $(INSTALL_DIR) $(1)/lib/firmware/mediatek
  513. cp \
  514. $(PKG_BUILD_DIR)/firmware/mt7986_wa.bin \
  515. $(PKG_BUILD_DIR)/firmware/mt7986_wm_mt7975.bin \
  516. $(PKG_BUILD_DIR)/firmware/mt7986_wm.bin \
  517. $(PKG_BUILD_DIR)/firmware/mt7986_rom_patch_mt7975.bin \
  518. $(PKG_BUILD_DIR)/firmware/mt7986_rom_patch.bin \
  519. $(1)/lib/firmware/mediatek
  520. endef
  521. define KernelPackage/mt7921-firmware/install
  522. $(INSTALL_DIR) $(1)/lib/firmware/mediatek
  523. cp \
  524. $(PKG_BUILD_DIR)/firmware/WIFI_MT7961_patch_mcu_1_2_hdr.bin \
  525. $(PKG_BUILD_DIR)/firmware/WIFI_RAM_CODE_MT7961_1.bin \
  526. $(1)/lib/firmware/mediatek
  527. endef
  528. define Package/mt76-test/install
  529. mkdir -p $(1)/usr/sbin
  530. $(INSTALL_BIN) $(PKG_BUILD_DIR)/tools/mt76-test $(1)/usr/sbin
  531. endef
  532. $(eval $(call KernelPackage,mt76-core))
  533. $(eval $(call KernelPackage,mt76-usb))
  534. $(eval $(call KernelPackage,mt76x02-usb))
  535. $(eval $(call KernelPackage,mt76x02-common))
  536. $(eval $(call KernelPackage,mt76x0-common))
  537. $(eval $(call KernelPackage,mt76x0e))
  538. $(eval $(call KernelPackage,mt76x0u))
  539. $(eval $(call KernelPackage,mt76x2-common))
  540. $(eval $(call KernelPackage,mt76x2u))
  541. $(eval $(call KernelPackage,mt76x2))
  542. $(eval $(call KernelPackage,mt7603))
  543. $(eval $(call KernelPackage,mt76-connac))
  544. $(eval $(call KernelPackage,mt76-sdio))
  545. $(eval $(call KernelPackage,mt7615-common))
  546. $(eval $(call KernelPackage,mt7615-firmware))
  547. $(eval $(call KernelPackage,mt7622-firmware))
  548. $(eval $(call KernelPackage,mt7615e))
  549. $(eval $(call KernelPackage,mt7663-firmware-ap))
  550. $(eval $(call KernelPackage,mt7663-firmware-sta))
  551. $(eval $(call KernelPackage,mt7663-usb-sdio))
  552. $(eval $(call KernelPackage,mt7663u))
  553. $(eval $(call KernelPackage,mt7663s))
  554. $(eval $(call KernelPackage,mt7915-firmware))
  555. $(eval $(call KernelPackage,mt7915e))
  556. $(eval $(call KernelPackage,mt7916-firmware))
  557. $(eval $(call KernelPackage,mt7981-firmware))
  558. $(eval $(call KernelPackage,mt7986-firmware))
  559. $(eval $(call KernelPackage,mt7921-firmware))
  560. $(eval $(call KernelPackage,mt792x-common))
  561. $(eval $(call KernelPackage,mt792x-usb))
  562. $(eval $(call KernelPackage,mt7921-common))
  563. $(eval $(call KernelPackage,mt7925-common))
  564. $(eval $(call KernelPackage,mt7921u))
  565. $(eval $(call KernelPackage,mt7921s))
  566. $(eval $(call KernelPackage,mt7921e))
  567. $(eval $(call KernelPackage,mt7925u))
  568. $(eval $(call KernelPackage,mt7925e))
  569. $(eval $(call KernelPackage,mt7996e))
  570. $(eval $(call KernelPackage,mt76))
  571. $(eval $(call BuildPackage,mt76-test))