mediatek: add support for Adtran SmartRG Bonanza Peak series
[openwrt/staging/mans0n.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_tuf-ax4200
179 DEVICE_VENDOR := ASUS
180 DEVICE_MODEL := TUF-AX4200
181 DEVICE_DTS := mt7986a-asus-tuf-ax4200
182 DEVICE_DTS_DIR := ../dts
183 DEVICE_DTS_LOADADDR := 0x47000000
184 DEVICE_PACKAGES := kmod-usb3 kmod-mt7986-firmware mt7986-wo-firmware
185 IMAGES := sysupgrade.bin
186 KERNEL := kernel-bin | lzma | \
187 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
188 KERNEL_INITRAMFS := kernel-bin | lzma | \
189 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
190 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
191 endef
192 TARGET_DEVICES += asus_tuf-ax4200
193
194 define Device/asus_tuf-ax6000
195 DEVICE_VENDOR := ASUS
196 DEVICE_MODEL := TUF-AX6000
197 DEVICE_DTS := mt7986a-asus-tuf-ax6000
198 DEVICE_DTS_DIR := ../dts
199 DEVICE_DTS_LOADADDR := 0x47000000
200 DEVICE_PACKAGES := kmod-usb3 kmod-mt7986-firmware mt7986-wo-firmware
201 IMAGES := sysupgrade.bin
202 KERNEL := kernel-bin | lzma | \
203 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
204 KERNEL_INITRAMFS := kernel-bin | lzma | \
205 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
206 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
207 endef
208 TARGET_DEVICES += asus_tuf-ax6000
209
210 define Device/bananapi_bpi-r3
211 DEVICE_VENDOR := Bananapi
212 DEVICE_MODEL := BPi-R3
213 DEVICE_DTS := mt7986a-bananapi-bpi-r3
214 DEVICE_DTS_CONFIG := config-mt7986a-bananapi-bpi-r3
215 DEVICE_DTS_OVERLAY:= mt7986a-bananapi-bpi-r3-emmc mt7986a-bananapi-bpi-r3-nand mt7986a-bananapi-bpi-r3-nor mt7986a-bananapi-bpi-r3-sd
216 DEVICE_DTS_DIR := $(DTS_DIR)/
217 DEVICE_DTS_LOADADDR := 0x43f00000
218 DEVICE_PACKAGES := kmod-hwmon-pwmfan kmod-i2c-gpio kmod-mt7986-firmware kmod-sfp kmod-usb3 e2fsprogs f2fsck mkf2fs mt7986-wo-firmware
219 IMAGES := sysupgrade.itb
220 KERNEL_LOADADDR := 0x44000000
221 KERNEL_INITRAMFS_SUFFIX := -recovery.itb
222 ARTIFACTS := \
223 emmc-preloader.bin emmc-bl31-uboot.fip \
224 nor-preloader.bin nor-bl31-uboot.fip \
225 sdcard.img.gz \
226 snand-preloader.bin snand-bl31-uboot.fip
227 ARTIFACT/emmc-preloader.bin := mt7986-bl2 emmc-ddr4
228 ARTIFACT/emmc-bl31-uboot.fip := mt7986-bl31-uboot bananapi_bpi-r3-emmc
229 ARTIFACT/nor-preloader.bin := mt7986-bl2 nor-ddr4
230 ARTIFACT/nor-bl31-uboot.fip := mt7986-bl31-uboot bananapi_bpi-r3-nor
231 ARTIFACT/snand-preloader.bin := mt7986-bl2 spim-nand-ddr4
232 ARTIFACT/snand-bl31-uboot.fip := mt7986-bl31-uboot bananapi_bpi-r3-snand
233 ARTIFACT/sdcard.img.gz := mt798x-gpt sdmmc |\
234 pad-to 17k | mt7986-bl2 sdmmc-ddr4 |\
235 pad-to 6656k | mt7986-bl31-uboot bananapi_bpi-r3-sdmmc |\
236 $(if $(CONFIG_TARGET_ROOTFS_INITRAMFS),\
237 pad-to 12M | append-image-stage initramfs-recovery.itb | check-size 44m |\
238 ) \
239 pad-to 44M | mt7986-bl2 spim-nand-ddr4 |\
240 pad-to 45M | mt7986-bl31-uboot bananapi_bpi-r3-snand |\
241 pad-to 49M | mt7986-bl2 nor-ddr4 |\
242 pad-to 50M | mt7986-bl31-uboot bananapi_bpi-r3-nor |\
243 pad-to 51M | mt7986-bl2 emmc-ddr4 |\
244 pad-to 52M | mt7986-bl31-uboot bananapi_bpi-r3-emmc |\
245 pad-to 56M | mt798x-gpt emmc |\
246 $(if $(CONFIG_TARGET_ROOTFS_SQUASHFS),\
247 pad-to 64M | append-image squashfs-sysupgrade.itb | check-size |\
248 ) \
249 gzip
250 ifeq ($(DUMP),)
251 IMAGE_SIZE := $$(shell expr 64 + $$(CONFIG_TARGET_ROOTFS_PARTSIZE))m
252 endif
253 KERNEL := kernel-bin | gzip
254 KERNEL_INITRAMFS := kernel-bin | lzma | \
255 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
256 IMAGE/sysupgrade.itb := append-kernel | fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | pad-rootfs | append-metadata
257 DEVICE_DTC_FLAGS := --pad 4096
258 DEVICE_COMPAT_VERSION := 1.1
259 DEVICE_COMPAT_MESSAGE := Device tree overlay mechanism needs bootloader update
260 endef
261 TARGET_DEVICES += bananapi_bpi-r3
262
263 define Device/cetron_ct3003
264 DEVICE_VENDOR := Cetron
265 DEVICE_MODEL := CT3003
266 DEVICE_DTS := mt7981b-cetron-ct3003
267 DEVICE_DTS_DIR := ../dts
268 SUPPORTED_DEVICES += mediatek,mt7981-spim-snand-rfb
269 DEVICE_PACKAGES := kmod-mt7981-firmware mt7981-wo-firmware
270 UBINIZE_OPTS := -E 5
271 BLOCKSIZE := 128k
272 PAGESIZE := 2048
273 KERNEL_IN_UBI := 1
274 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
275 IMAGES += factory.bin
276 IMAGE/factory.bin := $$(IMAGE/sysupgrade.bin) | cetron-header rd30 CT3003
277 endef
278 TARGET_DEVICES += cetron_ct3003
279
280 define Device/cmcc_rax3000m
281 DEVICE_VENDOR := CMCC
282 DEVICE_MODEL := RAX3000M
283 DEVICE_DTS := mt7981b-cmcc-rax3000m
284 DEVICE_DTS_OVERLAY := mt7981b-cmcc-rax3000m-emmc mt7981b-cmcc-rax3000m-nand
285 DEVICE_DTS_DIR := ../dts
286 DEVICE_DTC_FLAGS := --pad 4096
287 DEVICE_DTS_LOADADDR := 0x43f00000
288 DEVICE_PACKAGES := kmod-mt7981-firmware mt7981-wo-firmware kmod-usb3 \
289 e2fsprogs f2fsck mkf2fs
290 KERNEL_LOADADDR := 0x44000000
291 KERNEL := kernel-bin | gzip
292 KERNEL_INITRAMFS := kernel-bin | lzma | \
293 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
294 KERNEL_INITRAMFS_SUFFIX := -recovery.itb
295 KERNEL_IN_UBI := 1
296 UBOOTENV_IN_UBI := 1
297 IMAGES := sysupgrade.itb
298 IMAGE_SIZE := $$(shell expr 64 + $$(CONFIG_TARGET_ROOTFS_PARTSIZE))m
299 IMAGE/sysupgrade.itb := append-kernel | \
300 fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | \
301 pad-rootfs | append-metadata
302 ARTIFACTS := \
303 emmc-gpt.bin emmc-preloader.bin emmc-bl31-uboot.fip \
304 nand-preloader.bin nand-bl31-uboot.fip
305 ARTIFACT/emmc-gpt.bin := mt798x-gpt emmc
306 ARTIFACT/emmc-preloader.bin := mt7981-bl2 emmc-ddr4
307 ARTIFACT/emmc-bl31-uboot.fip := mt7981-bl31-uboot cmcc_rax3000m-emmc
308 ARTIFACT/nand-preloader.bin := mt7981-bl2 spim-nand-ddr4
309 ARTIFACT/nand-bl31-uboot.fip := mt7981-bl31-uboot cmcc_rax3000m-nand
310 endef
311 TARGET_DEVICES += cmcc_rax3000m
312
313 define Device/confiabits_mt7981
314 DEVICE_VENDOR := Confiabits
315 DEVICE_MODEL := MT7981
316 DEVICE_DTS := mt7981b-confiabits-mt7981
317 DEVICE_DTS_DIR := ../dts
318 SUPPORTED_DEVICES += mediatek,mt7981-spim-snand-2500wan-gmac2-rfb
319 UBINIZE_OPTS := -E 5
320 BLOCKSIZE := 128k
321 PAGESIZE := 2048
322 IMAGE_SIZE := 65536k
323 KERNEL_IN_UBI := 1
324 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
325 DEVICE_PACKAGES := kmod-usb3 kmod-mt7981-firmware
326 endef
327 TARGET_DEVICES += confiabits_mt7981
328
329 define Device/cudy_wr3000-v1
330 DEVICE_VENDOR := Cudy
331 DEVICE_MODEL := WR3000
332 DEVICE_VARIANT := v1
333 DEVICE_DTS := mt7981b-cudy-wr3000-v1
334 DEVICE_DTS_DIR := ../dts
335 DEVICE_DTS_LOADADDR := 0x47000000
336 IMAGES := sysupgrade.bin
337 IMAGE_SIZE := 15424k
338 SUPPORTED_DEVICES += R31
339 KERNEL := kernel-bin | lzma | \
340 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
341 KERNEL_INITRAMFS := kernel-bin | lzma | \
342 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
343 IMAGE/sysupgrade.bin := append-kernel | pad-to 128k | append-rootfs | pad-rootfs | check-size | append-metadata
344 DEVICE_PACKAGES := kmod-mt7981-firmware
345 endef
346 TARGET_DEVICES += cudy_wr3000-v1
347
348 define Device/glinet_gl-mt2500
349 DEVICE_VENDOR := GL.iNet
350 DEVICE_MODEL := GL-MT2500
351 DEVICE_DTS := mt7981b-glinet-gl-mt2500
352 DEVICE_DTS_DIR := ../dts
353 DEVICE_DTS_LOADADDR := 0x47000000
354 DEVICE_PACKAGES := -kmod-mt7915e -wpad-basic-mbedtls e2fsprogs f2fsck mkf2fs kmod-usb3
355 SUPPORTED_DEVICES += glinet,mt2500-emmc
356 IMAGES := sysupgrade.bin
357 IMAGE/sysupgrade.bin := sysupgrade-tar | append-gl-metadata
358 endef
359 TARGET_DEVICES += glinet_gl-mt2500
360
361 define Device/glinet_gl-mt3000
362 DEVICE_VENDOR := GL.iNet
363 DEVICE_MODEL := GL-MT3000
364 DEVICE_DTS := mt7981b-glinet-gl-mt3000
365 DEVICE_DTS_DIR := ../dts
366 SUPPORTED_DEVICES += glinet,mt3000-snand
367 DEVICE_PACKAGES := kmod-mt7981-firmware mt7981-wo-firmware kmod-hwmon-pwmfan kmod-usb3
368 UBINIZE_OPTS := -E 5
369 BLOCKSIZE := 128k
370 PAGESIZE := 2048
371 IMAGE_SIZE := 246272k
372 KERNEL_IN_UBI := 1
373 IMAGE/sysupgrade.bin := sysupgrade-tar | append-gl-metadata
374 endef
375 TARGET_DEVICES += glinet_gl-mt3000
376
377 define Device/glinet_gl-mt6000
378 DEVICE_VENDOR := GL.iNet
379 DEVICE_MODEL := GL-MT6000
380 DEVICE_DTS := mt7986a-glinet-gl-mt6000
381 DEVICE_DTS_DIR := ../dts
382 DEVICE_PACKAGES := e2fsprogs f2fsck mkf2fs kmod-usb3 kmod-mt7986-firmware mt7986-wo-firmware
383 IMAGES += factory.bin
384 IMAGE/factory.bin := append-kernel | pad-to 32M | append-rootfs
385 IMAGE/sysupgrade.bin := sysupgrade-tar | append-gl-metadata
386 ARTIFACTS := preloader.bin bl31-uboot.fip
387 ARTIFACT/preloader.bin := mt7986-bl2 emmc-ddr4
388 ARTIFACT/bl31-uboot.fip := mt7986-bl31-uboot glinet_gl-mt6000
389 endef
390 TARGET_DEVICES += glinet_gl-mt6000
391
392 define Device/h3c_magic-nx30-pro
393 DEVICE_VENDOR := H3C
394 DEVICE_MODEL := Magic NX30 Pro
395 DEVICE_DTS := mt7981b-h3c-magic-nx30-pro
396 DEVICE_DTS_DIR := ../dts
397 UBINIZE_OPTS := -E 5
398 BLOCKSIZE := 128k
399 PAGESIZE := 2048
400 KERNEL_IN_UBI := 1
401 UBOOTENV_IN_UBI := 1
402 IMAGE_SIZE := 65536k
403 IMAGES := sysupgrade.itb
404 KERNEL_INITRAMFS_SUFFIX := -recovery.itb
405 KERNEL := kernel-bin | gzip
406 KERNEL_INITRAMFS := kernel-bin | lzma | \
407 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
408 IMAGE/sysupgrade.itb := append-kernel | \
409 fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | append-metadata
410 DEVICE_PACKAGES := kmod-mt7981-firmware mt7981-wo-firmware
411 ARTIFACTS := preloader.bin bl31-uboot.fip
412 ARTIFACT/preloader.bin := mt7981-bl2 spim-nand-ddr3
413 ARTIFACT/bl31-uboot.fip := mt7981-bl31-uboot h3c_magic-nx30-pro
414 endef
415 TARGET_DEVICES += h3c_magic-nx30-pro
416
417 define Device/jcg_q30-pro
418 DEVICE_VENDOR := JCG
419 DEVICE_MODEL := Q30 PRO
420 DEVICE_DTS := mt7981b-jcg-q30-pro
421 DEVICE_DTS_DIR := ../dts
422 UBINIZE_OPTS := -E 5
423 BLOCKSIZE := 128k
424 PAGESIZE := 2048
425 KERNEL_IN_UBI := 1
426 UBOOTENV_IN_UBI := 1
427 IMAGES := sysupgrade.itb
428 KERNEL_INITRAMFS_SUFFIX := -recovery.itb
429 KERNEL := kernel-bin | gzip
430 KERNEL_INITRAMFS := kernel-bin | lzma | \
431 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
432 IMAGE/sysupgrade.itb := append-kernel | \
433 fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | append-metadata
434 DEVICE_PACKAGES := kmod-mt7981-firmware mt7981-wo-firmware
435 ARTIFACTS := preloader.bin bl31-uboot.fip
436 ARTIFACT/preloader.bin := mt7981-bl2 spim-nand-ddr3
437 ARTIFACT/bl31-uboot.fip := mt7981-bl31-uboot jcg_q30-pro
438 endef
439 TARGET_DEVICES += jcg_q30-pro
440
441 define Device/mediatek_mt7981-rfb
442 DEVICE_VENDOR := MediaTek
443 DEVICE_MODEL := MT7981 rfb
444 DEVICE_DTS := mt7981-rfb
445 DEVICE_DTS_OVERLAY:= \
446 mt7981-rfb-spim-nand \
447 mt7981-rfb-mxl-2p5g-phy-eth1 \
448 mt7981-rfb-mxl-2p5g-phy-swp5
449 DEVICE_DTS_DIR := $(DTS_DIR)/
450 DEVICE_DTC_FLAGS := --pad 4096
451 DEVICE_DTS_LOADADDR := 0x43f00000
452 DEVICE_PACKAGES := kmod-mt7981-firmware kmod-usb3 e2fsprogs f2fsck mkf2fs mt7981-wo-firmware
453 KERNEL_LOADADDR := 0x44000000
454 KERNEL := kernel-bin | gzip
455 KERNEL_INITRAMFS := kernel-bin | lzma | \
456 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
457 KERNEL_INITRAMFS_SUFFIX := .itb
458 KERNEL_IN_UBI := 1
459 UBOOTENV_IN_UBI := 1
460 IMAGES := sysupgrade.itb
461 IMAGE_SIZE := $$(shell expr 64 + $$(CONFIG_TARGET_ROOTFS_PARTSIZE))m
462 IMAGE/sysupgrade.itb := append-kernel | fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-with-rootfs | pad-rootfs | append-metadata
463 ARTIFACTS := \
464 emmc-preloader.bin emmc-bl31-uboot.fip \
465 nor-preloader.bin nor-bl31-uboot.fip \
466 sdcard.img.gz \
467 snfi-nand-preloader.bin snfi-nand-bl31-uboot.fip \
468 spim-nand-preloader.bin spim-nand-bl31-uboot.fip
469 ARTIFACT/emmc-preloader.bin := mt7981-bl2 emmc-ddr3
470 ARTIFACT/emmc-bl31-uboot.fip := mt7981-bl31-uboot rfb-emmc
471 ARTIFACT/nor-preloader.bin := mt7981-bl2 nor-ddr3
472 ARTIFACT/nor-bl31-uboot.fip := mt7981-bl31-uboot rfb-emmc
473 ARTIFACT/snfi-nand-preloader.bin := mt7981-bl2 snand-ddr3
474 ARTIFACT/snfi-nand-bl31-uboot.fip := mt7981-bl31-uboot rfb-snfi
475 ARTIFACT/spim-nand-preloader.bin := mt7981-bl2 spim-nand-ddr3
476 ARTIFACT/spim-nand-bl31-uboot.fip := mt7981-bl31-uboot rfb-spim-nand
477 ARTIFACT/sdcard.img.gz := mt798x-gpt sdmmc |\
478 pad-to 17k | mt7981-bl2 sdmmc-ddr3 |\
479 pad-to 6656k | mt7981-bl31-uboot rfb-sd |\
480 $(if $(CONFIG_TARGET_ROOTFS_INITRAMFS),\
481 pad-to 12M | append-image-stage initramfs.itb | check-size 44m |\
482 ) \
483 pad-to 44M | mt7981-bl2 spim-nand-ddr3 |\
484 pad-to 45M | mt7981-bl31-uboot rfb-spim-nand |\
485 pad-to 49M | mt7981-bl2 nor-ddr3 |\
486 pad-to 50M | mt7981-bl31-uboot rfb-nor |\
487 pad-to 51M | mt7981-bl2 snand-ddr3 |\
488 pad-to 53M | mt7981-bl31-uboot rfb-snfi |\
489 $(if $(CONFIG_TARGET_ROOTFS_SQUASHFS),\
490 pad-to 64M | append-image squashfs-sysupgrade.itb | check-size |\
491 ) \
492 gzip
493 endef
494 TARGET_DEVICES += mediatek_mt7981-rfb
495
496 define Device/mediatek_mt7986a-rfb-nand
497 DEVICE_VENDOR := MediaTek
498 DEVICE_MODEL := MT7986 rfba AP (NAND)
499 DEVICE_DTS := mt7986a-rfb-spim-nand
500 DEVICE_DTS_DIR := $(DTS_DIR)/
501 DEVICE_PACKAGES := kmod-mt7986-firmware mt7986-wo-firmware
502 SUPPORTED_DEVICES := mediatek,mt7986a-rfb-snand
503 UBINIZE_OPTS := -E 5
504 BLOCKSIZE := 128k
505 PAGESIZE := 2048
506 IMAGE_SIZE := 65536k
507 KERNEL_IN_UBI := 1
508 IMAGES += factory.bin
509 IMAGE/factory.bin := append-ubi | check-size $$$$(IMAGE_SIZE)
510 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
511 KERNEL = kernel-bin | lzma | \
512 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
513 KERNEL_INITRAMFS = kernel-bin | lzma | \
514 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd
515 endef
516 TARGET_DEVICES += mediatek_mt7986a-rfb-nand
517
518 define Device/mediatek_mt7986b-rfb
519 DEVICE_VENDOR := MediaTek
520 DEVICE_MODEL := MTK7986 rfbb AP
521 DEVICE_DTS := mt7986b-rfb
522 DEVICE_DTS_DIR := $(DTS_DIR)/
523 DEVICE_PACKAGES := kmod-mt7986-firmware mt7986-wo-firmware
524 SUPPORTED_DEVICES := mediatek,mt7986b-rfb
525 UBINIZE_OPTS := -E 5
526 BLOCKSIZE := 128k
527 PAGESIZE := 2048
528 IMAGE_SIZE := 65536k
529 KERNEL_IN_UBI := 1
530 IMAGES += factory.bin
531 IMAGE/factory.bin := append-ubi | check-size $$$$(IMAGE_SIZE)
532 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
533 endef
534 TARGET_DEVICES += mediatek_mt7986b-rfb
535
536 define Device/mediatek_mt7988a-rfb
537 DEVICE_VENDOR := MediaTek
538 DEVICE_MODEL := MT7988A rfb
539 DEVICE_DTS := mt7988a-rfb
540 DEVICE_DTS_OVERLAY:= \
541 mt7988a-rfb-emmc \
542 mt7988a-rfb-sd \
543 mt7988a-rfb-snfi-nand \
544 mt7988a-rfb-spim-nand \
545 mt7988a-rfb-spim-nor \
546 mt7988a-rfb-eth1-aqr \
547 mt7988a-rfb-eth1-i2p5g-phy \
548 mt7988a-rfb-eth1-mxl \
549 mt7988a-rfb-eth1-sfp \
550 mt7988a-rfb-eth2-aqr \
551 mt7988a-rfb-eth2-mxl \
552 mt7988a-rfb-eth2-sfp
553 DEVICE_DTS_DIR := $(DTS_DIR)/
554 DEVICE_DTC_FLAGS := --pad 4096
555 DEVICE_DTS_LOADADDR := 0x45f00000
556 DEVICE_PACKAGES := kmod-sfp
557 KERNEL_LOADADDR := 0x46000000
558 KERNEL := kernel-bin | gzip
559 KERNEL_INITRAMFS := kernel-bin | lzma | \
560 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
561 KERNEL_INITRAMFS_SUFFIX := .itb
562 KERNEL_IN_UBI := 1
563 IMAGE_SIZE := $$(shell expr 64 + $$(CONFIG_TARGET_ROOTFS_PARTSIZE))m
564 IMAGES := sysupgrade.itb
565 IMAGE/sysupgrade.itb := append-kernel | fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-with-rootfs | pad-rootfs | append-metadata
566 ARTIFACTS := \
567 emmc-gpt.bin emmc-preloader.bin emmc-bl31-uboot.fip \
568 nor-preloader.bin nor-bl31-uboot.fip \
569 sdcard.img.gz \
570 snand-preloader.bin snand-bl31-uboot.fip
571 ARTIFACT/emmc-gpt.bin := mt798x-gpt emmc
572 ARTIFACT/emmc-preloader.bin := mt7988-bl2 emmc-comb
573 ARTIFACT/emmc-bl31-uboot.fip := mt7988-bl31-uboot rfb-emmc
574 ARTIFACT/nor-preloader.bin := mt7988-bl2 nor-comb
575 ARTIFACT/nor-bl31-uboot.fip := mt7988-bl31-uboot rfb-nor
576 ARTIFACT/snand-preloader.bin := mt7988-bl2 spim-nand-comb
577 ARTIFACT/snand-bl31-uboot.fip := mt7988-bl31-uboot rfb-snand
578 ARTIFACT/sdcard.img.gz := mt798x-gpt sdmmc |\
579 pad-to 17k | mt7988-bl2 sdmmc-comb |\
580 pad-to 6656k | mt7988-bl31-uboot rfb-sd |\
581 $(if $(CONFIG_TARGET_ROOTFS_INITRAMFS),\
582 pad-to 12M | append-image-stage initramfs.itb | check-size 44m |\
583 ) \
584 pad-to 44M | mt7988-bl2 spim-nand-comb |\
585 pad-to 45M | mt7988-bl31-uboot rfb-snand |\
586 pad-to 51M | mt7988-bl2 nor-comb |\
587 pad-to 51M | mt7988-bl31-uboot rfb-nor |\
588 pad-to 55M | mt7988-bl2 emmc-comb |\
589 pad-to 56M | mt7988-bl31-uboot rfb-emmc |\
590 pad-to 62M | mt798x-gpt emmc |\
591 $(if $(CONFIG_TARGET_ROOTFS_SQUASHFS),\
592 pad-to 64M | append-image squashfs-sysupgrade.itb | check-size |\
593 ) \
594 gzip
595 endef
596 TARGET_DEVICES += mediatek_mt7988a-rfb
597
598 define Device/mercusys_mr90x-v1
599 DEVICE_VENDOR := MERCUSYS
600 DEVICE_MODEL := MR90X v1
601 DEVICE_DTS := mt7986b-mercusys-mr90x-v1
602 DEVICE_DTS_DIR := ../dts
603 DEVICE_PACKAGES := kmod-mt7986-firmware mt7986-wo-firmware
604 UBINIZE_OPTS := -E 5
605 BLOCKSIZE := 128k
606 PAGESIZE := 2048
607 IMAGE_SIZE := 51200k
608 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
609 endef
610 TARGET_DEVICES += mercusys_mr90x-v1
611
612 define Device/netgear_wax220
613 DEVICE_VENDOR := NETGEAR
614 DEVICE_MODEL := WAX220
615 DEVICE_DTS := mt7986b-netgear-wax220
616 DEVICE_DTS_DIR := ../dts
617 NETGEAR_ENC_MODEL := WAX220
618 NETGEAR_ENC_REGION := US
619 DEVICE_PACKAGES := kmod-mt7986-firmware mt7986-wo-firmware
620 KERNEL_INITRAMFS_SUFFIX := -recovery.itb
621 IMAGE_SIZE := 32768k
622 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
623 IMAGES += factory.img
624 # Padding to 10M seems to be required by OEM web interface
625 IMAGE/factory.img := sysupgrade-tar | \
626 pad-to 10M | check-size | netgear-encrypted-factory
627 endef
628 TARGET_DEVICES += netgear_wax220
629
630 define Device/qihoo_360t7
631 DEVICE_VENDOR := Qihoo
632 DEVICE_MODEL := 360T7
633 DEVICE_DTS := mt7981b-qihoo-360t7
634 DEVICE_DTS_DIR := ../dts
635 UBINIZE_OPTS := -E 5
636 BLOCKSIZE := 128k
637 PAGESIZE := 2048
638 KERNEL_IN_UBI := 1
639 UBOOTENV_IN_UBI := 1
640 IMAGES := sysupgrade.itb
641 KERNEL_INITRAMFS_SUFFIX := -recovery.itb
642 KERNEL := kernel-bin | gzip
643 KERNEL_INITRAMFS := kernel-bin | lzma | \
644 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
645 IMAGE/sysupgrade.itb := append-kernel | \
646 fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | append-metadata
647 DEVICE_PACKAGES := kmod-mt7981-firmware mt7981-wo-firmware
648 ARTIFACTS := preloader.bin bl31-uboot.fip
649 ARTIFACT/preloader.bin := mt7981-bl2 spim-nand-ddr3
650 ARTIFACT/bl31-uboot.fip := mt7981-bl31-uboot qihoo_360t7
651 endef
652 TARGET_DEVICES += qihoo_360t7
653
654 define Device/tplink_tl-xdr-common
655 DEVICE_VENDOR := TP-Link
656 DEVICE_DTS_DIR := ../dts
657 UBINIZE_OPTS := -E 5
658 BLOCKSIZE := 128k
659 PAGESIZE := 2048
660 KERNEL_IN_UBI := 1
661 UBOOTENV_IN_UBI := 1
662 IMAGES := sysupgrade.itb
663 KERNEL_INITRAMFS_SUFFIX := -recovery.itb
664 KERNEL := kernel-bin | gzip
665 KERNEL_INITRAMFS := kernel-bin | lzma | \
666 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
667 IMAGE/sysupgrade.itb := append-kernel | \
668 fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-with-rootfs | append-metadata
669 DEVICE_PACKAGES := kmod-usb3 kmod-mt7986-firmware mt7986-wo-firmware
670 ARTIFACTS := preloader.bin bl31-uboot.fip
671 ARTIFACT/preloader.bin := mt7986-bl2 spim-nand-ddr3
672 endef
673
674 define Device/tplink_tl-xdr4288
675 DEVICE_MODEL := TL-XDR4288
676 DEVICE_DTS := mt7986a-tplink-tl-xdr4288
677 ARTIFACT/bl31-uboot.fip := mt7986-bl31-uboot tplink_tl-xdr4288
678 $(call Device/tplink_tl-xdr-common)
679 endef
680 TARGET_DEVICES += tplink_tl-xdr4288
681
682 define Device/tplink_tl-xdr6086
683 DEVICE_MODEL := TL-XDR6086
684 DEVICE_DTS := mt7986a-tplink-tl-xdr6086
685 ARTIFACT/bl31-uboot.fip := mt7986-bl31-uboot tplink_tl-xdr6086
686 $(call Device/tplink_tl-xdr-common)
687 endef
688 TARGET_DEVICES += tplink_tl-xdr6086
689
690 define Device/tplink_tl-xdr6088
691 DEVICE_MODEL := TL-XDR6088
692 DEVICE_DTS := mt7986a-tplink-tl-xdr6088
693 ARTIFACT/bl31-uboot.fip := mt7986-bl31-uboot tplink_tl-xdr6088
694 $(call Device/tplink_tl-xdr-common)
695 endef
696 TARGET_DEVICES += tplink_tl-xdr6088
697
698 define Device/ubnt_unifi-6-plus
699 DEVICE_VENDOR := Ubiquiti
700 DEVICE_MODEL := UniFi 6 Plus
701 DEVICE_DTS := mt7981a-ubnt-unifi-6-plus
702 DEVICE_DTS_DIR := ../dts
703 DEVICE_PACKAGES := kmod-mt7981-firmware mt7981-wo-firmware e2fsprogs f2fsck mkf2fs fdisk partx-utils
704 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
705 endef
706 TARGET_DEVICES += ubnt_unifi-6-plus
707
708 define Device/xiaomi_mi-router-wr30u-112m-nmbm
709 DEVICE_VENDOR := Xiaomi
710 DEVICE_MODEL := Mi Router WR30U (112M UBI with NMBM-Enabled layout)
711 DEVICE_DTS := mt7981b-xiaomi-mi-router-wr30u-112m-nmbm
712 DEVICE_DTS_DIR := ../dts
713 UBINIZE_OPTS := -E 5
714 BLOCKSIZE := 128k
715 PAGESIZE := 2048
716 DEVICE_PACKAGES := kmod-mt7981-firmware mt7981-wo-firmware
717 ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
718 ARTIFACTS := initramfs-factory.ubi
719 ARTIFACT/initramfs-factory.ubi := append-image-stage initramfs-kernel.bin | ubinize-kernel
720 endif
721 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
722 endef
723 TARGET_DEVICES += xiaomi_mi-router-wr30u-112m-nmbm
724
725 define Device/xiaomi_mi-router-wr30u-stock
726 DEVICE_VENDOR := Xiaomi
727 DEVICE_MODEL := Mi Router WR30U (stock layout)
728 DEVICE_DTS := mt7981b-xiaomi-mi-router-wr30u-stock
729 DEVICE_DTS_DIR := ../dts
730 UBINIZE_OPTS := -E 5
731 BLOCKSIZE := 128k
732 PAGESIZE := 2048
733 DEVICE_PACKAGES := kmod-mt7981-firmware mt7981-wo-firmware
734 ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
735 ARTIFACTS := initramfs-factory.ubi
736 ARTIFACT/initramfs-factory.ubi := append-image-stage initramfs-kernel.bin | ubinize-kernel
737 endif
738 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
739 endef
740 TARGET_DEVICES += xiaomi_mi-router-wr30u-stock
741
742 define Device/xiaomi_mi-router-wr30u-ubootmod
743 DEVICE_VENDOR := Xiaomi
744 DEVICE_MODEL := Mi Router WR30U (OpenWrt U-Boot layout)
745 DEVICE_DTS := mt7981b-xiaomi-mi-router-wr30u-ubootmod
746 DEVICE_DTS_DIR := ../dts
747 UBINIZE_OPTS := -E 5
748 BLOCKSIZE := 128k
749 PAGESIZE := 2048
750 DEVICE_PACKAGES := kmod-mt7981-firmware mt7981-wo-firmware
751 KERNEL_IN_UBI := 1
752 UBOOTENV_IN_UBI := 1
753 IMAGES := sysupgrade.itb
754 KERNEL_INITRAMFS_SUFFIX := -recovery.itb
755 KERNEL := kernel-bin | gzip
756 KERNEL_INITRAMFS := kernel-bin | lzma | \
757 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
758 IMAGE/sysupgrade.itb := append-kernel | \
759 fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | append-metadata
760 ARTIFACTS := preloader.bin bl31-uboot.fip
761 ARTIFACT/preloader.bin := mt7981-bl2 spim-nand-ddr3
762 ARTIFACT/bl31-uboot.fip := mt7981-bl31-uboot xiaomi_mi-router-wr30u
763 ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
764 ARTIFACTS += initramfs-factory.ubi
765 ARTIFACT/initramfs-factory.ubi := append-image-stage initramfs-recovery.itb | ubinize-kernel
766 endif
767 endef
768 TARGET_DEVICES += xiaomi_mi-router-wr30u-ubootmod
769
770 define Device/xiaomi_redmi-router-ax6000-stock
771 DEVICE_VENDOR := Xiaomi
772 DEVICE_MODEL := Redmi Router AX6000 (stock layout)
773 DEVICE_DTS := mt7986a-xiaomi-redmi-router-ax6000-stock
774 DEVICE_DTS_DIR := ../dts
775 DEVICE_PACKAGES := kmod-leds-ws2812b kmod-mt7986-firmware mt7986-wo-firmware
776 UBINIZE_OPTS := -E 5
777 BLOCKSIZE := 128k
778 PAGESIZE := 2048
779 ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
780 ARTIFACTS := initramfs-factory.ubi
781 ARTIFACT/initramfs-factory.ubi := append-image-stage initramfs-kernel.bin | ubinize-kernel
782 endif
783 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
784 endef
785 TARGET_DEVICES += xiaomi_redmi-router-ax6000-stock
786
787 define Device/xiaomi_redmi-router-ax6000-ubootmod
788 DEVICE_VENDOR := Xiaomi
789 DEVICE_MODEL := Redmi Router AX6000 (OpenWrt U-Boot layout)
790 DEVICE_DTS := mt7986a-xiaomi-redmi-router-ax6000-ubootmod
791 DEVICE_DTS_DIR := ../dts
792 DEVICE_PACKAGES := kmod-leds-ws2812b kmod-mt7986-firmware mt7986-wo-firmware
793 KERNEL_INITRAMFS_SUFFIX := -recovery.itb
794 IMAGES := sysupgrade.itb
795 UBINIZE_OPTS := -E 5
796 BLOCKSIZE := 128k
797 PAGESIZE := 2048
798 KERNEL_IN_UBI := 1
799 UBOOTENV_IN_UBI := 1
800 KERNEL := kernel-bin | gzip
801 KERNEL_INITRAMFS := kernel-bin | lzma | \
802 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd | pad-to 64k
803 IMAGE/sysupgrade.itb := append-kernel | \
804 fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | append-metadata
805 ARTIFACTS := preloader.bin bl31-uboot.fip
806 ARTIFACT/preloader.bin := mt7986-bl2 spim-nand-ddr4
807 ARTIFACT/bl31-uboot.fip := mt7986-bl31-uboot xiaomi_redmi-router-ax6000
808 ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
809 ARTIFACTS += initramfs-factory.ubi
810 ARTIFACT/initramfs-factory.ubi := append-image-stage initramfs-recovery.itb | ubinize-kernel
811 endif
812 endef
813 TARGET_DEVICES += xiaomi_redmi-router-ax6000-ubootmod
814
815 define Device/zbtlink_zbt-z8102ax
816 DEVICE_VENDOR := Zbtlink
817 DEVICE_MODEL := ZBT-Z8102AX
818 DEVICE_DTS := mt7981b-zbtlink-zbt-z8102ax
819 DEVICE_DTS_DIR := ../dts
820 DEVICE_PACKAGES := kmod-mt7981-firmware mt7981-wo-firmware kmod-usb3 kmod-usb-net-qmi-wwan kmod-usb-serial-option
821 KERNEL_IN_UBI := 1
822 UBINIZE_OPTS := -E 5
823 BLOCKSIZE := 128k
824 PAGESIZE := 2048
825 IMAGE_SIZE := 65536k
826 IMAGES += factory.bin
827 IMAGE/factory.bin := append-ubi | check-size $$(IMAGE_SIZE)
828 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
829 endef
830 TARGET_DEVICES += zbtlink_zbt-z8102ax
831
832 define Device/zyxel_ex5601-t0-stock
833 DEVICE_VENDOR := Zyxel
834 DEVICE_MODEL := EX5601-T0
835 DEVICE_VARIANT := (stock layout)
836 DEVICE_DTS := mt7986a-zyxel-ex5601-t0-stock
837 DEVICE_DTS_DIR := ../dts
838 DEVICE_PACKAGES := kmod-mt7986-firmware mt7986-wo-firmware kmod-usb3
839 SUPPORTED_DEVICES := mediatek,mt7986a-rfb-snand
840 UBINIZE_OPTS := -E 5
841 BLOCKSIZE := 256k
842 PAGESIZE := 4096
843 IMAGE_SIZE := 65536k
844 KERNEL_IN_UBI := 1
845 IMAGES += factory.bin
846 IMAGE/factory.bin := append-ubi | check-size $$$$(IMAGE_SIZE)
847 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
848 KERNEL = kernel-bin | lzma | \
849 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
850 KERNEL_INITRAMFS = kernel-bin | lzma | \
851 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd
852 endef
853 TARGET_DEVICES += zyxel_ex5601-t0-stock
854
855 define Device/zyxel_ex5601-t0-ubootmod
856 DEVICE_VENDOR := Zyxel
857 DEVICE_MODEL := EX5601-T0
858 DEVICE_VARIANT := (OpenWrt U-Boot layout)
859 DEVICE_DTS := mt7986a-zyxel-ex5601-t0-ubootmod
860 DEVICE_DTS_DIR := ../dts
861 DEVICE_PACKAGES := kmod-mt7986-firmware mt7986-wo-firmware kmod-usb3
862 KERNEL_INITRAMFS_SUFFIX := -recovery.itb
863 IMAGES := sysupgrade.itb
864 UBINIZE_OPTS := -E 5
865 BLOCKSIZE := 256k
866 PAGESIZE := 4096
867 KERNEL_IN_UBI := 1
868 UBOOTENV_IN_UBI := 1
869 KERNEL := kernel-bin | lzma
870 KERNEL_INITRAMFS := kernel-bin | lzma | \
871 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd
872 IMAGE/sysupgrade.itb := append-kernel | \
873 fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb external-static-with-rootfs | append-metadata
874 ARTIFACTS := preloader.bin bl31-uboot.fip
875 ARTIFACT/preloader.bin := mt7986-bl2 spim-nand-4k-ddr4
876 ARTIFACT/bl31-uboot.fip := mt7986-bl31-uboot zyxel_ex5601-t0
877 ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
878 ARTIFACTS += initramfs-factory.ubi
879 ARTIFACT/initramfs-factory.ubi := append-image-stage initramfs-recovery.itb | ubinize-kernel
880 endif
881 endef
882 TARGET_DEVICES += zyxel_ex5601-t0-ubootmod
883
884 define Device/zyxel_ex5700-telenor
885 DEVICE_VENDOR := ZyXEL
886 DEVICE_MODEL := EX5700 (Telenor)
887 DEVICE_DTS := mt7986a-zyxel-ex5700-telenor
888 DEVICE_DTS_DIR := ../dts
889 DEVICE_PACKAGES := kmod-mt7916-firmware kmod-ubootenv-nvram kmod-usb3 kmod-mt7986-firmware mt7986-wo-firmware
890 UBINIZE_OPTS := -E 5
891 BLOCKSIZE := 128k
892 PAGESIZE := 2048
893 IMAGE_SIZE := 65536k
894 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
895 endef
896 TARGET_DEVICES += zyxel_ex5700-telenor
897
898 define Device/zyxel_nwa50ax-pro
899 DEVICE_VENDOR := ZyXEL
900 DEVICE_MODEL := NWA50AX Pro
901 DEVICE_DTS := mt7981b-zyxel-nwa50ax-pro
902 DEVICE_DTS_DIR := ../dts
903 DEVICE_PACKAGES := kmod-mt7981-firmware mt7981-wo-firmware zyxel-bootconfig
904 DEVICE_DTS_LOADADDR := 0x44000000
905 UBINIZE_OPTS := -E 5
906 BLOCKSIZE := 128k
907 PAGESIZE := 2048
908 IMAGE_SIZE := 51200k
909 KERNEL_IN_UBI := 1
910 IMAGES += factory.bin
911 IMAGE/factory.bin := append-ubi | check-size $$$$(IMAGE_SIZE) | zyxel-nwa-fit-filogic
912 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
913 endef
914 TARGET_DEVICES += zyxel_nwa50ax-pro