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