filogic.mk 55 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483
  1. DTS_DIR := $(DTS_DIR)/mediatek
  2. define Image/Prepare
  3. # For UBI we want only one extra block
  4. rm -f $(KDIR)/ubi_mark
  5. echo -ne '\xde\xad\xc0\xde' > $(KDIR)/ubi_mark
  6. endef
  7. define Build/mt7981-bl2
  8. cat $(STAGING_DIR_IMAGE)/mt7981-$1-bl2.img >> $@
  9. endef
  10. define Build/mt7981-bl31-uboot
  11. cat $(STAGING_DIR_IMAGE)/mt7981_$1-u-boot.fip >> $@
  12. endef
  13. define Build/mt7986-bl2
  14. cat $(STAGING_DIR_IMAGE)/mt7986-$1-bl2.img >> $@
  15. endef
  16. define Build/mt7986-bl31-uboot
  17. cat $(STAGING_DIR_IMAGE)/mt7986_$1-u-boot.fip >> $@
  18. endef
  19. define Build/mt7988-bl2
  20. cat $(STAGING_DIR_IMAGE)/mt7988-$1-bl2.img >> $@
  21. endef
  22. define Build/mt7988-bl31-uboot
  23. cat $(STAGING_DIR_IMAGE)/mt7988_$1-u-boot.fip >> $@
  24. endef
  25. define Build/mt798x-gpt
  26. cp $@ [email protected] 2>/dev/null || true
  27. ptgen -g -o [email protected] -a 1 -l 1024 \
  28. $(if $(findstring sdmmc,$1), \
  29. -H \
  30. -t 0x83 -N bl2 -r -p 4079k@17k \
  31. ) \
  32. -t 0x83 -N ubootenv -r -p 512k@4M \
  33. -t 0x83 -N factory -r -p 2M@4608k \
  34. -t 0xef -N fip -r -p 4M@6656k \
  35. -N recovery -r -p 32M@12M \
  36. $(if $(findstring sdmmc,$1), \
  37. -N install -r -p 20M@44M \
  38. -t 0x2e -N production -p $(CONFIG_TARGET_ROOTFS_PARTSIZE)M@64M \
  39. ) \
  40. $(if $(findstring emmc,$1), \
  41. -t 0x2e -N production -p $(CONFIG_TARGET_ROOTFS_PARTSIZE)M@64M \
  42. )
  43. cat [email protected] >> $@
  44. rm [email protected]
  45. endef
  46. metadata_gl_json = \
  47. '{ $(if $(IMAGE_METADATA),$(IMAGE_METADATA)$(comma)) \
  48. "metadata_version": "1.1", \
  49. "compat_version": "$(call json_quote,$(compat_version))", \
  50. $(if $(DEVICE_COMPAT_MESSAGE),"compat_message": "$(call json_quote,$(DEVICE_COMPAT_MESSAGE))"$(comma)) \
  51. $(if $(filter-out 1.0,$(compat_version)),"new_supported_devices": \
  52. [$(call metadata_devices,$(SUPPORTED_DEVICES))]$(comma) \
  53. "supported_devices": ["$(call json_quote,$(legacy_supported_message))"]$(comma)) \
  54. $(if $(filter 1.0,$(compat_version)),"supported_devices":[$(call metadata_devices,$(SUPPORTED_DEVICES))]$(comma)) \
  55. "version": { \
  56. "release": "$(call json_quote,$(VERSION_NUMBER))", \
  57. "date": "$(shell TZ='Asia/Chongqing' date '+%Y%m%d%H%M%S')", \
  58. "dist": "$(call json_quote,$(VERSION_DIST))", \
  59. "version": "$(call json_quote,$(VERSION_NUMBER))", \
  60. "revision": "$(call json_quote,$(REVISION))", \
  61. "target": "$(call json_quote,$(TARGETID))", \
  62. "board": "$(call json_quote,$(if $(BOARD_NAME),$(BOARD_NAME),$(DEVICE_NAME)))" \
  63. } \
  64. }'
  65. define Build/append-gl-metadata
  66. $(if $(SUPPORTED_DEVICES),-echo $(call metadata_gl_json,$(SUPPORTED_DEVICES)) | fwtool -I - $@)
  67. sha256sum "$@" | cut -d" " -f1 > "[email protected]"
  68. [ ! -s "$(BUILD_KEY)" -o ! -s "$(BUILD_KEY).ucert" -o ! -s "$@" ] || { \
  69. cp "$(BUILD_KEY).ucert" "[email protected]" ;\
  70. usign -S -m "$@" -s "$(BUILD_KEY)" -x "[email protected]" ;\
  71. ucert -A -c "[email protected]" -x "[email protected]" ;\
  72. fwtool -S "[email protected]" "$@" ;\
  73. }
  74. endef
  75. define Build/zyxel-nwa-fit-filogic
  76. $(TOPDIR)/scripts/mkits-zyxel-fit-filogic.sh \
  77. [email protected] $@ "80 e1 ff ff ff ff ff ff ff ff"
  78. PATH=$(LINUX_DIR)/scripts/dtc:$(PATH) mkimage -f [email protected] [email protected]
  79. @mv [email protected] $@
  80. endef
  81. define Build/cetron-header
  82. $(eval magic=$(word 1,$(1)))
  83. $(eval model=$(word 2,$(1)))
  84. ( \
  85. dd if=/dev/zero bs=856 count=1 2>/dev/null; \
  86. printf "$(model)," | dd bs=128 count=1 conv=sync 2>/dev/null; \
  87. md5sum $@ | cut -f1 -d" " | dd bs=32 count=1 2>/dev/null; \
  88. printf "$(magic)" | dd bs=4 count=1 conv=sync 2>/dev/null; \
  89. cat $@; \
  90. ) > [email protected]
  91. fw_crc=$$(gzip -c [email protected] | tail -c 8 | od -An -N4 -tx4 --endian little | tr -d ' \n'); \
  92. printf "$$(echo $$fw_crc | sed 's/../\\x&/g')" | cat - [email protected] > $@
  93. rm [email protected]
  94. endef
  95. define Device/abt_asr3000
  96. DEVICE_VENDOR := ABT
  97. DEVICE_MODEL := ASR3000
  98. DEVICE_DTS := mt7981b-abt-asr3000
  99. DEVICE_DTS_DIR := ../dts
  100. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware
  101. UBINIZE_OPTS := -E 5
  102. BLOCKSIZE := 128k
  103. PAGESIZE := 2048
  104. KERNEL_IN_UBI := 1
  105. UBOOTENV_IN_UBI := 1
  106. IMAGES := sysupgrade.itb
  107. KERNEL_INITRAMFS_SUFFIX := -recovery.itb
  108. KERNEL := kernel-bin | gzip
  109. KERNEL_INITRAMFS := kernel-bin | lzma | \
  110. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
  111. IMAGE/sysupgrade.itb := append-kernel | \
  112. fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | append-metadata
  113. ARTIFACTS := preloader.bin bl31-uboot.fip
  114. ARTIFACT/preloader.bin := mt7981-bl2 spim-nand-ddr3
  115. ARTIFACT/bl31-uboot.fip := mt7981-bl31-uboot abt_asr3000
  116. endef
  117. TARGET_DEVICES += abt_asr3000
  118. define Device/acelink_ew-7886cax
  119. DEVICE_VENDOR := Acelink
  120. DEVICE_MODEL := EW-7886CAX
  121. DEVICE_DTS := mt7986a-acelink-ew-7886cax
  122. DEVICE_DTS_DIR := ../dts
  123. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7986-firmware mt7986-wo-firmware
  124. UBINIZE_OPTS := -E 5
  125. BLOCKSIZE := 128k
  126. PAGESIZE := 2048
  127. IMAGE_SIZE := 65536k
  128. KERNEL_IN_UBI := 1
  129. IMAGES += factory.bin
  130. IMAGE/factory.bin := append-ubi | check-size $$$$(IMAGE_SIZE)
  131. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  132. endef
  133. TARGET_DEVICES += acelink_ew-7886cax
  134. define Device/acer_predator-w6
  135. DEVICE_VENDOR := Acer
  136. DEVICE_MODEL := Predator W6
  137. DEVICE_DTS := mt7986a-acer-predator-w6
  138. DEVICE_DTS_DIR := ../dts
  139. DEVICE_DTS_LOADADDR := 0x47000000
  140. DEVICE_PACKAGES := kmod-usb3 kmod-mt7915e kmod-mt7916-firmware kmod-mt7986-firmware mt7986-wo-firmware e2fsprogs f2fsck mkf2fs
  141. IMAGES := sysupgrade.bin
  142. KERNEL := kernel-bin | lzma | fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
  143. KERNEL_INITRAMFS := kernel-bin | lzma | \
  144. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
  145. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  146. endef
  147. TARGET_DEVICES += acer_predator-w6
  148. define Device/adtran_smartrg
  149. DEVICE_VENDOR := Adtran
  150. DEVICE_DTS_DIR := ../dts
  151. DEVICE_PACKAGES := e2fsprogs f2fsck mkf2fs kmod-hwmon-pwmfan
  152. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  153. endef
  154. define Device/smartrg_sdg-8612
  155. $(call Device/adtran_smartrg)
  156. DEVICE_MODEL := SDG-8612
  157. DEVICE_DTS := mt7986a-smartrg-SDG-8612
  158. DEVICE_PACKAGES += kmod-mt7915e kmod-mt7986-firmware mt7986-wo-firmware
  159. endef
  160. TARGET_DEVICES += smartrg_sdg-8612
  161. define Device/smartrg_sdg-8614
  162. $(call Device/adtran_smartrg)
  163. DEVICE_MODEL := SDG-8614
  164. DEVICE_DTS := mt7986a-smartrg-SDG-8614
  165. DEVICE_PACKAGES += kmod-mt7915e kmod-mt7986-firmware mt7986-wo-firmware
  166. endef
  167. TARGET_DEVICES += smartrg_sdg-8614
  168. define Device/smartrg_sdg-8622
  169. $(call Device/adtran_smartrg)
  170. DEVICE_MODEL := SDG-8622
  171. DEVICE_DTS := mt7986a-smartrg-SDG-8622
  172. DEVICE_PACKAGES += kmod-mt7915e kmod-mt7915-firmware kmod-mt7986-firmware mt7986-wo-firmware
  173. endef
  174. TARGET_DEVICES += smartrg_sdg-8622
  175. define Device/smartrg_sdg-8632
  176. $(call Device/adtran_smartrg)
  177. DEVICE_MODEL := SDG-8632
  178. DEVICE_DTS := mt7986a-smartrg-SDG-8632
  179. DEVICE_PACKAGES += kmod-mt7915e kmod-mt7915-firmware kmod-mt7986-firmware mt7986-wo-firmware
  180. endef
  181. TARGET_DEVICES += smartrg_sdg-8632
  182. define Device/smartrg_sdg-8733
  183. $(call Device/adtran_smartrg)
  184. DEVICE_MODEL := SDG-8733
  185. DEVICE_DTS := mt7988a-smartrg-SDG-8733
  186. DEVICE_PACKAGES += kmod-mt7996-firmware kmod-phy-aquantia kmod-usb3
  187. endef
  188. TARGET_DEVICES += smartrg_sdg-8733
  189. define Device/smartrg_sdg-8734
  190. $(call Device/adtran_smartrg)
  191. DEVICE_MODEL := SDG-8734
  192. DEVICE_DTS := mt7988a-smartrg-SDG-8734
  193. DEVICE_PACKAGES += kmod-mt7996-firmware kmod-phy-aquantia kmod-sfp kmod-usb3
  194. endef
  195. TARGET_DEVICES += smartrg_sdg-8734
  196. define Device/asus_rt-ax59u
  197. DEVICE_VENDOR := ASUS
  198. DEVICE_MODEL := RT-AX59U
  199. DEVICE_DTS := mt7986a-asus-rt-ax59u
  200. DEVICE_DTS_DIR := ../dts
  201. DEVICE_PACKAGES := kmod-usb3 kmod-mt7915e kmod-mt7986-firmware mt7986-wo-firmware
  202. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  203. endef
  204. TARGET_DEVICES += asus_rt-ax59u
  205. define Device/asus_tuf-ax4200
  206. DEVICE_VENDOR := ASUS
  207. DEVICE_MODEL := TUF-AX4200
  208. DEVICE_DTS := mt7986a-asus-tuf-ax4200
  209. DEVICE_DTS_DIR := ../dts
  210. DEVICE_DTS_LOADADDR := 0x47000000
  211. DEVICE_PACKAGES := kmod-usb3 kmod-mt7915e kmod-mt7986-firmware mt7986-wo-firmware
  212. IMAGES := sysupgrade.bin
  213. KERNEL := kernel-bin | lzma | \
  214. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
  215. KERNEL_INITRAMFS := kernel-bin | lzma | \
  216. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
  217. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  218. endef
  219. TARGET_DEVICES += asus_tuf-ax4200
  220. define Device/asus_tuf-ax6000
  221. DEVICE_VENDOR := ASUS
  222. DEVICE_MODEL := TUF-AX6000
  223. DEVICE_DTS := mt7986a-asus-tuf-ax6000
  224. DEVICE_DTS_DIR := ../dts
  225. DEVICE_DTS_LOADADDR := 0x47000000
  226. DEVICE_PACKAGES := kmod-usb3 kmod-mt7915e kmod-mt7986-firmware mt7986-wo-firmware
  227. IMAGES := sysupgrade.bin
  228. KERNEL := kernel-bin | lzma | \
  229. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
  230. KERNEL_INITRAMFS := kernel-bin | lzma | \
  231. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
  232. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  233. endef
  234. TARGET_DEVICES += asus_tuf-ax6000
  235. define Device/bananapi_bpi-r3
  236. DEVICE_VENDOR := Bananapi
  237. DEVICE_MODEL := BPi-R3
  238. DEVICE_DTS := mt7986a-bananapi-bpi-r3
  239. DEVICE_DTS_CONFIG := config-mt7986a-bananapi-bpi-r3
  240. DEVICE_DTS_OVERLAY:= mt7986a-bananapi-bpi-r3-emmc mt7986a-bananapi-bpi-r3-nand \
  241. mt7986a-bananapi-bpi-r3-nor mt7986a-bananapi-bpi-r3-sd \
  242. mt7986a-bananapi-bpi-r3-respeaker-2mics
  243. DEVICE_DTS_DIR := $(DTS_DIR)/
  244. DEVICE_DTS_LOADADDR := 0x43f00000
  245. DEVICE_PACKAGES := kmod-hwmon-pwmfan kmod-i2c-gpio kmod-mt7915e kmod-mt7986-firmware kmod-sfp kmod-usb3 \
  246. e2fsprogs f2fsck mkf2fs mt7986-wo-firmware
  247. IMAGES := sysupgrade.itb
  248. KERNEL_LOADADDR := 0x44000000
  249. KERNEL_INITRAMFS_SUFFIX := -recovery.itb
  250. ARTIFACTS := \
  251. emmc-preloader.bin emmc-bl31-uboot.fip \
  252. nor-preloader.bin nor-bl31-uboot.fip \
  253. sdcard.img.gz \
  254. snand-preloader.bin snand-bl31-uboot.fip
  255. ARTIFACT/emmc-preloader.bin := mt7986-bl2 emmc-ddr4
  256. ARTIFACT/emmc-bl31-uboot.fip := mt7986-bl31-uboot bananapi_bpi-r3-emmc
  257. ARTIFACT/nor-preloader.bin := mt7986-bl2 nor-ddr4
  258. ARTIFACT/nor-bl31-uboot.fip := mt7986-bl31-uboot bananapi_bpi-r3-nor
  259. ARTIFACT/snand-preloader.bin := mt7986-bl2 spim-nand-ubi-ddr4
  260. ARTIFACT/snand-bl31-uboot.fip := mt7986-bl31-uboot bananapi_bpi-r3-snand
  261. ARTIFACT/sdcard.img.gz := mt798x-gpt sdmmc |\
  262. pad-to 17k | mt7986-bl2 sdmmc-ddr4 |\
  263. pad-to 6656k | mt7986-bl31-uboot bananapi_bpi-r3-sdmmc |\
  264. $(if $(CONFIG_TARGET_ROOTFS_INITRAMFS),\
  265. pad-to 12M | append-image-stage initramfs-recovery.itb | check-size 44m |\
  266. ) \
  267. pad-to 44M | mt7986-bl2 spim-nand-ubi-ddr4 |\
  268. pad-to 45M | mt7986-bl31-uboot bananapi_bpi-r3-snand |\
  269. pad-to 49M | mt7986-bl2 nor-ddr4 |\
  270. pad-to 50M | mt7986-bl31-uboot bananapi_bpi-r3-nor |\
  271. pad-to 51M | mt7986-bl2 emmc-ddr4 |\
  272. pad-to 52M | mt7986-bl31-uboot bananapi_bpi-r3-emmc |\
  273. pad-to 56M | mt798x-gpt emmc |\
  274. $(if $(CONFIG_TARGET_ROOTFS_SQUASHFS),\
  275. pad-to 64M | append-image squashfs-sysupgrade.itb | check-size |\
  276. ) \
  277. gzip
  278. ifeq ($(DUMP),)
  279. IMAGE_SIZE := $$(shell expr 64 + $$(CONFIG_TARGET_ROOTFS_PARTSIZE))m
  280. endif
  281. KERNEL := kernel-bin | gzip
  282. KERNEL_INITRAMFS := kernel-bin | lzma | \
  283. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
  284. IMAGE/sysupgrade.itb := append-kernel | fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | pad-rootfs | append-metadata
  285. DEVICE_DTC_FLAGS := --pad 4096
  286. DEVICE_COMPAT_VERSION := 1.2
  287. DEVICE_COMPAT_MESSAGE := SPI-NAND flash layout changes require bootloader update
  288. endef
  289. TARGET_DEVICES += bananapi_bpi-r3
  290. define Device/bananapi_bpi-r3-mini
  291. DEVICE_VENDOR := Bananapi
  292. DEVICE_MODEL := BPi-R3 Mini
  293. DEVICE_DTS := mt7986a-bananapi-bpi-r3-mini
  294. DEVICE_DTS_CONFIG := config-mt7986a-bananapi-bpi-r3-mini
  295. DEVICE_DTS_DIR := ../dts
  296. DEVICE_DTS_LOADADDR := 0x43f00000
  297. DEVICE_PACKAGES := kmod-hwmon-pwmfan kmod-mt7915e kmod-mt7986-firmware kmod-phy-airoha-en8811h \
  298. kmod-usb3 e2fsprogs f2fsck mkf2fs mt7986-wo-firmware
  299. KERNEL_LOADADDR := 0x44000000
  300. KERNEL := kernel-bin | gzip
  301. KERNEL_INITRAMFS := kernel-bin | lzma | \
  302. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
  303. KERNEL_INITRAMFS_SUFFIX := -recovery.itb
  304. BLOCKSIZE := 128k
  305. PAGESIZE := 2048
  306. KERNEL_IN_UBI := 1
  307. UBOOTENV_IN_UBI := 1
  308. IMAGES := snand-factory.bin sysupgrade.itb
  309. ifeq ($(DUMP),)
  310. IMAGE_SIZE := $$(shell expr 64 + $$(CONFIG_TARGET_ROOTFS_PARTSIZE))m
  311. endif
  312. IMAGE/sysupgrade.itb := append-kernel | \
  313. fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | \
  314. pad-rootfs | append-metadata
  315. ARTIFACTS := \
  316. emmc-gpt.bin emmc-preloader.bin emmc-bl31-uboot.fip \
  317. snand-factory.bin snand-preloader.bin snand-bl31-uboot.fip
  318. ARTIFACT/emmc-gpt.bin := mt798x-gpt emmc
  319. ARTIFACT/emmc-preloader.bin := mt7986-bl2 emmc-ddr4
  320. ARTIFACT/emmc-bl31-uboot.fip := mt7986-bl31-uboot bananapi_bpi-r3-mini-emmc
  321. ARTIFACT/snand-factory.bin := mt7986-bl2 spim-nand-ubi-ddr4 | pad-to 256k | \
  322. mt7986-bl2 spim-nand-ubi-ddr4 | pad-to 512k | \
  323. mt7986-bl2 spim-nand-ubi-ddr4 | pad-to 768k | \
  324. mt7986-bl2 spim-nand-ubi-ddr4 | pad-to 2048k | \
  325. ubinize-image fit squashfs-sysupgrade.itb
  326. ARTIFACT/snand-preloader.bin := mt7986-bl2 spim-nand-ubi-ddr4
  327. ARTIFACT/snand-bl31-uboot.fip := mt7986-bl31-uboot bananapi_bpi-r3-mini-snand
  328. UBINIZE_PARTS := fip=:$(STAGING_DIR_IMAGE)/mt7986_bananapi_bpi-r3-mini-snand-u-boot.fip
  329. ifneq ($(CONFIG_PACKAGE_airoha-en8811h-firmware),)
  330. UBINIZE_PARTS += en8811h-fw=:$(STAGING_DIR_IMAGE)/EthMD32.bin
  331. endif
  332. endef
  333. TARGET_DEVICES += bananapi_bpi-r3-mini
  334. define Device/bananapi_bpi-r4-common
  335. DEVICE_VENDOR := Bananapi
  336. DEVICE_DTS_DIR := $(DTS_DIR)/
  337. DEVICE_DTS_LOADADDR := 0x45f00000
  338. DEVICE_DTS_OVERLAY:= mt7988a-bananapi-bpi-r4-emmc mt7988a-bananapi-bpi-r4-rtc mt7988a-bananapi-bpi-r4-sd mt7988a-bananapi-bpi-r4-wifi-mt7996a
  339. DEVICE_DTC_FLAGS := --pad 4096
  340. DEVICE_PACKAGES := kmod-hwmon-pwmfan kmod-i2c-mux-pca954x kmod-eeprom-at24 kmod-mt7996-firmware \
  341. kmod-rtc-pcf8563 kmod-sfp kmod-usb3 e2fsprogs f2fsck mkf2fs
  342. IMAGES := sysupgrade.itb
  343. KERNEL_LOADADDR := 0x46000000
  344. KERNEL_INITRAMFS_SUFFIX := -recovery.itb
  345. ARTIFACTS := \
  346. emmc-preloader.bin emmc-bl31-uboot.fip \
  347. sdcard.img.gz \
  348. snand-preloader.bin snand-bl31-uboot.fip
  349. ARTIFACT/emmc-preloader.bin := mt7988-bl2 emmc-comb
  350. ARTIFACT/emmc-bl31-uboot.fip := mt7988-bl31-uboot $$(DEVICE_NAME)-emmc
  351. ARTIFACT/snand-preloader.bin := mt7988-bl2 spim-nand-ubi-comb
  352. ARTIFACT/snand-bl31-uboot.fip := mt7988-bl31-uboot $$(DEVICE_NAME)-snand
  353. ARTIFACT/sdcard.img.gz := mt798x-gpt sdmmc |\
  354. pad-to 17k | mt7988-bl2 sdmmc-comb |\
  355. pad-to 6656k | mt7988-bl31-uboot $$(DEVICE_NAME)-sdmmc |\
  356. $(if $(CONFIG_TARGET_ROOTFS_INITRAMFS),\
  357. pad-to 12M | append-image-stage initramfs-recovery.itb | check-size 44m |\
  358. ) \
  359. pad-to 44M | mt7988-bl2 spim-nand-ubi-comb |\
  360. pad-to 45M | mt7988-bl31-uboot $$(DEVICE_NAME)-snand |\
  361. pad-to 51M | mt7988-bl2 emmc-comb |\
  362. pad-to 52M | mt7988-bl31-uboot $$(DEVICE_NAME)-emmc |\
  363. pad-to 56M | mt798x-gpt emmc |\
  364. $(if $(CONFIG_TARGET_ROOTFS_SQUASHFS),\
  365. pad-to 64M | append-image squashfs-sysupgrade.itb | check-size |\
  366. ) \
  367. gzip
  368. IMAGE_SIZE := $$(shell expr 64 + $$(CONFIG_TARGET_ROOTFS_PARTSIZE))m
  369. KERNEL := kernel-bin | gzip
  370. KERNEL_INITRAMFS := kernel-bin | lzma | \
  371. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
  372. IMAGE/sysupgrade.itb := append-kernel | fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-with-rootfs | pad-rootfs | append-metadata
  373. endef
  374. define Device/bananapi_bpi-r4
  375. DEVICE_MODEL := BPi-R4
  376. DEVICE_DTS := mt7988a-bananapi-bpi-r4
  377. DEVICE_DTS_CONFIG := config-mt7988a-bananapi-bpi-r4
  378. $(call Device/bananapi_bpi-r4-common)
  379. endef
  380. TARGET_DEVICES += bananapi_bpi-r4
  381. define Device/bananapi_bpi-r4-poe
  382. DEVICE_MODEL := BPi-R4 2.5GE
  383. DEVICE_DTS := mt7988a-bananapi-bpi-r4-poe
  384. DEVICE_DTS_CONFIG := config-mt7988a-bananapi-bpi-r4-poe
  385. $(call Device/bananapi_bpi-r4-common)
  386. DEVICE_PACKAGES += mt7988-2p5g-phy-firmware
  387. endef
  388. TARGET_DEVICES += bananapi_bpi-r4-poe
  389. define Device/cetron_ct3003
  390. DEVICE_VENDOR := Cetron
  391. DEVICE_MODEL := CT3003
  392. DEVICE_DTS := mt7981b-cetron-ct3003
  393. DEVICE_DTS_DIR := ../dts
  394. SUPPORTED_DEVICES += mediatek,mt7981-spim-snand-rfb
  395. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware
  396. UBINIZE_OPTS := -E 5
  397. BLOCKSIZE := 128k
  398. PAGESIZE := 2048
  399. KERNEL_IN_UBI := 1
  400. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  401. IMAGES += factory.bin
  402. IMAGE/factory.bin := $$(IMAGE/sysupgrade.bin) | cetron-header rd30 CT3003
  403. endef
  404. TARGET_DEVICES += cetron_ct3003
  405. define Device/cmcc_rax3000m
  406. DEVICE_VENDOR := CMCC
  407. DEVICE_MODEL := RAX3000M
  408. DEVICE_DTS := mt7981b-cmcc-rax3000m
  409. DEVICE_DTS_OVERLAY := mt7981b-cmcc-rax3000m-emmc mt7981b-cmcc-rax3000m-nand
  410. DEVICE_DTS_DIR := ../dts
  411. DEVICE_DTC_FLAGS := --pad 4096
  412. DEVICE_DTS_LOADADDR := 0x43f00000
  413. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware kmod-usb3 \
  414. e2fsprogs f2fsck mkf2fs
  415. KERNEL_LOADADDR := 0x44000000
  416. KERNEL := kernel-bin | gzip
  417. KERNEL_INITRAMFS := kernel-bin | lzma | \
  418. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
  419. KERNEL_INITRAMFS_SUFFIX := -recovery.itb
  420. KERNEL_IN_UBI := 1
  421. UBOOTENV_IN_UBI := 1
  422. IMAGES := sysupgrade.itb
  423. IMAGE_SIZE := $$(shell expr 64 + $$(CONFIG_TARGET_ROOTFS_PARTSIZE))m
  424. IMAGE/sysupgrade.itb := append-kernel | \
  425. fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | \
  426. pad-rootfs | append-metadata
  427. ARTIFACTS := \
  428. emmc-gpt.bin emmc-preloader.bin emmc-bl31-uboot.fip \
  429. nand-preloader.bin nand-bl31-uboot.fip
  430. ARTIFACT/emmc-gpt.bin := mt798x-gpt emmc
  431. ARTIFACT/emmc-preloader.bin := mt7981-bl2 emmc-ddr4
  432. ARTIFACT/emmc-bl31-uboot.fip := mt7981-bl31-uboot cmcc_rax3000m-emmc
  433. ARTIFACT/nand-preloader.bin := mt7981-bl2 spim-nand-ddr4
  434. ARTIFACT/nand-bl31-uboot.fip := mt7981-bl31-uboot cmcc_rax3000m-nand
  435. endef
  436. TARGET_DEVICES += cmcc_rax3000m
  437. define Device/comfast_cf-e393ax
  438. DEVICE_VENDOR := COMFAST
  439. DEVICE_MODEL := CF-E393AX
  440. DEVICE_DTS := mt7981a-comfast-cf-e393ax
  441. DEVICE_DTS_DIR := ../dts
  442. DEVICE_DTC_FLAGS := --pad 4096
  443. DEVICE_DTS_LOADADDR := 0x43f00000
  444. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware
  445. KERNEL_LOADADDR := 0x44000000
  446. KERNEL = kernel-bin | lzma | \
  447. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
  448. KERNEL_INITRAMFS = kernel-bin | lzma | \
  449. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd
  450. UBINIZE_OPTS := -E 5
  451. BLOCKSIZE := 128k
  452. PAGESIZE := 2048
  453. IMAGE_SIZE := 65536k
  454. KERNEL_IN_UBI := 1
  455. IMAGES := sysupgrade.bin factory.bin
  456. IMAGE/factory.bin := append-ubi | check-size $$$$(IMAGE_SIZE)
  457. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  458. endef
  459. TARGET_DEVICES += comfast_cf-e393ax
  460. define Device/confiabits_mt7981
  461. DEVICE_VENDOR := Confiabits
  462. DEVICE_MODEL := MT7981
  463. DEVICE_DTS := mt7981b-confiabits-mt7981
  464. DEVICE_DTS_DIR := ../dts
  465. SUPPORTED_DEVICES += mediatek,mt7981-spim-snand-2500wan-gmac2-rfb
  466. UBINIZE_OPTS := -E 5
  467. BLOCKSIZE := 128k
  468. PAGESIZE := 2048
  469. IMAGE_SIZE := 65536k
  470. KERNEL_IN_UBI := 1
  471. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  472. DEVICE_PACKAGES := kmod-usb3 kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware
  473. endef
  474. TARGET_DEVICES += confiabits_mt7981
  475. define Device/cudy_m3000-v1
  476. DEVICE_VENDOR := Cudy
  477. DEVICE_MODEL := M3000
  478. DEVICE_VARIANT := v1
  479. DEVICE_DTS := mt7981b-cudy-m3000-v1
  480. DEVICE_DTS_DIR := ../dts
  481. SUPPORTED_DEVICES += R37
  482. DEVICE_DTS_LOADADDR := 0x44000000
  483. BLOCKSIZE := 128k
  484. PAGESIZE := 2048
  485. IMAGE_SIZE := 65536k
  486. KERNEL_IN_UBI := 1
  487. KERNEL := kernel-bin | lzma | \
  488. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
  489. KERNEL_INITRAMFS := kernel-bin | lzma | \
  490. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
  491. IMAGES := sysupgrade.bin
  492. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  493. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware
  494. endef
  495. TARGET_DEVICES += cudy_m3000-v1
  496. define Device/cudy_re3000-v1
  497. DEVICE_VENDOR := Cudy
  498. DEVICE_MODEL := RE3000
  499. DEVICE_VARIANT := v1
  500. DEVICE_DTS := mt7981b-cudy-re3000-v1
  501. DEVICE_DTS_DIR := ../dts
  502. DEVICE_DTS_LOADADDR := 0x47000000
  503. IMAGES := sysupgrade.bin
  504. IMAGE_SIZE := 15424k
  505. SUPPORTED_DEVICES += R36
  506. KERNEL := kernel-bin | lzma | \
  507. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
  508. KERNEL_INITRAMFS := kernel-bin | lzma | \
  509. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
  510. IMAGE/sysupgrade.bin := append-kernel | pad-to 128k | append-rootfs | pad-rootfs | check-size | append-metadata
  511. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware
  512. endef
  513. TARGET_DEVICES += cudy_re3000-v1
  514. define Device/cudy_tr3000-v1
  515. DEVICE_VENDOR := Cudy
  516. DEVICE_MODEL := TR3000
  517. DEVICE_VARIANT := v1
  518. DEVICE_DTS := mt7981b-cudy-tr3000-v1
  519. DEVICE_DTS_DIR := ../dts
  520. SUPPORTED_DEVICES += R47
  521. UBINIZE_OPTS := -E 5
  522. BLOCKSIZE := 128k
  523. PAGESIZE := 2048
  524. IMAGE_SIZE := 65536k
  525. KERNEL_IN_UBI := 1
  526. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  527. DEVICE_PACKAGES := kmod-usb3 kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware
  528. endef
  529. TARGET_DEVICES += cudy_tr3000-v1
  530. define Device/cudy_wr3000-v1
  531. DEVICE_VENDOR := Cudy
  532. DEVICE_MODEL := WR3000
  533. DEVICE_VARIANT := v1
  534. DEVICE_DTS := mt7981b-cudy-wr3000-v1
  535. DEVICE_DTS_DIR := ../dts
  536. DEVICE_DTS_LOADADDR := 0x47000000
  537. IMAGES := sysupgrade.bin
  538. IMAGE_SIZE := 15424k
  539. SUPPORTED_DEVICES += R31
  540. KERNEL := kernel-bin | lzma | \
  541. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
  542. KERNEL_INITRAMFS := kernel-bin | lzma | \
  543. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
  544. IMAGE/sysupgrade.bin := append-kernel | pad-to 128k | append-rootfs | pad-rootfs | check-size | append-metadata
  545. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware
  546. endef
  547. TARGET_DEVICES += cudy_wr3000-v1
  548. define Device/dlink_aquila-pro-ai-m30-a1
  549. DEVICE_VENDOR := D-Link
  550. DEVICE_MODEL := AQUILA PRO AI M30
  551. DEVICE_VARIANT := A1
  552. DEVICE_DTS := mt7981b-dlink-aquila-pro-ai-m30-a1
  553. DEVICE_DTS_DIR := ../dts
  554. DEVICE_PACKAGES := kmod-leds-gca230718 kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware
  555. KERNEL_IN_UBI := 1
  556. IMAGES += recovery.bin
  557. IMAGE_SIZE := 51200k
  558. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  559. IMAGE/recovery.bin := sysupgrade-tar | pad-to $$(IMAGE_SIZE) | dlink-ai-recovery-header DLK6E6110001 \x6A\x28\xEE\x0B \x00\x00\x2C\x00 \x00\x00\x20\x03 \x61\x6E
  560. endef
  561. TARGET_DEVICES += dlink_aquila-pro-ai-m30-a1
  562. define Device/edgecore_eap111
  563. DEVICE_VENDOR := Edgecore
  564. DEVICE_MODEL := EAP111
  565. DEVICE_DTS := mt7981a-edgecore-eap111
  566. DEVICE_DTS_DIR := ../dts
  567. DEVICE_DTS_LOADADDR := 0x47000000
  568. BLOCKSIZE := 128k
  569. PAGESIZE := 2048
  570. UBINIZE_OPTS := -E 5
  571. KERNEL_IN_UBI := 1
  572. IMAGE_SIZE := 65536k
  573. IMAGES := sysupgrade.bin factory.bin
  574. IMAGE/factory.bin := append-ubi | check-size $$$$(IMAGE_SIZE)
  575. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  576. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware
  577. endef
  578. TARGET_DEVICES += edgecore_eap111
  579. define Device/glinet_gl-mt2500
  580. DEVICE_VENDOR := GL.iNet
  581. DEVICE_MODEL := GL-MT2500
  582. DEVICE_DTS := mt7981b-glinet-gl-mt2500
  583. DEVICE_DTS_DIR := ../dts
  584. DEVICE_DTS_LOADADDR := 0x47000000
  585. DEVICE_PACKAGES := -wpad-basic-mbedtls e2fsprogs f2fsck mkf2fs kmod-usb3
  586. SUPPORTED_DEVICES += glinet,mt2500-emmc
  587. IMAGES := sysupgrade.bin
  588. IMAGE/sysupgrade.bin := sysupgrade-tar | append-gl-metadata
  589. endef
  590. TARGET_DEVICES += glinet_gl-mt2500
  591. define Device/glinet_gl-mt3000
  592. DEVICE_VENDOR := GL.iNet
  593. DEVICE_MODEL := GL-MT3000
  594. DEVICE_DTS := mt7981b-glinet-gl-mt3000
  595. DEVICE_DTS_DIR := ../dts
  596. SUPPORTED_DEVICES += glinet,mt3000-snand
  597. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware kmod-hwmon-pwmfan kmod-usb3
  598. UBINIZE_OPTS := -E 5
  599. BLOCKSIZE := 128k
  600. PAGESIZE := 2048
  601. IMAGE_SIZE := 246272k
  602. KERNEL_IN_UBI := 1
  603. IMAGE/sysupgrade.bin := sysupgrade-tar | append-gl-metadata
  604. endef
  605. TARGET_DEVICES += glinet_gl-mt3000
  606. define Device/glinet_gl-mt6000
  607. DEVICE_VENDOR := GL.iNet
  608. DEVICE_MODEL := GL-MT6000
  609. DEVICE_DTS := mt7986a-glinet-gl-mt6000
  610. DEVICE_DTS_DIR := ../dts
  611. DEVICE_PACKAGES := e2fsprogs f2fsck mkf2fs kmod-usb3 kmod-mt7915e kmod-mt7986-firmware mt7986-wo-firmware
  612. IMAGES += factory.bin
  613. IMAGE/factory.bin := append-kernel | pad-to 32M | append-rootfs
  614. IMAGE/sysupgrade.bin := sysupgrade-tar | append-gl-metadata
  615. ARTIFACTS := preloader.bin bl31-uboot.fip
  616. ARTIFACT/preloader.bin := mt7986-bl2 emmc-ddr4
  617. ARTIFACT/bl31-uboot.fip := mt7986-bl31-uboot glinet_gl-mt6000
  618. endef
  619. TARGET_DEVICES += glinet_gl-mt6000
  620. define Device/glinet_gl-x3000-xe3000-common
  621. DEVICE_VENDOR := GL.iNet
  622. DEVICE_DTS_DIR := ../dts
  623. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware mkf2fs \
  624. kmod-fs-f2fs kmod-hwmon-pwmfan kmod-usb3 kmod-usb-serial-option \
  625. kmod-usb-storage kmod-usb-net-qmi-wwan uqmi
  626. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  627. endef
  628. define Device/glinet_gl-x3000
  629. DEVICE_MODEL := GL-X3000
  630. DEVICE_DTS := mt7981a-glinet-gl-x3000
  631. SUPPORTED_DEVICES := glinet,gl-x3000
  632. $(call Device/glinet_gl-x3000-xe3000-common)
  633. endef
  634. TARGET_DEVICES += glinet_gl-x3000
  635. define Device/glinet_gl-xe3000
  636. DEVICE_MODEL := GL-XE3000
  637. DEVICE_DTS := mt7981a-glinet-gl-xe3000
  638. SUPPORTED_DEVICES := glinet,gl-xe3000
  639. $(call Device/glinet_gl-x3000-xe3000-common)
  640. endef
  641. TARGET_DEVICES += glinet_gl-xe3000
  642. define Device/h3c_magic-nx30-pro
  643. DEVICE_VENDOR := H3C
  644. DEVICE_MODEL := Magic NX30 Pro
  645. DEVICE_DTS := mt7981b-h3c-magic-nx30-pro
  646. DEVICE_DTS_DIR := ../dts
  647. UBINIZE_OPTS := -E 5
  648. BLOCKSIZE := 128k
  649. PAGESIZE := 2048
  650. KERNEL_IN_UBI := 1
  651. UBOOTENV_IN_UBI := 1
  652. IMAGE_SIZE := 65536k
  653. IMAGES := sysupgrade.itb
  654. KERNEL_INITRAMFS_SUFFIX := -recovery.itb
  655. KERNEL := kernel-bin | gzip
  656. KERNEL_INITRAMFS := kernel-bin | lzma | \
  657. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
  658. IMAGE/sysupgrade.itb := append-kernel | \
  659. fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | append-metadata
  660. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware
  661. ARTIFACTS := preloader.bin bl31-uboot.fip
  662. ARTIFACT/preloader.bin := mt7981-bl2 spim-nand-ddr3
  663. ARTIFACT/bl31-uboot.fip := mt7981-bl31-uboot h3c_magic-nx30-pro
  664. endef
  665. TARGET_DEVICES += h3c_magic-nx30-pro
  666. define Device/jcg_q30-pro
  667. DEVICE_VENDOR := JCG
  668. DEVICE_MODEL := Q30 PRO
  669. DEVICE_DTS := mt7981b-jcg-q30-pro
  670. DEVICE_DTS_DIR := ../dts
  671. UBINIZE_OPTS := -E 5
  672. BLOCKSIZE := 128k
  673. PAGESIZE := 2048
  674. KERNEL_IN_UBI := 1
  675. UBOOTENV_IN_UBI := 1
  676. IMAGES := sysupgrade.itb
  677. KERNEL_INITRAMFS_SUFFIX := -recovery.itb
  678. KERNEL := kernel-bin | gzip
  679. KERNEL_INITRAMFS := kernel-bin | lzma | \
  680. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
  681. IMAGE/sysupgrade.itb := append-kernel | \
  682. fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | append-metadata
  683. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware
  684. ARTIFACTS := preloader.bin bl31-uboot.fip
  685. ARTIFACT/preloader.bin := mt7981-bl2 spim-nand-ddr3
  686. ARTIFACT/bl31-uboot.fip := mt7981-bl31-uboot jcg_q30-pro
  687. endef
  688. TARGET_DEVICES += jcg_q30-pro
  689. define Device/jdcloud_re-cp-03
  690. DEVICE_VENDOR := JDCloud
  691. DEVICE_MODEL := RE-CP-03
  692. DEVICE_DTS := mt7986a-jdcloud-re-cp-03
  693. DEVICE_DTS_DIR := ../dts
  694. DEVICE_DTC_FLAGS := --pad 4096
  695. DEVICE_DTS_LOADADDR := 0x43f00000
  696. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7986-firmware mt7986-wo-firmware \
  697. e2fsprogs f2fsck mkf2fs
  698. KERNEL_LOADADDR := 0x44000000
  699. KERNEL := kernel-bin | gzip
  700. KERNEL_INITRAMFS := kernel-bin | lzma | \
  701. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
  702. KERNEL_INITRAMFS_SUFFIX := -recovery.itb
  703. IMAGES := sysupgrade.itb
  704. IMAGE_SIZE := $$(shell expr 64 + $$(CONFIG_TARGET_ROOTFS_PARTSIZE))m
  705. IMAGE/sysupgrade.itb := append-kernel | \
  706. fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | \
  707. pad-rootfs | append-metadata
  708. ARTIFACTS :=gpt.bin preloader.bin bl31-uboot.fip
  709. ARTIFACT/gpt.bin := mt798x-gpt emmc
  710. ARTIFACT/preloader.bin := mt7986-bl2 emmc-ddr4
  711. ARTIFACT/bl31-uboot.fip := mt7986-bl31-uboot jdcloud_re-cp-03
  712. endef
  713. TARGET_DEVICES += jdcloud_re-cp-03
  714. define Device/mediatek_mt7981-rfb
  715. DEVICE_VENDOR := MediaTek
  716. DEVICE_MODEL := MT7981 rfb
  717. DEVICE_DTS := mt7981-rfb
  718. DEVICE_DTS_OVERLAY:= \
  719. mt7981-rfb-spim-nand \
  720. mt7981-rfb-mxl-2p5g-phy-eth1 \
  721. mt7981-rfb-mxl-2p5g-phy-swp5
  722. DEVICE_DTS_DIR := $(DTS_DIR)/
  723. DEVICE_DTC_FLAGS := --pad 4096
  724. DEVICE_DTS_LOADADDR := 0x43f00000
  725. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware kmod-usb3 e2fsprogs f2fsck mkf2fs mt7981-wo-firmware
  726. KERNEL_LOADADDR := 0x44000000
  727. KERNEL := kernel-bin | gzip
  728. KERNEL_INITRAMFS := kernel-bin | lzma | \
  729. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
  730. KERNEL_INITRAMFS_SUFFIX := .itb
  731. KERNEL_IN_UBI := 1
  732. UBOOTENV_IN_UBI := 1
  733. IMAGES := sysupgrade.itb
  734. IMAGE_SIZE := $$(shell expr 64 + $$(CONFIG_TARGET_ROOTFS_PARTSIZE))m
  735. IMAGE/sysupgrade.itb := append-kernel | fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-with-rootfs | pad-rootfs | append-metadata
  736. ARTIFACTS := \
  737. emmc-preloader.bin emmc-bl31-uboot.fip \
  738. nor-preloader.bin nor-bl31-uboot.fip \
  739. sdcard.img.gz \
  740. snfi-nand-preloader.bin snfi-nand-bl31-uboot.fip \
  741. spim-nand-preloader.bin spim-nand-bl31-uboot.fip
  742. ARTIFACT/emmc-preloader.bin := mt7981-bl2 emmc-ddr3
  743. ARTIFACT/emmc-bl31-uboot.fip := mt7981-bl31-uboot rfb-emmc
  744. ARTIFACT/nor-preloader.bin := mt7981-bl2 nor-ddr3
  745. ARTIFACT/nor-bl31-uboot.fip := mt7981-bl31-uboot rfb-emmc
  746. ARTIFACT/snfi-nand-preloader.bin := mt7981-bl2 snand-ddr3
  747. ARTIFACT/snfi-nand-bl31-uboot.fip := mt7981-bl31-uboot rfb-snfi
  748. ARTIFACT/spim-nand-preloader.bin := mt7981-bl2 spim-nand-ddr3
  749. ARTIFACT/spim-nand-bl31-uboot.fip := mt7981-bl31-uboot rfb-spim-nand
  750. ARTIFACT/sdcard.img.gz := mt798x-gpt sdmmc |\
  751. pad-to 17k | mt7981-bl2 sdmmc-ddr3 |\
  752. pad-to 6656k | mt7981-bl31-uboot rfb-sd |\
  753. $(if $(CONFIG_TARGET_ROOTFS_INITRAMFS),\
  754. pad-to 12M | append-image-stage initramfs.itb | check-size 44m |\
  755. ) \
  756. pad-to 44M | mt7981-bl2 spim-nand-ddr3 |\
  757. pad-to 45M | mt7981-bl31-uboot rfb-spim-nand |\
  758. pad-to 49M | mt7981-bl2 nor-ddr3 |\
  759. pad-to 50M | mt7981-bl31-uboot rfb-nor |\
  760. pad-to 51M | mt7981-bl2 snand-ddr3 |\
  761. pad-to 53M | mt7981-bl31-uboot rfb-snfi |\
  762. $(if $(CONFIG_TARGET_ROOTFS_SQUASHFS),\
  763. pad-to 64M | append-image squashfs-sysupgrade.itb | check-size |\
  764. ) \
  765. gzip
  766. endef
  767. TARGET_DEVICES += mediatek_mt7981-rfb
  768. define Device/mediatek_mt7986a-rfb-nand
  769. DEVICE_VENDOR := MediaTek
  770. DEVICE_MODEL := MT7986 rfba AP (NAND)
  771. DEVICE_DTS := mt7986a-rfb-spim-nand
  772. DEVICE_DTS_DIR := $(DTS_DIR)/
  773. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7986-firmware mt7986-wo-firmware
  774. SUPPORTED_DEVICES := mediatek,mt7986a-rfb-snand
  775. UBINIZE_OPTS := -E 5
  776. BLOCKSIZE := 128k
  777. PAGESIZE := 2048
  778. IMAGE_SIZE := 65536k
  779. KERNEL_IN_UBI := 1
  780. IMAGES += factory.bin
  781. IMAGE/factory.bin := append-ubi | check-size $$$$(IMAGE_SIZE)
  782. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  783. KERNEL = kernel-bin | lzma | \
  784. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
  785. KERNEL_INITRAMFS = kernel-bin | lzma | \
  786. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd
  787. endef
  788. TARGET_DEVICES += mediatek_mt7986a-rfb-nand
  789. define Device/mediatek_mt7986b-rfb
  790. DEVICE_VENDOR := MediaTek
  791. DEVICE_MODEL := MTK7986 rfbb AP
  792. DEVICE_DTS := mt7986b-rfb
  793. DEVICE_DTS_DIR := $(DTS_DIR)/
  794. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7986-firmware mt7986-wo-firmware
  795. SUPPORTED_DEVICES := mediatek,mt7986b-rfb
  796. UBINIZE_OPTS := -E 5
  797. BLOCKSIZE := 128k
  798. PAGESIZE := 2048
  799. IMAGE_SIZE := 65536k
  800. KERNEL_IN_UBI := 1
  801. IMAGES += factory.bin
  802. IMAGE/factory.bin := append-ubi | check-size $$$$(IMAGE_SIZE)
  803. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  804. endef
  805. TARGET_DEVICES += mediatek_mt7986b-rfb
  806. define Device/mediatek_mt7988a-rfb
  807. DEVICE_VENDOR := MediaTek
  808. DEVICE_MODEL := MT7988A rfb
  809. DEVICE_DTS := mt7988a-rfb
  810. DEVICE_DTS_OVERLAY:= \
  811. mt7988a-rfb-emmc \
  812. mt7988a-rfb-sd \
  813. mt7988a-rfb-snfi-nand \
  814. mt7988a-rfb-spim-nand \
  815. mt7988a-rfb-spim-nand-factory \
  816. mt7988a-rfb-spim-nor \
  817. mt7988a-rfb-eth1-aqr \
  818. mt7988a-rfb-eth1-i2p5g-phy \
  819. mt7988a-rfb-eth1-mxl \
  820. mt7988a-rfb-eth1-sfp \
  821. mt7988a-rfb-eth2-aqr \
  822. mt7988a-rfb-eth2-mxl \
  823. mt7988a-rfb-eth2-sfp
  824. DEVICE_DTS_DIR := $(DTS_DIR)/
  825. DEVICE_DTC_FLAGS := --pad 4096
  826. DEVICE_DTS_LOADADDR := 0x45f00000
  827. DEVICE_PACKAGES := mt7988-2p5g-phy-firmware kmod-sfp
  828. KERNEL_LOADADDR := 0x46000000
  829. KERNEL := kernel-bin | gzip
  830. KERNEL_INITRAMFS := kernel-bin | lzma | \
  831. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
  832. KERNEL_INITRAMFS_SUFFIX := .itb
  833. KERNEL_IN_UBI := 1
  834. IMAGE_SIZE := $$(shell expr 64 + $$(CONFIG_TARGET_ROOTFS_PARTSIZE))m
  835. IMAGES := sysupgrade.itb
  836. IMAGE/sysupgrade.itb := append-kernel | fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-with-rootfs | pad-rootfs | append-metadata
  837. ARTIFACTS := \
  838. emmc-gpt.bin emmc-preloader.bin emmc-bl31-uboot.fip \
  839. nor-preloader.bin nor-bl31-uboot.fip \
  840. sdcard.img.gz \
  841. snand-preloader.bin snand-bl31-uboot.fip
  842. ARTIFACT/emmc-gpt.bin := mt798x-gpt emmc
  843. ARTIFACT/emmc-preloader.bin := mt7988-bl2 emmc-comb
  844. ARTIFACT/emmc-bl31-uboot.fip := mt7988-bl31-uboot rfb-emmc
  845. ARTIFACT/nor-preloader.bin := mt7988-bl2 nor-comb
  846. ARTIFACT/nor-bl31-uboot.fip := mt7988-bl31-uboot rfb-nor
  847. ARTIFACT/snand-preloader.bin := mt7988-bl2 spim-nand-ubi-comb
  848. ARTIFACT/snand-bl31-uboot.fip := mt7988-bl31-uboot rfb-snand
  849. ARTIFACT/sdcard.img.gz := mt798x-gpt sdmmc |\
  850. pad-to 17k | mt7988-bl2 sdmmc-comb |\
  851. pad-to 6656k | mt7988-bl31-uboot rfb-sd |\
  852. $(if $(CONFIG_TARGET_ROOTFS_INITRAMFS),\
  853. pad-to 12M | append-image-stage initramfs.itb | check-size 44m |\
  854. ) \
  855. pad-to 44M | mt7988-bl2 spim-nand-comb |\
  856. pad-to 45M | mt7988-bl31-uboot rfb-snand |\
  857. pad-to 51M | mt7988-bl2 nor-comb |\
  858. pad-to 51M | mt7988-bl31-uboot rfb-nor |\
  859. pad-to 55M | mt7988-bl2 emmc-comb |\
  860. pad-to 56M | mt7988-bl31-uboot rfb-emmc |\
  861. pad-to 62M | mt798x-gpt emmc |\
  862. $(if $(CONFIG_TARGET_ROOTFS_SQUASHFS),\
  863. pad-to 64M | append-image squashfs-sysupgrade.itb | check-size |\
  864. ) \
  865. gzip
  866. endef
  867. TARGET_DEVICES += mediatek_mt7988a-rfb
  868. define Device/mercusys_mr90x-v1
  869. DEVICE_VENDOR := MERCUSYS
  870. DEVICE_MODEL := MR90X v1
  871. DEVICE_DTS := mt7986b-mercusys-mr90x-v1
  872. DEVICE_DTS_DIR := ../dts
  873. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7986-firmware mt7986-wo-firmware
  874. UBINIZE_OPTS := -E 5
  875. BLOCKSIZE := 128k
  876. PAGESIZE := 2048
  877. IMAGE_SIZE := 51200k
  878. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  879. endef
  880. TARGET_DEVICES += mercusys_mr90x-v1
  881. define Device/netcore_n60
  882. DEVICE_VENDOR := Netcore
  883. DEVICE_MODEL := N60
  884. DEVICE_DTS := mt7986a-netcore-n60
  885. DEVICE_DTS_DIR := ../dts
  886. UBINIZE_OPTS := -E 5
  887. BLOCKSIZE := 128k
  888. PAGESIZE := 2048
  889. KERNEL_IN_UBI := 1
  890. UBOOTENV_IN_UBI := 1
  891. IMAGES := sysupgrade.itb
  892. KERNEL_INITRAMFS_SUFFIX := -recovery.itb
  893. KERNEL := kernel-bin | gzip
  894. KERNEL_INITRAMFS := kernel-bin | lzma | \
  895. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
  896. IMAGE/sysupgrade.itb := append-kernel | \
  897. fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | append-metadata
  898. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7986-firmware mt7986-wo-firmware
  899. ARTIFACTS := preloader.bin bl31-uboot.fip
  900. ARTIFACT/preloader.bin := mt7986-bl2 spim-nand-ddr3
  901. ARTIFACT/bl31-uboot.fip := mt7986-bl31-uboot netcore_n60
  902. endef
  903. TARGET_DEVICES += netcore_n60
  904. define Device/netgear_wax220
  905. DEVICE_VENDOR := NETGEAR
  906. DEVICE_MODEL := WAX220
  907. DEVICE_DTS := mt7986b-netgear-wax220
  908. DEVICE_DTS_DIR := ../dts
  909. NETGEAR_ENC_MODEL := WAX220
  910. NETGEAR_ENC_REGION := US
  911. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7986-firmware mt7986-wo-firmware
  912. KERNEL_INITRAMFS_SUFFIX := -recovery.itb
  913. IMAGE_SIZE := 32768k
  914. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  915. IMAGES += factory.img
  916. # Padding to 10M seems to be required by OEM web interface
  917. IMAGE/factory.img := sysupgrade-tar | \
  918. pad-to 10M | check-size | netgear-encrypted-factory
  919. endef
  920. TARGET_DEVICES += netgear_wax220
  921. define Device/nokia_ea0326gmp
  922. DEVICE_VENDOR := Nokia
  923. DEVICE_MODEL := EA0326GMP
  924. DEVICE_DTS := mt7981b-nokia-ea0326gmp
  925. DEVICE_DTS_DIR := ../dts
  926. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware
  927. UBINIZE_OPTS := -E 5
  928. BLOCKSIZE := 128k
  929. PAGESIZE := 2048
  930. KERNEL_IN_UBI := 1
  931. UBOOTENV_IN_UBI := 1
  932. IMAGES := sysupgrade.itb
  933. KERNEL_INITRAMFS_SUFFIX := -recovery.itb
  934. KERNEL := kernel-bin | gzip
  935. KERNEL_INITRAMFS := kernel-bin | lzma | \
  936. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
  937. IMAGE/sysupgrade.itb := append-kernel | \
  938. fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | append-metadata
  939. ARTIFACTS := preloader.bin bl31-uboot.fip
  940. ARTIFACT/preloader.bin := mt7981-bl2 spim-nand-ddr3
  941. ARTIFACT/bl31-uboot.fip := mt7981-bl31-uboot nokia_ea0326gmp
  942. endef
  943. TARGET_DEVICES += nokia_ea0326gmp
  944. define Device/openembed_som7981
  945. DEVICE_VENDOR := OpenEmbed
  946. DEVICE_MODEL := SOM7981
  947. DEVICE_DTS := mt7981b-openembed-som7981
  948. DEVICE_DTS_DIR := ../dts
  949. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware kmod-usb3
  950. UBINIZE_OPTS := -E 5
  951. BLOCKSIZE := 128k
  952. PAGESIZE := 2048
  953. IMAGE_SIZE := 244224k
  954. KERNEL_IN_UBI := 1
  955. IMAGES += factory.bin
  956. IMAGE/factory.bin := append-ubi | check-size $$$$(IMAGE_SIZE)
  957. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  958. endef
  959. TARGET_DEVICES += openembed_som7981
  960. define Build/append-openwrt-one-eeprom
  961. dd if=$(STAGING_DIR_IMAGE)/mt7981_eeprom_mt7976_dbdc.bin >> $@
  962. endef
  963. define Device/openwrt_one
  964. DEVICE_VENDOR := OpenWrt
  965. DEVICE_MODEL := One
  966. DEVICE_DTS := mt7981b-openwrt-one
  967. DEVICE_DTS_DIR := ../dts
  968. DEVICE_DTC_FLAGS := --pad 4096
  969. DEVICE_DTS_LOADADDR := 0x43f00000
  970. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware kmod-rtc-pcf8563 kmod-usb3 kmod-nvme kmod-phy-airoha-en8811h
  971. KERNEL_LOADADDR := 0x44000000
  972. KERNEL := kernel-bin | gzip
  973. KERNEL_INITRAMFS := kernel-bin | lzma | \
  974. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
  975. KERNEL_INITRAMFS_SUFFIX := .itb
  976. KERNEL_IN_UBI := 1
  977. UBOOTENV_IN_UBI := 1
  978. IMAGES := sysupgrade.itb
  979. IMAGE_SIZE := $$(shell expr 64 + $$(CONFIG_TARGET_ROOTFS_PARTSIZE))m
  980. IMAGE/sysupgrade.itb := append-kernel | fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-with-rootfs | pad-rootfs | append-metadata
  981. ARTIFACTS := \
  982. nor-preloader.bin nor-bl31-uboot.fip \
  983. snand-preloader.bin snand-bl31-uboot.fip \
  984. factory.ubi snand-factory.bin nor-factory.bin
  985. ARTIFACT/nor-preloader.bin := mt7981-bl2 nor-ddr4
  986. ARTIFACT/nor-bl31-uboot.fip := mt7981-bl31-uboot openwrt_one-nor
  987. ARTIFACT/snand-preloader.bin := mt7981-bl2 spim-nand-ubi-ddr4
  988. ARTIFACT/snand-bl31-uboot.fip := mt7981-bl31-uboot openwrt_one-snand
  989. ARTIFACT/factory.ubi := ubinize-image fit squashfs-sysupgrade.itb
  990. ARTIFACT/snand-factory.bin := mt7981-bl2 spim-nand-ubi-ddr4 | pad-to 256k | \
  991. mt7981-bl2 spim-nand-ubi-ddr4 | pad-to 512k | \
  992. mt7981-bl2 spim-nand-ubi-ddr4 | pad-to 768k | \
  993. mt7981-bl2 spim-nand-ubi-ddr4 | pad-to 1024k | \
  994. ubinize-image fit squashfs-sysupgrade.itb
  995. ARTIFACT/nor-factory.bin := mt7981-bl2 nor-ddr4 | pad-to 256k | \
  996. append-openwrt-one-eeprom | pad-to 1024k | \
  997. mt7981-bl31-uboot openwrt_one-nor | pad-to 512k | \
  998. append-image-stage initramfs.itb
  999. UBINIZE_OPTS := -E 5
  1000. BLOCKSIZE := 128k
  1001. PAGESIZE := 2048
  1002. UBINIZE_PARTS := fip=:$(STAGING_DIR_IMAGE)/mt7981_openwrt_one-snand-u-boot.fip recovery=:$(KDIR)/tmp/openwrt-mediatek-filogic-openwrt_one-initramfs.itb \
  1003. $(if $(wildcard $(TOPDIR)/openwrt-mediatek-filogic-openwrt_one-calibration.itb), calibration=:$(TOPDIR)/openwrt-mediatek-filogic-openwrt_one-calibration.itb)
  1004. endef
  1005. TARGET_DEVICES += openwrt_one
  1006. define Device/qihoo_360t7
  1007. DEVICE_VENDOR := Qihoo
  1008. DEVICE_MODEL := 360T7
  1009. DEVICE_DTS := mt7981b-qihoo-360t7
  1010. DEVICE_DTS_DIR := ../dts
  1011. UBINIZE_OPTS := -E 5
  1012. BLOCKSIZE := 128k
  1013. PAGESIZE := 2048
  1014. KERNEL_IN_UBI := 1
  1015. UBOOTENV_IN_UBI := 1
  1016. IMAGES := sysupgrade.itb
  1017. KERNEL_INITRAMFS_SUFFIX := -recovery.itb
  1018. KERNEL := kernel-bin | gzip
  1019. KERNEL_INITRAMFS := kernel-bin | lzma | \
  1020. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
  1021. IMAGE/sysupgrade.itb := append-kernel | \
  1022. fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | append-metadata
  1023. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware
  1024. ARTIFACTS := preloader.bin bl31-uboot.fip
  1025. ARTIFACT/preloader.bin := mt7981-bl2 spim-nand-ddr3
  1026. ARTIFACT/bl31-uboot.fip := mt7981-bl31-uboot qihoo_360t7
  1027. endef
  1028. TARGET_DEVICES += qihoo_360t7
  1029. define Device/routerich_ax3000
  1030. DEVICE_VENDOR := Routerich
  1031. DEVICE_MODEL := AX3000
  1032. DEVICE_DTS := mt7981b-routerich-ax3000
  1033. DEVICE_DTS_DIR := ../dts
  1034. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware kmod-usb3
  1035. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  1036. SUPPORTED_DEVICES += mediatek,mt7981-spim-snand-rfb
  1037. endef
  1038. TARGET_DEVICES += routerich_ax3000
  1039. define Device/ruijie_rg-x60-pro
  1040. DEVICE_VENDOR := Ruijie
  1041. DEVICE_MODEL := RG-X60 Pro
  1042. DEVICE_DTS := mt7986a-ruijie-rg-x60-pro
  1043. DEVICE_DTS_DIR := ../dts
  1044. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7986-firmware mt7986-wo-firmware
  1045. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  1046. endef
  1047. TARGET_DEVICES += ruijie_rg-x60-pro
  1048. define Device/tplink_re6000xd
  1049. DEVICE_VENDOR := TP-Link
  1050. DEVICE_MODEL := RE6000XD
  1051. DEVICE_DTS := mt7986b-tplink-re6000xd
  1052. DEVICE_DTS_DIR := ../dts
  1053. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7986-firmware mt7986-wo-firmware
  1054. UBINIZE_OPTS := -E 5
  1055. BLOCKSIZE := 128k
  1056. PAGESIZE := 2048
  1057. IMAGE_SIZE := 51200k
  1058. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  1059. endef
  1060. TARGET_DEVICES += tplink_re6000xd
  1061. define Device/tplink_tl-xdr-common
  1062. DEVICE_VENDOR := TP-Link
  1063. DEVICE_DTS_DIR := ../dts
  1064. UBINIZE_OPTS := -E 5
  1065. BLOCKSIZE := 128k
  1066. PAGESIZE := 2048
  1067. KERNEL_IN_UBI := 1
  1068. UBOOTENV_IN_UBI := 1
  1069. IMAGES := sysupgrade.itb
  1070. KERNEL_INITRAMFS_SUFFIX := -recovery.itb
  1071. KERNEL := kernel-bin | gzip
  1072. KERNEL_INITRAMFS := kernel-bin | lzma | \
  1073. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
  1074. IMAGE/sysupgrade.itb := append-kernel | \
  1075. fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-with-rootfs | append-metadata
  1076. DEVICE_PACKAGES := fitblk kmod-usb3 kmod-mt7915e kmod-mt7986-firmware mt7986-wo-firmware
  1077. ARTIFACTS := preloader.bin bl31-uboot.fip
  1078. ARTIFACT/preloader.bin := mt7986-bl2 spim-nand-ddr3
  1079. endef
  1080. define Device/tplink_tl-xdr4288
  1081. DEVICE_MODEL := TL-XDR4288
  1082. DEVICE_DTS := mt7986a-tplink-tl-xdr4288
  1083. ARTIFACT/bl31-uboot.fip := mt7986-bl31-uboot tplink_tl-xdr4288
  1084. $(call Device/tplink_tl-xdr-common)
  1085. endef
  1086. TARGET_DEVICES += tplink_tl-xdr4288
  1087. define Device/tplink_tl-xdr6086
  1088. DEVICE_MODEL := TL-XDR6086
  1089. DEVICE_DTS := mt7986a-tplink-tl-xdr6086
  1090. ARTIFACT/bl31-uboot.fip := mt7986-bl31-uboot tplink_tl-xdr6086
  1091. $(call Device/tplink_tl-xdr-common)
  1092. endef
  1093. TARGET_DEVICES += tplink_tl-xdr6086
  1094. define Device/tplink_tl-xdr6088
  1095. DEVICE_MODEL := TL-XDR6088
  1096. DEVICE_DTS := mt7986a-tplink-tl-xdr6088
  1097. ARTIFACT/bl31-uboot.fip := mt7986-bl31-uboot tplink_tl-xdr6088
  1098. $(call Device/tplink_tl-xdr-common)
  1099. endef
  1100. TARGET_DEVICES += tplink_tl-xdr6088
  1101. define Device/ubnt_unifi-6-plus
  1102. DEVICE_VENDOR := Ubiquiti
  1103. DEVICE_MODEL := UniFi 6 Plus
  1104. DEVICE_DTS := mt7981a-ubnt-unifi-6-plus
  1105. DEVICE_DTS_DIR := ../dts
  1106. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware e2fsprogs f2fsck mkf2fs fdisk partx-utils
  1107. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  1108. endef
  1109. TARGET_DEVICES += ubnt_unifi-6-plus
  1110. define Device/unielec_u7981-01
  1111. DEVICE_VENDOR := Unielec
  1112. DEVICE_MODEL := U7981-01
  1113. DEVICE_DTS_DIR := ../dts
  1114. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware kmod-usb3 e2fsprogs f2fsck mkf2fs fdisk partx-utils
  1115. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  1116. endef
  1117. define Device/unielec_u7981-01-emmc
  1118. DEVICE_DTS := mt7981b-unielec-u7981-01-emmc
  1119. DEVICE_VARIANT := (EMMC)
  1120. $(call Device/unielec_u7981-01)
  1121. endef
  1122. TARGET_DEVICES += unielec_u7981-01-emmc
  1123. define Device/unielec_u7981-01-nand
  1124. DEVICE_DTS := mt7981b-unielec-u7981-01-nand
  1125. DEVICE_VARIANT := (NAND)
  1126. $(call Device/unielec_u7981-01)
  1127. endef
  1128. TARGET_DEVICES += unielec_u7981-01-nand
  1129. define Device/wavlink_wl-wn586x3
  1130. DEVICE_VENDOR := WAVLINK
  1131. DEVICE_MODEL := WL-WN586X3
  1132. DEVICE_DTS := mt7981b-wavlink-wl-wn586x3
  1133. DEVICE_DTS_DIR := ../dts
  1134. DEVICE_DTS_LOADADDR := 0x47000000
  1135. IMAGE_SIZE := 15424k
  1136. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware
  1137. endef
  1138. TARGET_DEVICES += wavlink_wl-wn586x3
  1139. define Device/xiaomi_mi-router-ax3000t
  1140. DEVICE_VENDOR := Xiaomi
  1141. DEVICE_MODEL := Mi Router AX3000T
  1142. DEVICE_DTS := mt7981b-xiaomi-mi-router-ax3000t
  1143. DEVICE_DTS_DIR := ../dts
  1144. UBINIZE_OPTS := -E 5
  1145. BLOCKSIZE := 128k
  1146. PAGESIZE := 2048
  1147. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware
  1148. ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
  1149. ARTIFACTS := initramfs-factory.ubi
  1150. ARTIFACT/initramfs-factory.ubi := append-image-stage initramfs-kernel.bin | ubinize-kernel
  1151. endif
  1152. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  1153. endef
  1154. TARGET_DEVICES += xiaomi_mi-router-ax3000t
  1155. define Device/xiaomi_mi-router-ax3000t-ubootmod
  1156. DEVICE_VENDOR := Xiaomi
  1157. DEVICE_MODEL := Mi Router AX3000T (OpenWrt U-Boot layout)
  1158. DEVICE_DTS := mt7981b-xiaomi-mi-router-ax3000t-ubootmod
  1159. DEVICE_DTS_DIR := ../dts
  1160. UBINIZE_OPTS := -E 5
  1161. BLOCKSIZE := 128k
  1162. PAGESIZE := 2048
  1163. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware
  1164. KERNEL_IN_UBI := 1
  1165. UBOOTENV_IN_UBI := 1
  1166. IMAGES := sysupgrade.itb
  1167. KERNEL_INITRAMFS_SUFFIX := -recovery.itb
  1168. KERNEL := kernel-bin | gzip
  1169. KERNEL_INITRAMFS := kernel-bin | lzma | \
  1170. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
  1171. IMAGE/sysupgrade.itb := append-kernel | \
  1172. fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | append-metadata
  1173. ARTIFACTS := preloader.bin bl31-uboot.fip
  1174. ARTIFACT/preloader.bin := mt7981-bl2 spim-nand-ddr3
  1175. ARTIFACT/bl31-uboot.fip := mt7981-bl31-uboot xiaomi_mi-router-ax3000t
  1176. ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
  1177. ARTIFACTS += initramfs-factory.ubi
  1178. ARTIFACT/initramfs-factory.ubi := append-image-stage initramfs-recovery.itb | ubinize-kernel
  1179. endif
  1180. endef
  1181. TARGET_DEVICES += xiaomi_mi-router-ax3000t-ubootmod
  1182. define Device/xiaomi_mi-router-wr30u-stock
  1183. DEVICE_VENDOR := Xiaomi
  1184. DEVICE_MODEL := Mi Router WR30U (stock layout)
  1185. DEVICE_DTS := mt7981b-xiaomi-mi-router-wr30u-stock
  1186. DEVICE_DTS_DIR := ../dts
  1187. UBINIZE_OPTS := -E 5
  1188. BLOCKSIZE := 128k
  1189. PAGESIZE := 2048
  1190. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware
  1191. ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
  1192. ARTIFACTS := initramfs-factory.ubi
  1193. ARTIFACT/initramfs-factory.ubi := append-image-stage initramfs-kernel.bin | ubinize-kernel
  1194. endif
  1195. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  1196. endef
  1197. TARGET_DEVICES += xiaomi_mi-router-wr30u-stock
  1198. define Device/xiaomi_mi-router-wr30u-ubootmod
  1199. DEVICE_VENDOR := Xiaomi
  1200. DEVICE_MODEL := Mi Router WR30U (OpenWrt U-Boot layout)
  1201. DEVICE_DTS := mt7981b-xiaomi-mi-router-wr30u-ubootmod
  1202. DEVICE_DTS_DIR := ../dts
  1203. UBINIZE_OPTS := -E 5
  1204. BLOCKSIZE := 128k
  1205. PAGESIZE := 2048
  1206. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware
  1207. KERNEL_IN_UBI := 1
  1208. UBOOTENV_IN_UBI := 1
  1209. IMAGES := sysupgrade.itb
  1210. KERNEL_INITRAMFS_SUFFIX := -recovery.itb
  1211. KERNEL := kernel-bin | gzip
  1212. KERNEL_INITRAMFS := kernel-bin | lzma | \
  1213. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
  1214. IMAGE/sysupgrade.itb := append-kernel | \
  1215. fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | append-metadata
  1216. ARTIFACTS := preloader.bin bl31-uboot.fip
  1217. ARTIFACT/preloader.bin := mt7981-bl2 spim-nand-ddr3
  1218. ARTIFACT/bl31-uboot.fip := mt7981-bl31-uboot xiaomi_mi-router-wr30u
  1219. ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
  1220. ARTIFACTS += initramfs-factory.ubi
  1221. ARTIFACT/initramfs-factory.ubi := append-image-stage initramfs-recovery.itb | ubinize-kernel
  1222. endif
  1223. endef
  1224. TARGET_DEVICES += xiaomi_mi-router-wr30u-ubootmod
  1225. define Device/xiaomi_redmi-router-ax6000-stock
  1226. DEVICE_VENDOR := Xiaomi
  1227. DEVICE_MODEL := Redmi Router AX6000 (stock layout)
  1228. DEVICE_DTS := mt7986a-xiaomi-redmi-router-ax6000-stock
  1229. DEVICE_DTS_DIR := ../dts
  1230. DEVICE_PACKAGES := kmod-leds-ws2812b kmod-mt7915e kmod-mt7986-firmware mt7986-wo-firmware
  1231. UBINIZE_OPTS := -E 5
  1232. BLOCKSIZE := 128k
  1233. PAGESIZE := 2048
  1234. ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
  1235. ARTIFACTS := initramfs-factory.ubi
  1236. ARTIFACT/initramfs-factory.ubi := append-image-stage initramfs-kernel.bin | ubinize-kernel
  1237. endif
  1238. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  1239. endef
  1240. TARGET_DEVICES += xiaomi_redmi-router-ax6000-stock
  1241. define Device/xiaomi_redmi-router-ax6000-ubootmod
  1242. DEVICE_VENDOR := Xiaomi
  1243. DEVICE_MODEL := Redmi Router AX6000 (OpenWrt U-Boot layout)
  1244. DEVICE_DTS := mt7986a-xiaomi-redmi-router-ax6000-ubootmod
  1245. DEVICE_DTS_DIR := ../dts
  1246. DEVICE_PACKAGES := kmod-leds-ws2812b kmod-mt7915e kmod-mt7986-firmware mt7986-wo-firmware
  1247. KERNEL_INITRAMFS_SUFFIX := -recovery.itb
  1248. IMAGES := sysupgrade.itb
  1249. UBINIZE_OPTS := -E 5
  1250. BLOCKSIZE := 128k
  1251. PAGESIZE := 2048
  1252. KERNEL_IN_UBI := 1
  1253. UBOOTENV_IN_UBI := 1
  1254. KERNEL := kernel-bin | gzip
  1255. KERNEL_INITRAMFS := kernel-bin | lzma | \
  1256. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
  1257. IMAGE/sysupgrade.itb := append-kernel | \
  1258. fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | append-metadata
  1259. ARTIFACTS := preloader.bin bl31-uboot.fip
  1260. ARTIFACT/preloader.bin := mt7986-bl2 spim-nand-ddr4
  1261. ARTIFACT/bl31-uboot.fip := mt7986-bl31-uboot xiaomi_redmi-router-ax6000
  1262. ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
  1263. ARTIFACTS += initramfs-factory.ubi
  1264. ARTIFACT/initramfs-factory.ubi := append-image-stage initramfs-recovery.itb | ubinize-kernel
  1265. endif
  1266. endef
  1267. TARGET_DEVICES += xiaomi_redmi-router-ax6000-ubootmod
  1268. define Device/yuncore_ax835
  1269. DEVICE_VENDOR := YunCore
  1270. DEVICE_MODEL := AX835
  1271. DEVICE_DTS := mt7981b-yuncore-ax835
  1272. DEVICE_DTS_DIR := ../dts
  1273. DEVICE_DTS_LOADADDR := 0x47000000
  1274. IMAGES := sysupgrade.bin
  1275. IMAGE_SIZE := 14336k
  1276. SUPPORTED_DEVICES += mediatek,mt7981-spim-nor-rfb
  1277. KERNEL := kernel-bin | lzma | \
  1278. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
  1279. KERNEL_INITRAMFS := kernel-bin | lzma | \
  1280. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
  1281. IMAGE/sysupgrade.bin := append-kernel | pad-to 128k | append-rootfs | pad-rootfs | check-size | append-metadata
  1282. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware
  1283. endef
  1284. TARGET_DEVICES += yuncore_ax835
  1285. define Device/zbtlink_zbt-z8102ax
  1286. DEVICE_VENDOR := Zbtlink
  1287. DEVICE_MODEL := ZBT-Z8102AX
  1288. DEVICE_DTS := mt7981b-zbtlink-zbt-z8102ax
  1289. DEVICE_DTS_DIR := ../dts
  1290. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware kmod-usb3 kmod-usb-net-qmi-wwan kmod-usb-serial-option
  1291. KERNEL_IN_UBI := 1
  1292. UBINIZE_OPTS := -E 5
  1293. BLOCKSIZE := 128k
  1294. PAGESIZE := 2048
  1295. IMAGE_SIZE := 65536k
  1296. IMAGES += factory.bin
  1297. IMAGE/factory.bin := append-ubi | check-size $$(IMAGE_SIZE)
  1298. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  1299. endef
  1300. TARGET_DEVICES += zbtlink_zbt-z8102ax
  1301. define Device/zbtlink_zbt-z8103ax
  1302. DEVICE_VENDOR := Zbtlink
  1303. DEVICE_MODEL := ZBT-Z8103AX
  1304. DEVICE_DTS := mt7981b-zbtlink-zbt-z8103ax
  1305. DEVICE_DTS_DIR := ../dts
  1306. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware
  1307. KERNEL_IN_UBI := 1
  1308. UBINIZE_OPTS := -E 5
  1309. BLOCKSIZE := 128k
  1310. PAGESIZE := 2048
  1311. IMAGE_SIZE := 65536k
  1312. IMAGES += factory.bin
  1313. IMAGE/factory.bin := append-ubi | check-size $$(IMAGE_SIZE)
  1314. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  1315. endef
  1316. TARGET_DEVICES += zbtlink_zbt-z8103ax
  1317. define Device/zyxel_ex5601-t0-stock
  1318. DEVICE_VENDOR := Zyxel
  1319. DEVICE_MODEL := EX5601-T0
  1320. DEVICE_VARIANT := (stock layout)
  1321. DEVICE_DTS := mt7986a-zyxel-ex5601-t0-stock
  1322. DEVICE_DTS_DIR := ../dts
  1323. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7986-firmware mt7986-wo-firmware kmod-usb3
  1324. SUPPORTED_DEVICES := mediatek,mt7986a-rfb-snand
  1325. UBINIZE_OPTS := -E 5
  1326. BLOCKSIZE := 256k
  1327. PAGESIZE := 4096
  1328. IMAGE_SIZE := 65536k
  1329. KERNEL_IN_UBI := 1
  1330. IMAGES += factory.bin
  1331. IMAGE/factory.bin := append-ubi | check-size $$$$(IMAGE_SIZE)
  1332. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  1333. KERNEL = kernel-bin | lzma | \
  1334. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
  1335. KERNEL_INITRAMFS = kernel-bin | lzma | \
  1336. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd
  1337. endef
  1338. TARGET_DEVICES += zyxel_ex5601-t0-stock
  1339. define Device/zyxel_ex5601-t0-ubootmod
  1340. DEVICE_VENDOR := Zyxel
  1341. DEVICE_MODEL := EX5601-T0
  1342. DEVICE_VARIANT := (OpenWrt U-Boot layout)
  1343. DEVICE_DTS := mt7986a-zyxel-ex5601-t0-ubootmod
  1344. DEVICE_DTS_DIR := ../dts
  1345. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7986-firmware mt7986-wo-firmware kmod-usb3
  1346. KERNEL_INITRAMFS_SUFFIX := -recovery.itb
  1347. IMAGES := sysupgrade.itb
  1348. UBINIZE_OPTS := -E 5
  1349. BLOCKSIZE := 256k
  1350. PAGESIZE := 4096
  1351. KERNEL_IN_UBI := 1
  1352. UBOOTENV_IN_UBI := 1
  1353. KERNEL := kernel-bin | lzma
  1354. KERNEL_INITRAMFS := kernel-bin | lzma | \
  1355. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd
  1356. IMAGE/sysupgrade.itb := append-kernel | \
  1357. fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | append-metadata
  1358. ARTIFACTS := preloader.bin bl31-uboot.fip
  1359. ARTIFACT/preloader.bin := mt7986-bl2 spim-nand-4k-ddr4
  1360. ARTIFACT/bl31-uboot.fip := mt7986-bl31-uboot zyxel_ex5601-t0
  1361. ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
  1362. ARTIFACTS += initramfs-factory.ubi
  1363. ARTIFACT/initramfs-factory.ubi := append-image-stage initramfs-recovery.itb | ubinize-kernel
  1364. endif
  1365. endef
  1366. TARGET_DEVICES += zyxel_ex5601-t0-ubootmod
  1367. define Device/zyxel_ex5700-telenor
  1368. DEVICE_VENDOR := ZyXEL
  1369. DEVICE_MODEL := EX5700 (Telenor)
  1370. DEVICE_DTS := mt7986a-zyxel-ex5700-telenor
  1371. DEVICE_DTS_DIR := ../dts
  1372. DEVICE_PACKAGES := kmod-ubootenv-nvram kmod-usb3 kmod-mt7915e kmod-mt7916-firmware kmod-mt7986-firmware mt7986-wo-firmware
  1373. UBINIZE_OPTS := -E 5
  1374. BLOCKSIZE := 128k
  1375. PAGESIZE := 2048
  1376. IMAGE_SIZE := 65536k
  1377. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  1378. endef
  1379. TARGET_DEVICES += zyxel_ex5700-telenor
  1380. define Device/zyxel_nwa50ax-pro
  1381. DEVICE_VENDOR := ZyXEL
  1382. DEVICE_MODEL := NWA50AX Pro
  1383. DEVICE_DTS := mt7981b-zyxel-nwa50ax-pro
  1384. DEVICE_DTS_DIR := ../dts
  1385. DEVICE_PACKAGES := kmod-mt7915e kmod-mt7981-firmware mt7981-wo-firmware zyxel-bootconfig
  1386. DEVICE_DTS_LOADADDR := 0x44000000
  1387. UBINIZE_OPTS := -E 5
  1388. BLOCKSIZE := 128k
  1389. PAGESIZE := 2048
  1390. IMAGE_SIZE := 51200k
  1391. KERNEL_IN_UBI := 1
  1392. IMAGES += factory.bin
  1393. IMAGE/factory.bin := append-ubi | check-size $$$$(IMAGE_SIZE) | zyxel-nwa-fit-filogic
  1394. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  1395. endef
  1396. TARGET_DEVICES += zyxel_nwa50ax-pro