90a0e91f02c0316cea13592cfa4f88bffe8d6587
[openwrt/staging/wigyori.git] / target / linux / mediatek / image / filogic.mk
1 DTS_DIR := $(DTS_DIR)/mediatek
2
3 define Image/Prepare
4 # For UBI we want only one extra block
5 rm -f $(KDIR)/ubi_mark
6 echo -ne '\xde\xad\xc0\xde' > $(KDIR)/ubi_mark
7 endef
8
9 define Build/mt7981-bl2
10 cat $(STAGING_DIR_IMAGE)/mt7981-$1-bl2.img >> $@
11 endef
12
13 define Build/mt7981-bl31-uboot
14 cat $(STAGING_DIR_IMAGE)/mt7981_$1-u-boot.fip >> $@
15 endef
16
17 define Build/mt7986-bl2
18 cat $(STAGING_DIR_IMAGE)/mt7986-$1-bl2.img >> $@
19 endef
20
21 define Build/mt7986-bl31-uboot
22 cat $(STAGING_DIR_IMAGE)/mt7986_$1-u-boot.fip >> $@
23 endef
24
25 define Build/mt7988-bl2
26 cat $(STAGING_DIR_IMAGE)/mt7988-$1-bl2.img >> $@
27 endef
28
29 define Build/mt7988-bl31-uboot
30 cat $(STAGING_DIR_IMAGE)/mt7988_$1-u-boot.fip >> $@
31 endef
32
33 define Build/mt798x-gpt
34 cp $@ $@.tmp 2>/dev/null || true
35 ptgen -g -o $@.tmp -a 1 -l 1024 \
36 $(if $(findstring sdmmc,$1), \
37 -H \
38 -t 0x83 -N bl2 -r -p 4079k@17k \
39 ) \
40 -t 0x83 -N ubootenv -r -p 512k@4M \
41 -t 0x83 -N factory -r -p 2M@4608k \
42 -t 0xef -N fip -r -p 4M@6656k \
43 -N recovery -r -p 32M@12M \
44 $(if $(findstring sdmmc,$1), \
45 -N install -r -p 20M@44M \
46 -t 0x2e -N production -p $(CONFIG_TARGET_ROOTFS_PARTSIZE)M@64M \
47 ) \
48 $(if $(findstring emmc,$1), \
49 -t 0x2e -N production -p $(CONFIG_TARGET_ROOTFS_PARTSIZE)M@64M \
50 )
51 cat $@.tmp >> $@
52 rm $@.tmp
53 endef
54
55 metadata_gl_json = \
56 '{ $(if $(IMAGE_METADATA),$(IMAGE_METADATA)$(comma)) \
57 "metadata_version": "1.1", \
58 "compat_version": "$(call json_quote,$(compat_version))", \
59 $(if $(DEVICE_COMPAT_MESSAGE),"compat_message": "$(call json_quote,$(DEVICE_COMPAT_MESSAGE))"$(comma)) \
60 $(if $(filter-out 1.0,$(compat_version)),"new_supported_devices": \
61 [$(call metadata_devices,$(SUPPORTED_DEVICES))]$(comma) \
62 "supported_devices": ["$(call json_quote,$(legacy_supported_message))"]$(comma)) \
63 $(if $(filter 1.0,$(compat_version)),"supported_devices":[$(call metadata_devices,$(SUPPORTED_DEVICES))]$(comma)) \
64 "version": { \
65 "release": "$(call json_quote,$(VERSION_NUMBER))", \
66 "date": "$(shell TZ='Asia/Chongqing' date '+%Y%m%d%H%M%S')", \
67 "dist": "$(call json_quote,$(VERSION_DIST))", \
68 "version": "$(call json_quote,$(VERSION_NUMBER))", \
69 "revision": "$(call json_quote,$(REVISION))", \
70 "target": "$(call json_quote,$(TARGETID))", \
71 "board": "$(call json_quote,$(if $(BOARD_NAME),$(BOARD_NAME),$(DEVICE_NAME)))" \
72 } \
73 }'
74
75 define Build/append-gl-metadata
76 $(if $(SUPPORTED_DEVICES),-echo $(call metadata_gl_json,$(SUPPORTED_DEVICES)) | fwtool -I - $@)
77 sha256sum "$@" | cut -d" " -f1 > "$@.sha256sum"
78 [ ! -s "$(BUILD_KEY)" -o ! -s "$(BUILD_KEY).ucert" -o ! -s "$@" ] || { \
79 cp "$(BUILD_KEY).ucert" "$@.ucert" ;\
80 usign -S -m "$@" -s "$(BUILD_KEY)" -x "$@.sig" ;\
81 ucert -A -c "$@.ucert" -x "$@.sig" ;\
82 fwtool -S "$@.ucert" "$@" ;\
83 }
84 endef
85
86 define Build/zyxel-nwa-fit-filogic
87 $(TOPDIR)/scripts/mkits-zyxel-fit-filogic.sh \
88 $@.its $@ "80 e1 ff ff ff ff ff ff ff ff"
89 PATH=$(LINUX_DIR)/scripts/dtc:$(PATH) mkimage -f $@.its $@.new
90 @mv $@.new $@
91 endef
92
93 define Build/cetron-header
94 $(eval magic=$(word 1,$(1)))
95 $(eval model=$(word 2,$(1)))
96 ( \
97 dd if=/dev/zero bs=856 count=1 2>/dev/null; \
98 printf "$(model)," | dd bs=128 count=1 conv=sync 2>/dev/null; \
99 md5sum $@ | cut -f1 -d" " | dd bs=32 count=1 2>/dev/null; \
100 printf "$(magic)" | dd bs=4 count=1 conv=sync 2>/dev/null; \
101 cat $@; \
102 ) > $@.tmp
103 fw_crc=$$(gzip -c $@.tmp | tail -c 8 | od -An -N4 -tx4 --endian little | tr -d ' \n'); \
104 printf "$$(echo $$fw_crc | sed 's/../\\x&/g')" | cat - $@.tmp > $@
105 rm $@.tmp
106 endef
107
108 define Device/acelink_ew-7886cax
109 DEVICE_VENDOR := Acelink
110 DEVICE_MODEL := EW-7886CAX
111 DEVICE_DTS := mt7986a-acelink-ew-7886cax
112 DEVICE_DTS_DIR := ../dts
113 DEVICE_PACKAGES := kmod-mt7986-firmware mt7986-wo-firmware
114 UBINIZE_OPTS := -E 5
115 BLOCKSIZE := 128k
116 PAGESIZE := 2048
117 IMAGE_SIZE := 65536k
118 KERNEL_IN_UBI := 1
119 IMAGES += factory.bin
120 IMAGE/factory.bin := append-ubi | check-size $$$$(IMAGE_SIZE)
121 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
122 endef
123 TARGET_DEVICES += acelink_ew-7886cax
124
125 define Device/acer_predator-w6
126 DEVICE_VENDOR := Acer
127 DEVICE_MODEL := Predator W6
128 DEVICE_DTS := mt7986a-acer-predator-w6
129 DEVICE_DTS_DIR := ../dts
130 DEVICE_DTS_LOADADDR := 0x47000000
131 DEVICE_PACKAGES := kmod-usb3 kmod-mt7986-firmware kmod-mt7916-firmware mt7986-wo-firmware e2fsprogs f2fsck mkf2fs
132 IMAGES := sysupgrade.bin
133 KERNEL := kernel-bin | lzma | fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
134 KERNEL_INITRAMFS := kernel-bin | lzma | \
135 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
136 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
137 endef
138 TARGET_DEVICES += acer_predator-w6
139
140 define Device/adtran_smartrg
141 DEVICE_VENDOR := Adtran
142 DEVICE_DTS_DIR := ../dts
143 DEVICE_PACKAGES := e2fsprogs f2fsck mkf2fs kmod-hwmon-pwmfan \
144 kmod-mt7986-firmware mt7986-wo-firmware
145 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
146 endef
147
148 define Device/smartrg_sdg-8612
149 $(call Device/adtran_smartrg)
150 DEVICE_MODEL := SDG-8612
151 DEVICE_DTS := mt7986a-smartrg-SDG-8612
152 endef
153 TARGET_DEVICES += smartrg_sdg-8612
154
155 define Device/smartrg_sdg-8614
156 $(call Device/adtran_smartrg)
157 DEVICE_MODEL := SDG-8614
158 DEVICE_DTS := mt7986a-smartrg-SDG-8614
159 endef
160 TARGET_DEVICES += smartrg_sdg-8614
161
162 define Device/smartrg_sdg-8622
163 $(call Device/adtran_smartrg)
164 DEVICE_MODEL := SDG-8622
165 DEVICE_DTS := mt7986a-smartrg-SDG-8622
166 DEVICE_PACKAGES += kmod-mt7915-firmware
167 endef
168 TARGET_DEVICES += smartrg_sdg-8622
169
170 define Device/smartrg_sdg-8632
171 $(call Device/adtran_smartrg)
172 DEVICE_MODEL := SDG-8632
173 DEVICE_DTS := mt7986a-smartrg-SDG-8632
174 DEVICE_PACKAGES += kmod-mt7915-firmware
175 endef
176 TARGET_DEVICES += smartrg_sdg-8632
177
178 define Device/asus_rt-ax59u
179 DEVICE_VENDOR := ASUS
180 DEVICE_MODEL := RT-AX59U
181 DEVICE_DTS := mt7986a-asus-rt-ax59u
182 DEVICE_DTS_DIR := ../dts
183 DEVICE_PACKAGES := kmod-usb3 kmod-mt7986-firmware mt7986-wo-firmware
184 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
185 endef
186 TARGET_DEVICES += asus_rt-ax59u
187
188 define Device/asus_tuf-ax4200
189 DEVICE_VENDOR := ASUS
190 DEVICE_MODEL := TUF-AX4200
191 DEVICE_DTS := mt7986a-asus-tuf-ax4200
192 DEVICE_DTS_DIR := ../dts
193 DEVICE_DTS_LOADADDR := 0x47000000
194 DEVICE_PACKAGES := kmod-usb3 kmod-mt7986-firmware mt7986-wo-firmware
195 IMAGES := sysupgrade.bin
196 KERNEL := kernel-bin | lzma | \
197 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
198 KERNEL_INITRAMFS := kernel-bin | lzma | \
199 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
200 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
201 endef
202 TARGET_DEVICES += asus_tuf-ax4200
203
204 define Device/asus_tuf-ax6000
205 DEVICE_VENDOR := ASUS
206 DEVICE_MODEL := TUF-AX6000
207 DEVICE_DTS := mt7986a-asus-tuf-ax6000
208 DEVICE_DTS_DIR := ../dts
209 DEVICE_DTS_LOADADDR := 0x47000000
210 DEVICE_PACKAGES := kmod-usb3 kmod-mt7986-firmware mt7986-wo-firmware
211 IMAGES := sysupgrade.bin
212 KERNEL := kernel-bin | lzma | \
213 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
214 KERNEL_INITRAMFS := kernel-bin | lzma | \
215 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
216 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
217 endef
218 TARGET_DEVICES += asus_tuf-ax6000
219
220 define Device/bananapi_bpi-r3
221 DEVICE_VENDOR := Bananapi
222 DEVICE_MODEL := BPi-R3
223 DEVICE_DTS := mt7986a-bananapi-bpi-r3
224 DEVICE_DTS_CONFIG := config-mt7986a-bananapi-bpi-r3
225 DEVICE_DTS_OVERLAY:= mt7986a-bananapi-bpi-r3-emmc mt7986a-bananapi-bpi-r3-nand \
226 mt7986a-bananapi-bpi-r3-nor mt7986a-bananapi-bpi-r3-sd \
227 mt7986a-bananapi-bpi-r3-respeaker-2mics
228 DEVICE_DTS_DIR := $(DTS_DIR)/
229 DEVICE_DTS_LOADADDR := 0x43f00000
230 DEVICE_PACKAGES := kmod-hwmon-pwmfan kmod-i2c-gpio kmod-mt7986-firmware kmod-sfp kmod-usb3 e2fsprogs f2fsck mkf2fs mt7986-wo-firmware
231 IMAGES := sysupgrade.itb
232 KERNEL_LOADADDR := 0x44000000
233 KERNEL_INITRAMFS_SUFFIX := -recovery.itb
234 ARTIFACTS := \
235 emmc-preloader.bin emmc-bl31-uboot.fip \
236 nor-preloader.bin nor-bl31-uboot.fip \
237 sdcard.img.gz \
238 snand-preloader.bin snand-bl31-uboot.fip
239 ARTIFACT/emmc-preloader.bin := mt7986-bl2 emmc-ddr4
240 ARTIFACT/emmc-bl31-uboot.fip := mt7986-bl31-uboot bananapi_bpi-r3-emmc
241 ARTIFACT/nor-preloader.bin := mt7986-bl2 nor-ddr4
242 ARTIFACT/nor-bl31-uboot.fip := mt7986-bl31-uboot bananapi_bpi-r3-nor
243 ARTIFACT/snand-preloader.bin := mt7986-bl2 spim-nand-ddr4
244 ARTIFACT/snand-bl31-uboot.fip := mt7986-bl31-uboot bananapi_bpi-r3-snand
245 ARTIFACT/sdcard.img.gz := mt798x-gpt sdmmc |\
246 pad-to 17k | mt7986-bl2 sdmmc-ddr4 |\
247 pad-to 6656k | mt7986-bl31-uboot bananapi_bpi-r3-sdmmc |\
248 $(if $(CONFIG_TARGET_ROOTFS_INITRAMFS),\
249 pad-to 12M | append-image-stage initramfs-recovery.itb | check-size 44m |\
250 ) \
251 pad-to 44M | mt7986-bl2 spim-nand-ddr4 |\
252 pad-to 45M | mt7986-bl31-uboot bananapi_bpi-r3-snand |\
253 pad-to 49M | mt7986-bl2 nor-ddr4 |\
254 pad-to 50M | mt7986-bl31-uboot bananapi_bpi-r3-nor |\
255 pad-to 51M | mt7986-bl2 emmc-ddr4 |\
256 pad-to 52M | mt7986-bl31-uboot bananapi_bpi-r3-emmc |\
257 pad-to 56M | mt798x-gpt emmc |\
258 $(if $(CONFIG_TARGET_ROOTFS_SQUASHFS),\
259 pad-to 64M | append-image squashfs-sysupgrade.itb | check-size |\
260 ) \
261 gzip
262 ifeq ($(DUMP),)
263 IMAGE_SIZE := $$(shell expr 64 + $$(CONFIG_TARGET_ROOTFS_PARTSIZE))m
264 endif
265 KERNEL := kernel-bin | gzip
266 KERNEL_INITRAMFS := kernel-bin | lzma | \
267 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
268 IMAGE/sysupgrade.itb := append-kernel | fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | pad-rootfs | append-metadata
269 DEVICE_DTC_FLAGS := --pad 4096
270 DEVICE_COMPAT_VERSION := 1.1
271 DEVICE_COMPAT_MESSAGE := Device tree overlay mechanism needs bootloader update
272 endef
273 TARGET_DEVICES += bananapi_bpi-r3
274
275 define Device/cetron_ct3003
276 DEVICE_VENDOR := Cetron
277 DEVICE_MODEL := CT3003
278 DEVICE_DTS := mt7981b-cetron-ct3003
279 DEVICE_DTS_DIR := ../dts
280 SUPPORTED_DEVICES += mediatek,mt7981-spim-snand-rfb
281 DEVICE_PACKAGES := kmod-mt7981-firmware mt7981-wo-firmware
282 UBINIZE_OPTS := -E 5
283 BLOCKSIZE := 128k
284 PAGESIZE := 2048
285 KERNEL_IN_UBI := 1
286 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
287 IMAGES += factory.bin
288 IMAGE/factory.bin := $$(IMAGE/sysupgrade.bin) | cetron-header rd30 CT3003
289 endef
290 TARGET_DEVICES += cetron_ct3003
291
292 define Device/cmcc_rax3000m
293 DEVICE_VENDOR := CMCC
294 DEVICE_MODEL := RAX3000M
295 DEVICE_DTS := mt7981b-cmcc-rax3000m
296 DEVICE_DTS_OVERLAY := mt7981b-cmcc-rax3000m-emmc mt7981b-cmcc-rax3000m-nand
297 DEVICE_DTS_DIR := ../dts
298 DEVICE_DTC_FLAGS := --pad 4096
299 DEVICE_DTS_LOADADDR := 0x43f00000
300 DEVICE_PACKAGES := kmod-mt7981-firmware mt7981-wo-firmware kmod-usb3 \
301 e2fsprogs f2fsck mkf2fs
302 KERNEL_LOADADDR := 0x44000000
303 KERNEL := kernel-bin | gzip
304 KERNEL_INITRAMFS := kernel-bin | lzma | \
305 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
306 KERNEL_INITRAMFS_SUFFIX := -recovery.itb
307 KERNEL_IN_UBI := 1
308 UBOOTENV_IN_UBI := 1
309 IMAGES := sysupgrade.itb
310 IMAGE_SIZE := $$(shell expr 64 + $$(CONFIG_TARGET_ROOTFS_PARTSIZE))m
311 IMAGE/sysupgrade.itb := append-kernel | \
312 fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | \
313 pad-rootfs | append-metadata
314 ARTIFACTS := \
315 emmc-gpt.bin emmc-preloader.bin emmc-bl31-uboot.fip \
316 nand-preloader.bin nand-bl31-uboot.fip
317 ARTIFACT/emmc-gpt.bin := mt798x-gpt emmc
318 ARTIFACT/emmc-preloader.bin := mt7981-bl2 emmc-ddr4
319 ARTIFACT/emmc-bl31-uboot.fip := mt7981-bl31-uboot cmcc_rax3000m-emmc
320 ARTIFACT/nand-preloader.bin := mt7981-bl2 spim-nand-ddr4
321 ARTIFACT/nand-bl31-uboot.fip := mt7981-bl31-uboot cmcc_rax3000m-nand
322 endef
323 TARGET_DEVICES += cmcc_rax3000m
324
325 define Device/comfast_cf-e393ax
326 DEVICE_VENDOR := Comfast
327 DEVICE_MODEL := CF-E393AX
328 DEVICE_DTS := mt7981a-comfast-cf-e393ax
329 DEVICE_DTS_DIR := ../dts
330 DEVICE_DTC_FLAGS := --pad 4096
331 DEVICE_DTS_LOADADDR := 0x43f00000
332 DEVICE_PACKAGES := kmod-mt7981-firmware mt7981-wo-firmware
333 KERNEL_LOADADDR := 0x44000000
334 KERNEL = kernel-bin | lzma | \
335 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
336 KERNEL_INITRAMFS = kernel-bin | lzma | \
337 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd
338 UBINIZE_OPTS := -E 5
339 BLOCKSIZE := 128k
340 PAGESIZE := 2048
341 IMAGE_SIZE := 65536k
342 KERNEL_IN_UBI := 1
343 IMAGES := sysupgrade.bin factory.bin
344 IMAGE/factory.bin := append-ubi | check-size $$$$(IMAGE_SIZE)
345 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
346 endef
347 TARGET_DEVICES += comfast_cf-e393ax
348
349 define Device/confiabits_mt7981
350 DEVICE_VENDOR := Confiabits
351 DEVICE_MODEL := MT7981
352 DEVICE_DTS := mt7981b-confiabits-mt7981
353 DEVICE_DTS_DIR := ../dts
354 SUPPORTED_DEVICES += mediatek,mt7981-spim-snand-2500wan-gmac2-rfb
355 UBINIZE_OPTS := -E 5
356 BLOCKSIZE := 128k
357 PAGESIZE := 2048
358 IMAGE_SIZE := 65536k
359 KERNEL_IN_UBI := 1
360 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
361 DEVICE_PACKAGES := kmod-usb3 kmod-mt7981-firmware mt7981-wo-firmware
362 endef
363 TARGET_DEVICES += confiabits_mt7981
364
365 define Device/cudy_wr3000-v1
366 DEVICE_VENDOR := Cudy
367 DEVICE_MODEL := WR3000
368 DEVICE_VARIANT := v1
369 DEVICE_DTS := mt7981b-cudy-wr3000-v1
370 DEVICE_DTS_DIR := ../dts
371 DEVICE_DTS_LOADADDR := 0x47000000
372 IMAGES := sysupgrade.bin
373 IMAGE_SIZE := 15424k
374 SUPPORTED_DEVICES += R31
375 KERNEL := kernel-bin | lzma | \
376 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
377 KERNEL_INITRAMFS := kernel-bin | lzma | \
378 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
379 IMAGE/sysupgrade.bin := append-kernel | pad-to 128k | append-rootfs | pad-rootfs | check-size | append-metadata
380 DEVICE_PACKAGES := kmod-mt7981-firmware mt7981-wo-firmware
381 endef
382 TARGET_DEVICES += cudy_wr3000-v1
383
384 define Device/glinet_gl-mt2500
385 DEVICE_VENDOR := GL.iNet
386 DEVICE_MODEL := GL-MT2500
387 DEVICE_DTS := mt7981b-glinet-gl-mt2500
388 DEVICE_DTS_DIR := ../dts
389 DEVICE_DTS_LOADADDR := 0x47000000
390 DEVICE_PACKAGES := -kmod-mt7915e -wpad-basic-mbedtls e2fsprogs f2fsck mkf2fs kmod-usb3
391 SUPPORTED_DEVICES += glinet,mt2500-emmc
392 IMAGES := sysupgrade.bin
393 IMAGE/sysupgrade.bin := sysupgrade-tar | append-gl-metadata
394 endef
395 TARGET_DEVICES += glinet_gl-mt2500
396
397 define Device/glinet_gl-mt3000
398 DEVICE_VENDOR := GL.iNet
399 DEVICE_MODEL := GL-MT3000
400 DEVICE_DTS := mt7981b-glinet-gl-mt3000
401 DEVICE_DTS_DIR := ../dts
402 SUPPORTED_DEVICES += glinet,mt3000-snand
403 DEVICE_PACKAGES := kmod-mt7981-firmware mt7981-wo-firmware kmod-hwmon-pwmfan kmod-usb3
404 UBINIZE_OPTS := -E 5
405 BLOCKSIZE := 128k
406 PAGESIZE := 2048
407 IMAGE_SIZE := 246272k
408 KERNEL_IN_UBI := 1
409 IMAGE/sysupgrade.bin := sysupgrade-tar | append-gl-metadata
410 endef
411 TARGET_DEVICES += glinet_gl-mt3000
412
413 define Device/glinet_gl-mt6000
414 DEVICE_VENDOR := GL.iNet
415 DEVICE_MODEL := GL-MT6000
416 DEVICE_DTS := mt7986a-glinet-gl-mt6000
417 DEVICE_DTS_DIR := ../dts
418 DEVICE_PACKAGES := e2fsprogs f2fsck mkf2fs kmod-usb3 kmod-mt7986-firmware mt7986-wo-firmware
419 IMAGES += factory.bin
420 IMAGE/factory.bin := append-kernel | pad-to 32M | append-rootfs
421 IMAGE/sysupgrade.bin := sysupgrade-tar | append-gl-metadata
422 ARTIFACTS := preloader.bin bl31-uboot.fip
423 ARTIFACT/preloader.bin := mt7986-bl2 emmc-ddr4
424 ARTIFACT/bl31-uboot.fip := mt7986-bl31-uboot glinet_gl-mt6000
425 endef
426 TARGET_DEVICES += glinet_gl-mt6000
427
428 define Device/h3c_magic-nx30-pro
429 DEVICE_VENDOR := H3C
430 DEVICE_MODEL := Magic NX30 Pro
431 DEVICE_DTS := mt7981b-h3c-magic-nx30-pro
432 DEVICE_DTS_DIR := ../dts
433 UBINIZE_OPTS := -E 5
434 BLOCKSIZE := 128k
435 PAGESIZE := 2048
436 KERNEL_IN_UBI := 1
437 UBOOTENV_IN_UBI := 1
438 IMAGE_SIZE := 65536k
439 IMAGES := sysupgrade.itb
440 KERNEL_INITRAMFS_SUFFIX := -recovery.itb
441 KERNEL := kernel-bin | gzip
442 KERNEL_INITRAMFS := kernel-bin | lzma | \
443 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
444 IMAGE/sysupgrade.itb := append-kernel | \
445 fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | append-metadata
446 DEVICE_PACKAGES := kmod-mt7981-firmware mt7981-wo-firmware
447 ARTIFACTS := preloader.bin bl31-uboot.fip
448 ARTIFACT/preloader.bin := mt7981-bl2 spim-nand-ddr3
449 ARTIFACT/bl31-uboot.fip := mt7981-bl31-uboot h3c_magic-nx30-pro
450 endef
451 TARGET_DEVICES += h3c_magic-nx30-pro
452
453 define Device/jcg_q30-pro
454 DEVICE_VENDOR := JCG
455 DEVICE_MODEL := Q30 PRO
456 DEVICE_DTS := mt7981b-jcg-q30-pro
457 DEVICE_DTS_DIR := ../dts
458 UBINIZE_OPTS := -E 5
459 BLOCKSIZE := 128k
460 PAGESIZE := 2048
461 KERNEL_IN_UBI := 1
462 UBOOTENV_IN_UBI := 1
463 IMAGES := sysupgrade.itb
464 KERNEL_INITRAMFS_SUFFIX := -recovery.itb
465 KERNEL := kernel-bin | gzip
466 KERNEL_INITRAMFS := kernel-bin | lzma | \
467 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
468 IMAGE/sysupgrade.itb := append-kernel | \
469 fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | append-metadata
470 DEVICE_PACKAGES := kmod-mt7981-firmware mt7981-wo-firmware
471 ARTIFACTS := preloader.bin bl31-uboot.fip
472 ARTIFACT/preloader.bin := mt7981-bl2 spim-nand-ddr3
473 ARTIFACT/bl31-uboot.fip := mt7981-bl31-uboot jcg_q30-pro
474 endef
475 TARGET_DEVICES += jcg_q30-pro
476
477 define Device/jdcloud_re-cp-03
478 DEVICE_VENDOR := JDCloud
479 DEVICE_MODEL := RE-CP-03
480 DEVICE_DTS := mt7986a-jdcloud-re-cp-03
481 DEVICE_DTS_DIR := ../dts
482 DEVICE_DTC_FLAGS := --pad 4096
483 DEVICE_DTS_LOADADDR := 0x43f00000
484 DEVICE_PACKAGES := kmod-mt7986-firmware mt7986-wo-firmware \
485 e2fsprogs f2fsck mkf2fs
486 KERNEL_LOADADDR := 0x44000000
487 KERNEL := kernel-bin | gzip
488 KERNEL_INITRAMFS := kernel-bin | lzma | \
489 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
490 KERNEL_INITRAMFS_SUFFIX := -recovery.itb
491 IMAGES := sysupgrade.itb
492 IMAGE_SIZE := $$(shell expr 64 + $$(CONFIG_TARGET_ROOTFS_PARTSIZE))m
493 IMAGE/sysupgrade.itb := append-kernel | \
494 fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | \
495 pad-rootfs | append-metadata
496 ARTIFACTS :=gpt.bin preloader.bin bl31-uboot.fip
497 ARTIFACT/gpt.bin := mt798x-gpt emmc
498 ARTIFACT/preloader.bin := mt7986-bl2 emmc-ddr4
499 ARTIFACT/bl31-uboot.fip := mt7986-bl31-uboot jdcloud_re-cp-03
500 endef
501 TARGET_DEVICES += jdcloud_re-cp-03
502
503 define Device/mediatek_mt7981-rfb
504 DEVICE_VENDOR := MediaTek
505 DEVICE_MODEL := MT7981 rfb
506 DEVICE_DTS := mt7981-rfb
507 DEVICE_DTS_OVERLAY:= \
508 mt7981-rfb-spim-nand \
509 mt7981-rfb-mxl-2p5g-phy-eth1 \
510 mt7981-rfb-mxl-2p5g-phy-swp5
511 DEVICE_DTS_DIR := $(DTS_DIR)/
512 DEVICE_DTC_FLAGS := --pad 4096
513 DEVICE_DTS_LOADADDR := 0x43f00000
514 DEVICE_PACKAGES := kmod-mt7981-firmware kmod-usb3 e2fsprogs f2fsck mkf2fs mt7981-wo-firmware
515 KERNEL_LOADADDR := 0x44000000
516 KERNEL := kernel-bin | gzip
517 KERNEL_INITRAMFS := kernel-bin | lzma | \
518 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
519 KERNEL_INITRAMFS_SUFFIX := .itb
520 KERNEL_IN_UBI := 1
521 UBOOTENV_IN_UBI := 1
522 IMAGES := sysupgrade.itb
523 IMAGE_SIZE := $$(shell expr 64 + $$(CONFIG_TARGET_ROOTFS_PARTSIZE))m
524 IMAGE/sysupgrade.itb := append-kernel | fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-with-rootfs | pad-rootfs | append-metadata
525 ARTIFACTS := \
526 emmc-preloader.bin emmc-bl31-uboot.fip \
527 nor-preloader.bin nor-bl31-uboot.fip \
528 sdcard.img.gz \
529 snfi-nand-preloader.bin snfi-nand-bl31-uboot.fip \
530 spim-nand-preloader.bin spim-nand-bl31-uboot.fip
531 ARTIFACT/emmc-preloader.bin := mt7981-bl2 emmc-ddr3
532 ARTIFACT/emmc-bl31-uboot.fip := mt7981-bl31-uboot rfb-emmc
533 ARTIFACT/nor-preloader.bin := mt7981-bl2 nor-ddr3
534 ARTIFACT/nor-bl31-uboot.fip := mt7981-bl31-uboot rfb-emmc
535 ARTIFACT/snfi-nand-preloader.bin := mt7981-bl2 snand-ddr3
536 ARTIFACT/snfi-nand-bl31-uboot.fip := mt7981-bl31-uboot rfb-snfi
537 ARTIFACT/spim-nand-preloader.bin := mt7981-bl2 spim-nand-ddr3
538 ARTIFACT/spim-nand-bl31-uboot.fip := mt7981-bl31-uboot rfb-spim-nand
539 ARTIFACT/sdcard.img.gz := mt798x-gpt sdmmc |\
540 pad-to 17k | mt7981-bl2 sdmmc-ddr3 |\
541 pad-to 6656k | mt7981-bl31-uboot rfb-sd |\
542 $(if $(CONFIG_TARGET_ROOTFS_INITRAMFS),\
543 pad-to 12M | append-image-stage initramfs.itb | check-size 44m |\
544 ) \
545 pad-to 44M | mt7981-bl2 spim-nand-ddr3 |\
546 pad-to 45M | mt7981-bl31-uboot rfb-spim-nand |\
547 pad-to 49M | mt7981-bl2 nor-ddr3 |\
548 pad-to 50M | mt7981-bl31-uboot rfb-nor |\
549 pad-to 51M | mt7981-bl2 snand-ddr3 |\
550 pad-to 53M | mt7981-bl31-uboot rfb-snfi |\
551 $(if $(CONFIG_TARGET_ROOTFS_SQUASHFS),\
552 pad-to 64M | append-image squashfs-sysupgrade.itb | check-size |\
553 ) \
554 gzip
555 endef
556 TARGET_DEVICES += mediatek_mt7981-rfb
557
558 define Device/mediatek_mt7986a-rfb-nand
559 DEVICE_VENDOR := MediaTek
560 DEVICE_MODEL := MT7986 rfba AP (NAND)
561 DEVICE_DTS := mt7986a-rfb-spim-nand
562 DEVICE_DTS_DIR := $(DTS_DIR)/
563 DEVICE_PACKAGES := kmod-mt7986-firmware mt7986-wo-firmware
564 SUPPORTED_DEVICES := mediatek,mt7986a-rfb-snand
565 UBINIZE_OPTS := -E 5
566 BLOCKSIZE := 128k
567 PAGESIZE := 2048
568 IMAGE_SIZE := 65536k
569 KERNEL_IN_UBI := 1
570 IMAGES += factory.bin
571 IMAGE/factory.bin := append-ubi | check-size $$$$(IMAGE_SIZE)
572 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
573 KERNEL = kernel-bin | lzma | \
574 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
575 KERNEL_INITRAMFS = kernel-bin | lzma | \
576 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd
577 endef
578 TARGET_DEVICES += mediatek_mt7986a-rfb-nand
579
580 define Device/mediatek_mt7986b-rfb
581 DEVICE_VENDOR := MediaTek
582 DEVICE_MODEL := MTK7986 rfbb AP
583 DEVICE_DTS := mt7986b-rfb
584 DEVICE_DTS_DIR := $(DTS_DIR)/
585 DEVICE_PACKAGES := kmod-mt7986-firmware mt7986-wo-firmware
586 SUPPORTED_DEVICES := mediatek,mt7986b-rfb
587 UBINIZE_OPTS := -E 5
588 BLOCKSIZE := 128k
589 PAGESIZE := 2048
590 IMAGE_SIZE := 65536k
591 KERNEL_IN_UBI := 1
592 IMAGES += factory.bin
593 IMAGE/factory.bin := append-ubi | check-size $$$$(IMAGE_SIZE)
594 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
595 endef
596 TARGET_DEVICES += mediatek_mt7986b-rfb
597
598 define Device/mediatek_mt7988a-rfb
599 DEVICE_VENDOR := MediaTek
600 DEVICE_MODEL := MT7988A rfb
601 DEVICE_DTS := mt7988a-rfb
602 DEVICE_DTS_OVERLAY:= \
603 mt7988a-rfb-emmc \
604 mt7988a-rfb-sd \
605 mt7988a-rfb-snfi-nand \
606 mt7988a-rfb-spim-nand \
607 mt7988a-rfb-spim-nor \
608 mt7988a-rfb-eth1-aqr \
609 mt7988a-rfb-eth1-i2p5g-phy \
610 mt7988a-rfb-eth1-mxl \
611 mt7988a-rfb-eth1-sfp \
612 mt7988a-rfb-eth2-aqr \
613 mt7988a-rfb-eth2-mxl \
614 mt7988a-rfb-eth2-sfp
615 DEVICE_DTS_DIR := $(DTS_DIR)/
616 DEVICE_DTC_FLAGS := --pad 4096
617 DEVICE_DTS_LOADADDR := 0x45f00000
618 DEVICE_PACKAGES := kmod-sfp
619 KERNEL_LOADADDR := 0x46000000
620 KERNEL := kernel-bin | gzip
621 KERNEL_INITRAMFS := kernel-bin | lzma | \
622 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
623 KERNEL_INITRAMFS_SUFFIX := .itb
624 KERNEL_IN_UBI := 1
625 IMAGE_SIZE := $$(shell expr 64 + $$(CONFIG_TARGET_ROOTFS_PARTSIZE))m
626 IMAGES := sysupgrade.itb
627 IMAGE/sysupgrade.itb := append-kernel | fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-with-rootfs | pad-rootfs | append-metadata
628 ARTIFACTS := \
629 emmc-gpt.bin emmc-preloader.bin emmc-bl31-uboot.fip \
630 nor-preloader.bin nor-bl31-uboot.fip \
631 sdcard.img.gz \
632 snand-preloader.bin snand-bl31-uboot.fip
633 ARTIFACT/emmc-gpt.bin := mt798x-gpt emmc
634 ARTIFACT/emmc-preloader.bin := mt7988-bl2 emmc-comb
635 ARTIFACT/emmc-bl31-uboot.fip := mt7988-bl31-uboot rfb-emmc
636 ARTIFACT/nor-preloader.bin := mt7988-bl2 nor-comb
637 ARTIFACT/nor-bl31-uboot.fip := mt7988-bl31-uboot rfb-nor
638 ARTIFACT/snand-preloader.bin := mt7988-bl2 spim-nand-comb
639 ARTIFACT/snand-bl31-uboot.fip := mt7988-bl31-uboot rfb-snand
640 ARTIFACT/sdcard.img.gz := mt798x-gpt sdmmc |\
641 pad-to 17k | mt7988-bl2 sdmmc-comb |\
642 pad-to 6656k | mt7988-bl31-uboot rfb-sd |\
643 $(if $(CONFIG_TARGET_ROOTFS_INITRAMFS),\
644 pad-to 12M | append-image-stage initramfs.itb | check-size 44m |\
645 ) \
646 pad-to 44M | mt7988-bl2 spim-nand-comb |\
647 pad-to 45M | mt7988-bl31-uboot rfb-snand |\
648 pad-to 51M | mt7988-bl2 nor-comb |\
649 pad-to 51M | mt7988-bl31-uboot rfb-nor |\
650 pad-to 55M | mt7988-bl2 emmc-comb |\
651 pad-to 56M | mt7988-bl31-uboot rfb-emmc |\
652 pad-to 62M | mt798x-gpt emmc |\
653 $(if $(CONFIG_TARGET_ROOTFS_SQUASHFS),\
654 pad-to 64M | append-image squashfs-sysupgrade.itb | check-size |\
655 ) \
656 gzip
657 endef
658 TARGET_DEVICES += mediatek_mt7988a-rfb
659
660 define Device/mercusys_mr90x-v1
661 DEVICE_VENDOR := MERCUSYS
662 DEVICE_MODEL := MR90X v1
663 DEVICE_DTS := mt7986b-mercusys-mr90x-v1
664 DEVICE_DTS_DIR := ../dts
665 DEVICE_PACKAGES := kmod-mt7986-firmware mt7986-wo-firmware
666 UBINIZE_OPTS := -E 5
667 BLOCKSIZE := 128k
668 PAGESIZE := 2048
669 IMAGE_SIZE := 51200k
670 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
671 endef
672 TARGET_DEVICES += mercusys_mr90x-v1
673
674 define Device/netgear_wax220
675 DEVICE_VENDOR := NETGEAR
676 DEVICE_MODEL := WAX220
677 DEVICE_DTS := mt7986b-netgear-wax220
678 DEVICE_DTS_DIR := ../dts
679 NETGEAR_ENC_MODEL := WAX220
680 NETGEAR_ENC_REGION := US
681 DEVICE_PACKAGES := kmod-mt7986-firmware mt7986-wo-firmware
682 KERNEL_INITRAMFS_SUFFIX := -recovery.itb
683 IMAGE_SIZE := 32768k
684 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
685 IMAGES += factory.img
686 # Padding to 10M seems to be required by OEM web interface
687 IMAGE/factory.img := sysupgrade-tar | \
688 pad-to 10M | check-size | netgear-encrypted-factory
689 endef
690 TARGET_DEVICES += netgear_wax220
691
692 define Device/qihoo_360t7
693 DEVICE_VENDOR := Qihoo
694 DEVICE_MODEL := 360T7
695 DEVICE_DTS := mt7981b-qihoo-360t7
696 DEVICE_DTS_DIR := ../dts
697 UBINIZE_OPTS := -E 5
698 BLOCKSIZE := 128k
699 PAGESIZE := 2048
700 KERNEL_IN_UBI := 1
701 UBOOTENV_IN_UBI := 1
702 IMAGES := sysupgrade.itb
703 KERNEL_INITRAMFS_SUFFIX := -recovery.itb
704 KERNEL := kernel-bin | gzip
705 KERNEL_INITRAMFS := kernel-bin | lzma | \
706 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
707 IMAGE/sysupgrade.itb := append-kernel | \
708 fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | append-metadata
709 DEVICE_PACKAGES := kmod-mt7981-firmware mt7981-wo-firmware
710 ARTIFACTS := preloader.bin bl31-uboot.fip
711 ARTIFACT/preloader.bin := mt7981-bl2 spim-nand-ddr3
712 ARTIFACT/bl31-uboot.fip := mt7981-bl31-uboot qihoo_360t7
713 endef
714 TARGET_DEVICES += qihoo_360t7
715
716 define Device/routerich_ax3000
717 DEVICE_VENDOR := Routerich
718 DEVICE_MODEL := AX3000
719 DEVICE_DTS := mt7981b-routerich-ax3000
720 DEVICE_DTS_DIR := ../dts
721 DEVICE_PACKAGES := kmod-mt7981-firmware mt7981-wo-firmware kmod-usb3
722 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
723 SUPPORTED_DEVICES += mediatek,mt7981-spim-snand-rfb
724 endef
725 TARGET_DEVICES += routerich_ax3000
726
727 define Device/tplink_tl-xdr-common
728 DEVICE_VENDOR := TP-Link
729 DEVICE_DTS_DIR := ../dts
730 UBINIZE_OPTS := -E 5
731 BLOCKSIZE := 128k
732 PAGESIZE := 2048
733 KERNEL_IN_UBI := 1
734 UBOOTENV_IN_UBI := 1
735 IMAGES := sysupgrade.itb
736 KERNEL_INITRAMFS_SUFFIX := -recovery.itb
737 KERNEL := kernel-bin | gzip
738 KERNEL_INITRAMFS := kernel-bin | lzma | \
739 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
740 IMAGE/sysupgrade.itb := append-kernel | \
741 fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-with-rootfs | append-metadata
742 DEVICE_PACKAGES := kmod-usb3 kmod-mt7986-firmware mt7986-wo-firmware
743 ARTIFACTS := preloader.bin bl31-uboot.fip
744 ARTIFACT/preloader.bin := mt7986-bl2 spim-nand-ddr3
745 endef
746
747 define Device/tplink_tl-xdr4288
748 DEVICE_MODEL := TL-XDR4288
749 DEVICE_DTS := mt7986a-tplink-tl-xdr4288
750 ARTIFACT/bl31-uboot.fip := mt7986-bl31-uboot tplink_tl-xdr4288
751 $(call Device/tplink_tl-xdr-common)
752 endef
753 TARGET_DEVICES += tplink_tl-xdr4288
754
755 define Device/tplink_tl-xdr6086
756 DEVICE_MODEL := TL-XDR6086
757 DEVICE_DTS := mt7986a-tplink-tl-xdr6086
758 ARTIFACT/bl31-uboot.fip := mt7986-bl31-uboot tplink_tl-xdr6086
759 $(call Device/tplink_tl-xdr-common)
760 endef
761 TARGET_DEVICES += tplink_tl-xdr6086
762
763 define Device/tplink_tl-xdr6088
764 DEVICE_MODEL := TL-XDR6088
765 DEVICE_DTS := mt7986a-tplink-tl-xdr6088
766 ARTIFACT/bl31-uboot.fip := mt7986-bl31-uboot tplink_tl-xdr6088
767 $(call Device/tplink_tl-xdr-common)
768 endef
769 TARGET_DEVICES += tplink_tl-xdr6088
770
771 define Device/ubnt_unifi-6-plus
772 DEVICE_VENDOR := Ubiquiti
773 DEVICE_MODEL := UniFi 6 Plus
774 DEVICE_DTS := mt7981a-ubnt-unifi-6-plus
775 DEVICE_DTS_DIR := ../dts
776 DEVICE_PACKAGES := kmod-mt7981-firmware mt7981-wo-firmware e2fsprogs f2fsck mkf2fs fdisk partx-utils
777 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
778 endef
779 TARGET_DEVICES += ubnt_unifi-6-plus
780
781 define Device/xiaomi_mi-router-ax3000t
782 DEVICE_VENDOR := Xiaomi
783 DEVICE_MODEL := Mi Router AX3000T
784 DEVICE_DTS := mt7981b-xiaomi-mi-router-ax3000t
785 DEVICE_DTS_DIR := ../dts
786 UBINIZE_OPTS := -E 5
787 BLOCKSIZE := 128k
788 PAGESIZE := 2048
789 DEVICE_PACKAGES := kmod-mt7981-firmware mt7981-wo-firmware
790 ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
791 ARTIFACTS := initramfs-factory.ubi
792 ARTIFACT/initramfs-factory.ubi := append-image-stage initramfs-kernel.bin | ubinize-kernel
793 endif
794 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
795 endef
796 TARGET_DEVICES += xiaomi_mi-router-ax3000t
797
798 define Device/xiaomi_mi-router-ax3000t-ubootmod
799 DEVICE_VENDOR := Xiaomi
800 DEVICE_MODEL := Mi Router AX3000T (OpenWrt U-Boot layout)
801 DEVICE_DTS := mt7981b-xiaomi-mi-router-ax3000t-ubootmod
802 DEVICE_DTS_DIR := ../dts
803 UBINIZE_OPTS := -E 5
804 BLOCKSIZE := 128k
805 PAGESIZE := 2048
806 DEVICE_PACKAGES := kmod-mt7981-firmware mt7981-wo-firmware
807 KERNEL_IN_UBI := 1
808 UBOOTENV_IN_UBI := 1
809 IMAGES := sysupgrade.itb
810 KERNEL_INITRAMFS_SUFFIX := -recovery.itb
811 KERNEL := kernel-bin | gzip
812 KERNEL_INITRAMFS := kernel-bin | lzma | \
813 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
814 IMAGE/sysupgrade.itb := append-kernel | \
815 fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | append-metadata
816 ARTIFACTS := preloader.bin bl31-uboot.fip
817 ARTIFACT/preloader.bin := mt7981-bl2 spim-nand-ddr3
818 ARTIFACT/bl31-uboot.fip := mt7981-bl31-uboot xiaomi_mi-router-ax3000t
819 ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
820 ARTIFACTS += initramfs-factory.ubi
821 ARTIFACT/initramfs-factory.ubi := append-image-stage initramfs-recovery.itb | ubinize-kernel
822 endif
823 endef
824 TARGET_DEVICES += xiaomi_mi-router-ax3000t-ubootmod
825
826 define Device/xiaomi_mi-router-wr30u-stock
827 DEVICE_VENDOR := Xiaomi
828 DEVICE_MODEL := Mi Router WR30U (stock layout)
829 DEVICE_DTS := mt7981b-xiaomi-mi-router-wr30u-stock
830 DEVICE_DTS_DIR := ../dts
831 UBINIZE_OPTS := -E 5
832 BLOCKSIZE := 128k
833 PAGESIZE := 2048
834 DEVICE_PACKAGES := kmod-mt7981-firmware mt7981-wo-firmware
835 ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
836 ARTIFACTS := initramfs-factory.ubi
837 ARTIFACT/initramfs-factory.ubi := append-image-stage initramfs-kernel.bin | ubinize-kernel
838 endif
839 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
840 endef
841 TARGET_DEVICES += xiaomi_mi-router-wr30u-stock
842
843 define Device/xiaomi_mi-router-wr30u-ubootmod
844 DEVICE_VENDOR := Xiaomi
845 DEVICE_MODEL := Mi Router WR30U (OpenWrt U-Boot layout)
846 DEVICE_DTS := mt7981b-xiaomi-mi-router-wr30u-ubootmod
847 DEVICE_DTS_DIR := ../dts
848 UBINIZE_OPTS := -E 5
849 BLOCKSIZE := 128k
850 PAGESIZE := 2048
851 DEVICE_PACKAGES := kmod-mt7981-firmware mt7981-wo-firmware
852 KERNEL_IN_UBI := 1
853 UBOOTENV_IN_UBI := 1
854 IMAGES := sysupgrade.itb
855 KERNEL_INITRAMFS_SUFFIX := -recovery.itb
856 KERNEL := kernel-bin | gzip
857 KERNEL_INITRAMFS := kernel-bin | lzma | \
858 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
859 IMAGE/sysupgrade.itb := append-kernel | \
860 fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | append-metadata
861 ARTIFACTS := preloader.bin bl31-uboot.fip
862 ARTIFACT/preloader.bin := mt7981-bl2 spim-nand-ddr3
863 ARTIFACT/bl31-uboot.fip := mt7981-bl31-uboot xiaomi_mi-router-wr30u
864 ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
865 ARTIFACTS += initramfs-factory.ubi
866 ARTIFACT/initramfs-factory.ubi := append-image-stage initramfs-recovery.itb | ubinize-kernel
867 endif
868 endef
869 TARGET_DEVICES += xiaomi_mi-router-wr30u-ubootmod
870
871 define Device/xiaomi_redmi-router-ax6000-stock
872 DEVICE_VENDOR := Xiaomi
873 DEVICE_MODEL := Redmi Router AX6000 (stock layout)
874 DEVICE_DTS := mt7986a-xiaomi-redmi-router-ax6000-stock
875 DEVICE_DTS_DIR := ../dts
876 DEVICE_PACKAGES := kmod-leds-ws2812b kmod-mt7986-firmware mt7986-wo-firmware
877 UBINIZE_OPTS := -E 5
878 BLOCKSIZE := 128k
879 PAGESIZE := 2048
880 ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
881 ARTIFACTS := initramfs-factory.ubi
882 ARTIFACT/initramfs-factory.ubi := append-image-stage initramfs-kernel.bin | ubinize-kernel
883 endif
884 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
885 endef
886 TARGET_DEVICES += xiaomi_redmi-router-ax6000-stock
887
888 define Device/xiaomi_redmi-router-ax6000-ubootmod
889 DEVICE_VENDOR := Xiaomi
890 DEVICE_MODEL := Redmi Router AX6000 (OpenWrt U-Boot layout)
891 DEVICE_DTS := mt7986a-xiaomi-redmi-router-ax6000-ubootmod
892 DEVICE_DTS_DIR := ../dts
893 DEVICE_PACKAGES := kmod-leds-ws2812b kmod-mt7986-firmware mt7986-wo-firmware
894 KERNEL_INITRAMFS_SUFFIX := -recovery.itb
895 IMAGES := sysupgrade.itb
896 UBINIZE_OPTS := -E 5
897 BLOCKSIZE := 128k
898 PAGESIZE := 2048
899 KERNEL_IN_UBI := 1
900 UBOOTENV_IN_UBI := 1
901 KERNEL := kernel-bin | gzip
902 KERNEL_INITRAMFS := kernel-bin | lzma | \
903 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
904 IMAGE/sysupgrade.itb := append-kernel | \
905 fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | append-metadata
906 ARTIFACTS := preloader.bin bl31-uboot.fip
907 ARTIFACT/preloader.bin := mt7986-bl2 spim-nand-ddr4
908 ARTIFACT/bl31-uboot.fip := mt7986-bl31-uboot xiaomi_redmi-router-ax6000
909 ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
910 ARTIFACTS += initramfs-factory.ubi
911 ARTIFACT/initramfs-factory.ubi := append-image-stage initramfs-recovery.itb | ubinize-kernel
912 endif
913 endef
914 TARGET_DEVICES += xiaomi_redmi-router-ax6000-ubootmod
915
916 define Device/yuncore_ax835
917 DEVICE_VENDOR := YunCore
918 DEVICE_MODEL := AX835
919 DEVICE_DTS := mt7981b-yuncore-ax835
920 DEVICE_DTS_DIR := ../dts
921 DEVICE_DTS_LOADADDR := 0x47000000
922 IMAGES := sysupgrade.bin
923 IMAGE_SIZE := 14336k
924 SUPPORTED_DEVICES += mediatek,mt7981-spim-nor-rfb
925 KERNEL := kernel-bin | lzma | \
926 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
927 KERNEL_INITRAMFS := kernel-bin | lzma | \
928 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
929 IMAGE/sysupgrade.bin := append-kernel | pad-to 128k | append-rootfs | pad-rootfs | check-size | append-metadata
930 DEVICE_PACKAGES := kmod-mt7981-firmware mt7981-wo-firmware
931 endef
932 TARGET_DEVICES += yuncore_ax835
933
934
935 define Device/zbtlink_zbt-z8102ax
936 DEVICE_VENDOR := Zbtlink
937 DEVICE_MODEL := ZBT-Z8102AX
938 DEVICE_DTS := mt7981b-zbtlink-zbt-z8102ax
939 DEVICE_DTS_DIR := ../dts
940 DEVICE_PACKAGES := kmod-mt7981-firmware mt7981-wo-firmware kmod-usb3 kmod-usb-net-qmi-wwan kmod-usb-serial-option
941 KERNEL_IN_UBI := 1
942 UBINIZE_OPTS := -E 5
943 BLOCKSIZE := 128k
944 PAGESIZE := 2048
945 IMAGE_SIZE := 65536k
946 IMAGES += factory.bin
947 IMAGE/factory.bin := append-ubi | check-size $$(IMAGE_SIZE)
948 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
949 endef
950 TARGET_DEVICES += zbtlink_zbt-z8102ax
951
952 define Device/zbtlink_zbt-z8103ax
953 DEVICE_VENDOR := Zbtlink
954 DEVICE_MODEL := ZBT-Z8103AX
955 DEVICE_DTS := mt7981b-zbtlink-zbt-z8103ax
956 DEVICE_DTS_DIR := ../dts
957 DEVICE_PACKAGES := kmod-mt7981-firmware mt7981-wo-firmware
958 KERNEL_IN_UBI := 1
959 UBINIZE_OPTS := -E 5
960 BLOCKSIZE := 128k
961 PAGESIZE := 2048
962 IMAGE_SIZE := 65536k
963 IMAGES += factory.bin
964 IMAGE/factory.bin := append-ubi | check-size $$(IMAGE_SIZE)
965 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
966 endef
967 TARGET_DEVICES += zbtlink_zbt-z8103ax
968
969 define Device/zyxel_ex5601-t0-stock
970 DEVICE_VENDOR := Zyxel
971 DEVICE_MODEL := EX5601-T0
972 DEVICE_VARIANT := (stock layout)
973 DEVICE_DTS := mt7986a-zyxel-ex5601-t0-stock
974 DEVICE_DTS_DIR := ../dts
975 DEVICE_PACKAGES := kmod-mt7986-firmware mt7986-wo-firmware kmod-usb3
976 SUPPORTED_DEVICES := mediatek,mt7986a-rfb-snand
977 UBINIZE_OPTS := -E 5
978 BLOCKSIZE := 256k
979 PAGESIZE := 4096
980 IMAGE_SIZE := 65536k
981 KERNEL_IN_UBI := 1
982 IMAGES += factory.bin
983 IMAGE/factory.bin := append-ubi | check-size $$$$(IMAGE_SIZE)
984 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
985 KERNEL = kernel-bin | lzma | \
986 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
987 KERNEL_INITRAMFS = kernel-bin | lzma | \
988 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd
989 endef
990 TARGET_DEVICES += zyxel_ex5601-t0-stock
991
992 define Device/zyxel_ex5601-t0-ubootmod
993 DEVICE_VENDOR := Zyxel
994 DEVICE_MODEL := EX5601-T0
995 DEVICE_VARIANT := (OpenWrt U-Boot layout)
996 DEVICE_DTS := mt7986a-zyxel-ex5601-t0-ubootmod
997 DEVICE_DTS_DIR := ../dts
998 DEVICE_PACKAGES := kmod-mt7986-firmware mt7986-wo-firmware kmod-usb3
999 KERNEL_INITRAMFS_SUFFIX := -recovery.itb
1000 IMAGES := sysupgrade.itb
1001 UBINIZE_OPTS := -E 5
1002 BLOCKSIZE := 256k
1003 PAGESIZE := 4096
1004 KERNEL_IN_UBI := 1
1005 UBOOTENV_IN_UBI := 1
1006 KERNEL := kernel-bin | lzma
1007 KERNEL_INITRAMFS := kernel-bin | lzma | \
1008 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd
1009 IMAGE/sysupgrade.itb := append-kernel | \
1010 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | append-metadata
1011 ARTIFACTS := preloader.bin bl31-uboot.fip
1012 ARTIFACT/preloader.bin := mt7986-bl2 spim-nand-4k-ddr4
1013 ARTIFACT/bl31-uboot.fip := mt7986-bl31-uboot zyxel_ex5601-t0
1014 ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
1015 ARTIFACTS += initramfs-factory.ubi
1016 ARTIFACT/initramfs-factory.ubi := append-image-stage initramfs-recovery.itb | ubinize-kernel
1017 endif
1018 endef
1019 TARGET_DEVICES += zyxel_ex5601-t0-ubootmod
1020
1021 define Device/zyxel_ex5700-telenor
1022 DEVICE_VENDOR := ZyXEL
1023 DEVICE_MODEL := EX5700 (Telenor)
1024 DEVICE_DTS := mt7986a-zyxel-ex5700-telenor
1025 DEVICE_DTS_DIR := ../dts
1026 DEVICE_PACKAGES := kmod-mt7916-firmware kmod-ubootenv-nvram kmod-usb3 kmod-mt7986-firmware mt7986-wo-firmware
1027 UBINIZE_OPTS := -E 5
1028 BLOCKSIZE := 128k
1029 PAGESIZE := 2048
1030 IMAGE_SIZE := 65536k
1031 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
1032 endef
1033 TARGET_DEVICES += zyxel_ex5700-telenor
1034
1035 define Device/zyxel_nwa50ax-pro
1036 DEVICE_VENDOR := ZyXEL
1037 DEVICE_MODEL := NWA50AX Pro
1038 DEVICE_DTS := mt7981b-zyxel-nwa50ax-pro
1039 DEVICE_DTS_DIR := ../dts
1040 DEVICE_PACKAGES := kmod-mt7981-firmware mt7981-wo-firmware zyxel-bootconfig
1041 DEVICE_DTS_LOADADDR := 0x44000000
1042 UBINIZE_OPTS := -E 5
1043 BLOCKSIZE := 128k
1044 PAGESIZE := 2048
1045 IMAGE_SIZE := 51200k
1046 KERNEL_IN_UBI := 1
1047 IMAGES += factory.bin
1048 IMAGE/factory.bin := append-ubi | check-size $$$$(IMAGE_SIZE) | zyxel-nwa-fit-filogic
1049 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
1050 endef
1051 TARGET_DEVICES += zyxel_nwa50ax-pro