OSDN Git Service

Merge Offcial Source
[immortalwrt/immortalwrt.git] / target / linux / ramips / image / mt7621.mk
1 #
2 # MT7621 Profiles
3 #
4
5 include ./common-tp-link.mk
6
7 DEFAULT_SOC := mt7621
8
9 KERNEL_DTB += -d21
10 DEVICE_VARS += ELECOM_HWNAME LINKSYS_HWNAME
11
12 define Build/beeline-trx
13         echo -ne "hsqs" > $@.hsqs
14         $(STAGING_DIR_HOST)/bin/otrx create $@.trx -M 0x746f435d -f $@ \
15                 -a 0x20000 -b 0x420000 -f $@.hsqs -a 1000
16         mv $@.trx $@
17         dd if=/dev/zero bs=1024 count=1 >> $@.tail
18         echo -ne "HDR0" | dd of=$@.tail bs=1 seek=$$((0x10c)) count=4 \
19                 conv=notrunc 2>/dev/null
20         dd if=$@.tail >> $@ 2>/dev/null
21         rm $@.hsqs $@.tail
22 endef
23
24 define Build/gemtek-trailer
25         printf "%s%08X" ".GEMTEK." "$$(cksum $@ | cut -d ' ' -f1)" >> $@
26 endef
27
28 define Build/iodata-factory
29         $(eval fw_size=$(word 1,$(1)))
30         $(eval fw_type=$(word 2,$(1)))
31         $(eval product=$(word 3,$(1)))
32         $(eval factory_bin=$(word 4,$(1)))
33         if [ -e $(KDIR)/tmp/$(KERNEL_INITRAMFS_IMAGE) -a "$$(stat -c%s $@)" -lt "$(fw_size)" ]; then \
34                 $(CP) $(KDIR)/tmp/$(KERNEL_INITRAMFS_IMAGE) $(factory_bin); \
35                 $(STAGING_DIR_HOST)/bin/mksenaofw \
36                         -r 0x30a -p $(product) -t $(fw_type) \
37                         -e $(factory_bin) -o $(factory_bin).new; \
38                 mv $(factory_bin).new $(factory_bin); \
39                 $(CP) $(factory_bin) $(BIN_DIR)/; \
40         else \
41                 echo "WARNING: initramfs kernel image too big, cannot generate factory image (actual $$(stat -c%s $@); max $(fw_size))" >&2; \
42         fi
43 endef
44
45 define Build/iodata-mstc-header
46         ( \
47                 data_size_crc="$$(dd if=$@ ibs=64 skip=1 2>/dev/null | gzip -c | \
48                         tail -c 8 | od -An -tx8 --endian little | tr -d ' \n')"; \
49                 echo -ne "$$(echo $$data_size_crc | sed 's/../\\x&/g')" | \
50                         dd of=$@ bs=8 count=1 seek=7 conv=notrunc 2>/dev/null; \
51         )
52         dd if=/dev/zero of=$@ bs=4 count=1 seek=1 conv=notrunc 2>/dev/null
53         ( \
54                 header_crc="$$(dd if=$@ bs=64 count=1 2>/dev/null | gzip -c | \
55                         tail -c 8 | od -An -N4 -tx4 --endian little | tr -d ' \n')"; \
56                 echo -ne "$$(echo $$header_crc | sed 's/../\\x&/g')" | \
57                         dd of=$@ bs=4 count=1 seek=1 conv=notrunc 2>/dev/null; \
58         )
59 endef
60
61 define Build/ubnt-erx-factory-image
62         if [ -e $(KDIR)/tmp/$(KERNEL_INITRAMFS_IMAGE) -a "$$(stat -c%s $@)" -lt "$(KERNEL_SIZE)" ]; then \
63                 echo '21001:7' > $(1).compat; \
64                 $(TAR) -cf $(1) --transform='s/^.*/compat/' $(1).compat; \
65                 \
66                 $(TAR) -rf $(1) --transform='s/^.*/vmlinux.tmp/' $(KDIR)/tmp/$(KERNEL_INITRAMFS_IMAGE); \
67                 $(MKHASH) md5 $(KDIR)/tmp/$(KERNEL_INITRAMFS_IMAGE) > $(1).md5; \
68                 $(TAR) -rf $(1) --transform='s/^.*/vmlinux.tmp.md5/' $(1).md5; \
69                 \
70                 echo "dummy" > $(1).rootfs; \
71                 $(TAR) -rf $(1) --transform='s/^.*/squashfs.tmp/' $(1).rootfs; \
72                 \
73                 $(MKHASH) md5 $(1).rootfs > $(1).md5; \
74                 $(TAR) -rf $(1) --transform='s/^.*/squashfs.tmp.md5/' $(1).md5; \
75                 \
76                 echo '$(BOARD) $(VERSION_CODE) $(VERSION_NUMBER)' > $(1).version; \
77                 $(TAR) -rf $(1) --transform='s/^.*/version.tmp/' $(1).version; \
78                 \
79                 $(CP) $(1) $(BIN_DIR)/; \
80         else \
81                 echo "WARNING: initramfs kernel image too big, cannot generate factory image (actual $$(stat -c%s $@); max $(KERNEL_SIZE))" >&2; \
82         fi
83 endef
84
85 define Build/zytrx-header
86         $(eval board=$(word 1,$(1)))
87         $(eval version=$(word 2,$(1)))
88         $(STAGING_DIR_HOST)/bin/zytrx -B '$(board)' -v '$(version)' -i $@ -o $@.new
89         mv $@.new $@
90 endef
91
92 define Device/dsa-migration
93   DEVICE_COMPAT_VERSION := 1.1
94   DEVICE_COMPAT_MESSAGE := Config cannot be migrated from swconfig to DSA
95 endef
96
97 define Device/adslr_g7
98   $(Device/dsa-migration)
99   IMAGE_SIZE := 16064k
100   DEVICE_VENDOR := ADSLR
101   DEVICE_MODEL := G7
102   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware
103 endef
104 TARGET_DEVICES += adslr_g7
105
106 define Device/afoundry_ew1200
107   $(Device/dsa-migration)
108   IMAGE_SIZE := 16064k
109   DEVICE_VENDOR := AFOUNDRY
110   DEVICE_MODEL := EW1200
111   DEVICE_PACKAGES := kmod-ata-ahci kmod-mt76x2 kmod-mt7603 kmod-usb3 \
112         kmod-usb-ledtrig-usbport
113   SUPPORTED_DEVICES += ew1200
114 endef
115 TARGET_DEVICES += afoundry_ew1200
116
117 define Device/alfa-network_quad-e4g
118   $(Device/dsa-migration)
119   IMAGE_SIZE := 16064k
120   DEVICE_VENDOR := ALFA Network
121   DEVICE_MODEL := Quad-E4G
122   DEVICE_PACKAGES := kmod-ata-ahci kmod-sdhci-mt7620 kmod-usb3 uboot-envtools \
123         -wpad-basic-wolfssl
124   SUPPORTED_DEVICES += quad-e4g
125 endef
126 TARGET_DEVICES += alfa-network_quad-e4g
127
128 define Device/ampedwireless_ally_common
129   $(Device/dsa-migration)
130   DEVICE_VENDOR := Amped Wireless
131   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware uboot-envtools
132   IMAGE_SIZE := 32768k
133   KERNEL_SIZE := 4096k
134   BLOCKSIZE := 128k
135   PAGESIZE := 2048
136   UBINIZE_OPTS := -E 5
137   KERNEL_INITRAMFS := $(KERNEL_DTB) | uImage lzma -n 'flashable-initramfs' |\
138         edimax-header -s CSYS -m RN68 -f 0x001c0000 -S 0x01100000
139   IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
140 endef
141
142 define Device/ampedwireless_ally-r1900k
143   $(Device/ampedwireless_ally_common)
144   DEVICE_MODEL := ALLY-R1900K
145   DEVICE_PACKAGES += kmod-usb3
146 endef
147 TARGET_DEVICES += ampedwireless_ally-r1900k
148
149 define Device/ampedwireless_ally-00x19k
150   $(Device/ampedwireless_ally_common)
151   DEVICE_MODEL := ALLY-00X19K
152 endef
153 TARGET_DEVICES += ampedwireless_ally-00x19k
154
155 define Device/asiarf_ap7621-001
156   $(Device/dsa-migration)
157   IMAGE_SIZE := 16000k
158   DEVICE_VENDOR := AsiaRF
159   DEVICE_MODEL := AP7621-001
160   DEVICE_PACKAGES := kmod-sdhci-mt7620 kmod-mt76x2 kmod-usb3 -wpad-basic-wolfssl
161 endef
162 TARGET_DEVICES += asiarf_ap7621-001
163
164 define Device/asiarf_ap7621-nv1
165   $(Device/dsa-migration)
166   IMAGE_SIZE := 16000k
167   DEVICE_VENDOR := AsiaRF
168   DEVICE_MODEL := AP7621-NV1
169   DEVICE_PACKAGES := kmod-sdhci-mt7620 kmod-mt76x2 kmod-usb3 -wpad-basic-wolfssl
170 endef
171 TARGET_DEVICES += asiarf_ap7621-nv1
172
173 define Device/asus_rt-ac57u
174   $(Device/dsa-migration)
175   DEVICE_VENDOR := ASUS
176   DEVICE_MODEL := RT-AC57U
177   DEVICE_ALT0_VENDOR := ASUS
178   DEVICE_ALT0_MODEL := RT-AC1200GU
179   IMAGE_SIZE := 16064k
180   DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2 kmod-usb3 \
181         kmod-usb-ledtrig-usbport
182 endef
183 TARGET_DEVICES += asus_rt-ac57u
184
185 define Device/asus_rt-ac65p
186   $(Device/dsa-migration)
187   DEVICE_VENDOR := ASUS
188   DEVICE_MODEL := RT-AC65P
189   IMAGE_SIZE := 51200k
190   UBINIZE_OPTS := -E 5
191   BLOCKSIZE := 128k
192   PAGESIZE := 2048
193   KERNEL_SIZE := 4096k
194   IMAGES += factory.bin
195   IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
196   IMAGE/factory.bin := append-kernel | pad-to $$(KERNEL_SIZE) | append-ubi | \
197         check-size
198   DEVICE_PACKAGES := kmod-usb3 kmod-mt7615e kmod-mt7615-firmware uboot-envtools
199 endef
200 TARGET_DEVICES += asus_rt-ac65p
201
202 define Device/asus_rt-ac85p
203   $(Device/dsa-migration)
204   DEVICE_VENDOR := ASUS
205   DEVICE_MODEL := RT-AC85P
206   IMAGE_SIZE := 51200k
207   UBINIZE_OPTS := -E 5
208   BLOCKSIZE := 128k
209   PAGESIZE := 2048
210   KERNEL_SIZE := 4096k
211   IMAGES += factory.bin
212   IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
213   IMAGE/factory.bin := append-kernel | pad-to $$(KERNEL_SIZE) | append-ubi | \
214         check-size
215   DEVICE_PACKAGES := kmod-usb3 kmod-mt7615e kmod-mt7615-firmware uboot-envtools
216 endef
217 TARGET_DEVICES += asus_rt-ac85p
218
219 define Device/asus_rt-n56u-b1
220   $(Device/dsa-migration)
221   DEVICE_VENDOR := ASUS
222   DEVICE_MODEL := RT-N56U
223   DEVICE_VARIANT := B1
224   IMAGE_SIZE := 16064k
225   DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2 kmod-usb3 \
226         kmod-usb-ledtrig-usbport
227 endef
228 TARGET_DEVICES += asus_rt-n56u-b1
229
230 define Device/beeline_smartbox-flash
231   $(Device/dsa-migration)
232   $(Device/uimage-lzma-loader)
233   DEVICE_VENDOR := Beeline
234   DEVICE_MODEL := SmartBox Flash
235   IMAGE_SIZE := 32768k
236   KERNEL_SIZE := 4352k
237   UBINIZE_OPTS := -E 5
238   BLOCKSIZE := 128k
239   PAGESIZE := 2048
240   KERNEL := kernel-bin | append-dtb | lzma | loader-kernel | \
241         uImage none | beeline-trx | pad-to $$(KERNEL_SIZE)
242   KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma | loader-kernel | \
243         uImage none
244   IMAGES += factory.trx
245   IMAGE/factory.trx := append-kernel | append-ubi | check-size
246   IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
247   DEVICE_PACKAGES := kmod-usb3 kmod-mt7615e kmod-mt7615-firmware \
248         uboot-envtools
249 endef
250 TARGET_DEVICES += beeline_smartbox-flash
251
252 define Device/buffalo_wsr-1166dhp
253   $(Device/dsa-migration)
254   $(Device/uimage-lzma-loader)
255   IMAGE/sysupgrade.bin := trx | pad-rootfs | append-metadata
256   IMAGE_SIZE := 15936k
257   DEVICE_VENDOR := Buffalo
258   DEVICE_MODEL := WSR-1166DHP
259   DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2
260   SUPPORTED_DEVICES += wsr-1166
261 endef
262 TARGET_DEVICES += buffalo_wsr-1166dhp
263
264 define Device/buffalo_wsr-2533dhpl
265   $(Device/dsa-migration)
266   $(Device/uimage-lzma-loader)
267   IMAGE_SIZE := 7936k
268   DEVICE_VENDOR := Buffalo
269   DEVICE_MODEL := WSR-2533DHPL
270   DEVICE_ALT0_VENDOR := Buffalo
271   DEVICE_ALT0_MODEL := WSR-2533DHP
272   IMAGE/sysupgrade.bin := trx | pad-rootfs | append-metadata
273   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware
274   DEFAULT := n
275 endef
276 TARGET_DEVICES += buffalo_wsr-2533dhpl
277
278 define Device/buffalo_wsr-600dhp
279   $(Device/dsa-migration)
280   IMAGE_SIZE := 16064k
281   DEVICE_VENDOR := Buffalo
282   DEVICE_MODEL := WSR-600DHP
283   DEVICE_PACKAGES := kmod-mt7603 kmod-rt2800-pci
284   SUPPORTED_DEVICES += wsr-600
285 endef
286 TARGET_DEVICES += buffalo_wsr-600dhp
287
288 define Device/cudy_wr1300
289   $(Device/dsa-migration)
290   IMAGE_SIZE := 15872k
291   DEVICE_VENDOR := Cudy
292   DEVICE_MODEL := WR1300
293   DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2 kmod-usb2 kmod-usb3 \
294         kmod-usb-ledtrig-usbport
295 endef
296 TARGET_DEVICES += cudy_wr1300
297
298 define Device/cudy_wr2100
299   $(Device/dsa-migration)
300   DEVICE_VENDOR := Cudy
301   DEVICE_MODEL := WR2100
302   IMAGE_SIZE := 15872k
303   UIMAGE_NAME := R11
304   DEVICE_PACKAGES := kmod-mt7603 kmod-mt7615e kmod-mt7615-firmware
305 endef
306 TARGET_DEVICES += cudy_wr2100
307
308 define Device/dlink_dir-8xx-a1
309   $(Device/dsa-migration)
310   IMAGE_SIZE := 16000k
311   DEVICE_VENDOR := D-Link
312   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware
313   KERNEL := $$(KERNEL) | uimage-sgehdr
314   IMAGES += factory.bin
315   IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | \
316         check-size | append-metadata
317   IMAGE/factory.bin := append-kernel | append-rootfs | check-size
318 endef
319
320 define Device/dlink_dir-8xx-r1
321   $(Device/dsa-migration)
322   IMAGE_SIZE := 16064k
323   DEVICE_VENDOR := D-Link
324   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware
325   KERNEL_INITRAMFS := $$(KERNEL)
326   IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | \
327         check-size | append-metadata
328 endef
329
330 define Device/dlink_dir-xx60-a1
331   $(Device/dsa-migration)
332   BLOCKSIZE := 128k
333   PAGESIZE := 2048
334   KERNEL_SIZE := 4096k
335   IMAGE_SIZE := 40960k
336   UBINIZE_OPTS := -E 5
337   DEVICE_VENDOR := D-Link
338   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware kmod-usb3 \
339         kmod-usb-ledtrig-usbport
340   KERNEL := $$(KERNEL) | uimage-sgehdr
341   IMAGES += factory.bin
342   IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
343   IMAGE/factory.bin := append-kernel | pad-to $$(KERNEL_SIZE) | append-ubi | \
344         check-size
345 endef
346
347 define Device/dlink_dir-1960-a1
348   $(Device/dlink_dir-xx60-a1)
349   DEVICE_MODEL := DIR-1960
350   DEVICE_VARIANT := A1
351 endef
352 TARGET_DEVICES += dlink_dir-1960-a1
353
354 define Device/dlink_dir-2640-a1
355   $(Device/dlink_dir-xx60-a1)
356   DEVICE_MODEL := DIR-2640
357   DEVICE_VARIANT := A1
358 endef
359 TARGET_DEVICES += dlink_dir-2640-a1
360
361 define Device/dlink_dir-2660-a1
362   $(Device/dlink_dir-xx60-a1)
363   DEVICE_MODEL := DIR-2660
364   DEVICE_VARIANT := A1
365 endef
366 TARGET_DEVICES += dlink_dir-2660-a1
367
368 define Device/dlink_dir-853-a3
369   $(Device/dlink_dir-xx60-a1)
370   DEVICE_MODEL := DIR-853
371   DEVICE_VARIANT := A3
372 endef
373 TARGET_DEVICES += dlink_dir-853-a3
374
375 define Device/dlink_dir-853-r1
376   $(Device/dlink_dir-8xx-r1)
377   DEVICE_MODEL := DIR-853
378   DEVICE_VARIANT := R1
379   DEVICE_PACKAGES += kmod-usb3 kmod-usb-ledtrig-usbport
380 endef
381 TARGET_DEVICES += dlink_dir-853-r1
382
383 define Device/dlink_dir-860l-b1
384   $(Device/dsa-migration)
385   $(Device/seama)
386   SEAMA_SIGNATURE := wrgac13_dlink.2013gui_dir860lb
387   LOADER_TYPE := bin
388   KERNEL := kernel-bin | append-dtb | lzma | loader-kernel | relocate-kernel | \
389         lzma -a0 | uImage lzma
390   IMAGE_SIZE := 16064k
391   DEVICE_VENDOR := D-Link
392   DEVICE_MODEL := DIR-860L
393   DEVICE_VARIANT := B1
394   DEVICE_PACKAGES := kmod-mt76x2 kmod-usb3 kmod-usb-ledtrig-usbport
395   SUPPORTED_DEVICES += dir-860l-b1
396 endef
397 TARGET_DEVICES += dlink_dir-860l-b1
398
399 define Device/dlink_dir-867-a1
400   $(Device/dlink_dir-8xx-a1)
401   DEVICE_MODEL := DIR-867
402   DEVICE_VARIANT := A1
403 endef
404 TARGET_DEVICES += dlink_dir-867-a1
405
406 define Device/dlink_dir-878-a1
407   $(Device/dlink_dir-8xx-a1)
408   DEVICE_MODEL := DIR-878
409   DEVICE_VARIANT := A1
410 endef
411 TARGET_DEVICES += dlink_dir-878-a1
412
413 define Device/dlink_dir-878-r1
414   $(Device/dlink_dir-8xx-r1)
415   DEVICE_MODEL := DIR-878
416   DEVICE_VARIANT := R1
417   IMAGES += factory.bin
418   IMAGE/factory.bin := append-kernel | append-rootfs | check-size | \
419         sign-dlink-ru 57c5375741c30ca9ebcb36713db4ba51 \
420         ab0dff19af8842cdb70a86b4b68d23f7
421 endef
422 TARGET_DEVICES += dlink_dir-878-r1
423
424 define Device/dlink_dir-882-a1
425   $(Device/dlink_dir-8xx-a1)
426   DEVICE_MODEL := DIR-882
427   DEVICE_VARIANT := A1
428   DEVICE_PACKAGES += kmod-usb3 kmod-usb-ledtrig-usbport
429 endef
430 TARGET_DEVICES += dlink_dir-882-a1
431
432 define Device/dlink_dir-882-r1
433   $(Device/dlink_dir-8xx-r1)
434   DEVICE_MODEL := DIR-882
435   DEVICE_VARIANT := R1
436   DEVICE_PACKAGES += kmod-usb3 kmod-usb-ledtrig-usbport
437   IMAGES += factory.bin
438   IMAGE/factory.bin := append-kernel | append-rootfs | check-size | \
439         sign-dlink-ru 57c5375741c30ca9ebcb36713db4ba51 \
440         ab0dff19af8842cdb70a86b4b68d23f7
441 endef
442 TARGET_DEVICES += dlink_dir-882-r1
443
444 define Device/dual-q_h721
445   $(Device/dsa-migration)
446   $(Device/uimage-lzma-loader)
447   IMAGE_SIZE := 16064k
448   DEVICE_VENDOR := Dual-Q
449   DEVICE_MODEL := H721
450   DEVICE_PACKAGES := kmod-ata-ahci kmod-sdhci-mt7620 kmod-usb3 -wpad-basic-wolfssl
451 endef
452 TARGET_DEVICES += dual-q_h721
453
454 define Device/d-team_newifi-d2
455   $(Device/dsa-migration)
456   $(Device/uimage-lzma-loader)
457   IMAGE_SIZE := 32448k
458   DEVICE_VENDOR := Newifi
459   DEVICE_MODEL := D2
460   DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2 kmod-usb3 \
461         kmod-usb-ledtrig-usbport
462 endef
463 TARGET_DEVICES += d-team_newifi-d2
464
465 define Device/d-team_pbr-m1
466   $(Device/dsa-migration)
467   IMAGE_SIZE := 32448k
468   DEVICE_VENDOR := PandoraBox
469   DEVICE_MODEL := PBR-M1
470   DEVICE_PACKAGES := kmod-ata-ahci kmod-mt7603 kmod-mt76x2 kmod-sdhci-mt7620 \
471         kmod-usb3 kmod-usb-ledtrig-usbport
472   SUPPORTED_DEVICES += pbr-m1
473 endef
474 TARGET_DEVICES += d-team_pbr-m1
475
476 define Device/edimax_ra21s
477   $(Device/dsa-migration)
478   $(Device/uimage-lzma-loader)
479   IMAGE_SIZE := 16064k
480   DEVICE_VENDOR := Edimax
481   DEVICE_MODEL := RA21S
482   DEVICE_ALT0_VENDOR := Edimax
483   DEVICE_ALT0_MODEL := Gemini RA21S
484   IMAGES += factory.bin
485   IMAGE/factory.bin := $$(sysupgrade_bin) | check-size | \
486         elx-header 02020040 8844A2D168B45A2D
487   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware
488 endef
489 TARGET_DEVICES += edimax_ra21s
490
491 define Device/edimax_re23s
492   $(Device/dsa-migration)
493   $(Device/uimage-lzma-loader)
494   IMAGE_SIZE := 15680k
495   DEVICE_VENDOR := Edimax
496   DEVICE_MODEL := RE23S
497   DEVICE_ALT0_VENDOR := Edimax
498   DEVICE_ALT0_MODEL := Gemini RE23S
499   IMAGE/sysupgrade.bin := append-kernel | append-rootfs | \
500         edimax-header -s CSYS -m RN76 -f 0x70000 -S 0x01100000 | pad-rootfs | \
501         check-size | append-metadata
502   IMAGES += factory.bin
503   IMAGE/factory.bin := append-kernel | append-rootfs | \
504         edimax-header -s CSYS -m RN76 -f 0x70000 -S 0x01100000 | pad-rootfs | \
505         check-size
506   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware
507 endef
508 TARGET_DEVICES += edimax_re23s
509
510 define Device/edimax_rg21s
511   $(Device/dsa-migration)
512   $(Device/uimage-lzma-loader)
513   IMAGE_SIZE := 16064k
514   DEVICE_VENDOR := Edimax
515   DEVICE_MODEL := Gemini AC2600 RG21S
516   IMAGES += factory.bin
517   IMAGE/factory.bin := $$(sysupgrade_bin) | check-size | \
518         elx-header 02020038 8844A2D168B45A2D
519   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware
520 endef
521 TARGET_DEVICES += edimax_rg21s
522
523 define Device/elecom_wrc-1167ghbk2-s
524   $(Device/dsa-migration)
525   IMAGE_SIZE := 15488k
526   DEVICE_VENDOR := ELECOM
527   DEVICE_MODEL := WRC-1167GHBK2-S
528   IMAGES += factory.bin
529   IMAGE/factory.bin := $$(sysupgrade_bin) | check-size | \
530         elecom-wrc-gs-factory WRC-1167GHBK2-S 0.00
531   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware
532 endef
533 TARGET_DEVICES += elecom_wrc-1167ghbk2-s
534
535 define Device/elecom_wrc-gs
536   $(Device/dsa-migration)
537   $(Device/uimage-lzma-loader)
538   DEVICE_VENDOR := ELECOM
539   IMAGES += factory.bin
540   IMAGE/factory.bin := $$(sysupgrade_bin) | check-size | \
541         elecom-wrc-gs-factory $$$$(ELECOM_HWNAME) 0.00 -N | \
542         append-string MT7621_ELECOM_$$$$(ELECOM_HWNAME)
543   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware
544 endef
545
546 define Device/elecom_wrc-1167gs2-b
547   $(Device/elecom_wrc-gs)
548   IMAGE_SIZE := 11264k
549   DEVICE_MODEL := WRC-1167GS2-B
550   ELECOM_HWNAME := WRC-1167GS2
551 endef
552 TARGET_DEVICES += elecom_wrc-1167gs2-b
553
554 define Device/elecom_wrc-1167gst2
555   $(Device/elecom_wrc-gs)
556   IMAGE_SIZE := 24576k
557   DEVICE_MODEL := WRC-1167GST2
558   ELECOM_HWNAME := WRC-1167GST2
559 endef
560 TARGET_DEVICES += elecom_wrc-1167gst2
561
562 define Device/elecom_wrc-1750gs
563   $(Device/elecom_wrc-gs)
564   IMAGE_SIZE := 11264k
565   DEVICE_MODEL := WRC-1750GS
566   ELECOM_HWNAME := WRC-1750GS
567 endef
568 TARGET_DEVICES += elecom_wrc-1750gs
569
570 define Device/elecom_wrc-1750gst2
571   $(Device/elecom_wrc-gs)
572   IMAGE_SIZE := 24576k
573   DEVICE_MODEL := WRC-1750GST2
574   ELECOM_HWNAME := WRC-1750GST2
575 endef
576 TARGET_DEVICES += elecom_wrc-1750gst2
577
578 define Device/elecom_wrc-1750gsv
579   $(Device/elecom_wrc-gs)
580   IMAGE_SIZE := 11264k
581   DEVICE_MODEL := WRC-1750GSV
582   ELECOM_HWNAME := WRC-1750GSV
583 endef
584 TARGET_DEVICES += elecom_wrc-1750gsv
585
586 define Device/elecom_wrc-1900gst
587   $(Device/elecom_wrc-gs)
588   IMAGE_SIZE := 11264k
589   DEVICE_MODEL := WRC-1900GST
590   ELECOM_HWNAME := WRC-1900GST
591 endef
592 TARGET_DEVICES += elecom_wrc-1900gst
593
594 define Device/elecom_wrc-2533ghbk-i
595   $(Device/dsa-migration)
596   $(Device/uimage-lzma-loader)
597   DEVICE_VENDOR := ELECOM
598   DEVICE_MODEL := WRC-2533GHBK-I
599   IMAGE_SIZE := 9856k
600   IMAGES += factory.bin
601   IMAGE/factory.bin := $$(sysupgrade_bin) | check-size | \
602         elx-header 0107002d 8844A2D168B45A2D | \
603         elecom-product-header WRC-2533GHBK-I
604   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware
605 endef
606 TARGET_DEVICES += elecom_wrc-2533ghbk-i
607
608 define Device/elecom_wrc-2533gs2
609   $(Device/elecom_wrc-gs)
610   IMAGE_SIZE := 11264k
611   DEVICE_MODEL := WRC-2533GS2
612   ELECOM_HWNAME := WRC-2533GS2
613 endef
614 TARGET_DEVICES += elecom_wrc-2533gs2
615
616 define Device/elecom_wrc-2533gst
617   $(Device/elecom_wrc-gs)
618   IMAGE_SIZE := 11264k
619   DEVICE_MODEL := WRC-2533GST
620   ELECOM_HWNAME := WRC-2533GST
621 endef
622 TARGET_DEVICES += elecom_wrc-2533gst
623
624 define Device/elecom_wrc-2533gst2
625   $(Device/elecom_wrc-gs)
626   IMAGE_SIZE := 24576k
627   DEVICE_MODEL := WRC-2533GST2
628   ELECOM_HWNAME := WRC-2533GST2
629 endef
630 TARGET_DEVICES += elecom_wrc-2533gst2
631
632 define Device/firefly_firewrt
633   $(Device/dsa-migration)
634   IMAGE_SIZE := 16064k
635   DEVICE_VENDOR := Firefly
636   DEVICE_MODEL := FireWRT
637   DEVICE_PACKAGES := kmod-mt76x2 kmod-usb3 kmod-usb-ledtrig-usbport
638   SUPPORTED_DEVICES += firewrt
639 endef
640 TARGET_DEVICES += firefly_firewrt
641
642 define Device/gehua_ghl-r-001
643   $(Device/dsa-migration)
644   IMAGE_SIZE := 32448k
645   DEVICE_VENDOR := GeHua
646   DEVICE_MODEL := GHL-R-001
647   DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2 kmod-usb3 \
648         kmod-usb-ledtrig-usbport
649 endef
650 TARGET_DEVICES += gehua_ghl-r-001
651
652 define Device/glinet_gl-mt1300
653   $(Device/dsa-migration)
654   IMAGE_SIZE := 32448k
655   DEVICE_VENDOR := GL.iNet
656   DEVICE_MODEL := GL-MT1300
657   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware kmod-usb3
658 endef
659 TARGET_DEVICES += glinet_gl-mt1300
660
661 define Device/gnubee_gb-pc1
662   $(Device/dsa-migration)
663   DEVICE_VENDOR := GnuBee
664   DEVICE_MODEL := Personal Cloud One
665   DEVICE_PACKAGES := kmod-ata-ahci kmod-usb3 kmod-sdhci-mt7620 -wpad-basic-wolfssl
666   IMAGE_SIZE := 32448k
667 endef
668 TARGET_DEVICES += gnubee_gb-pc1
669
670 define Device/gnubee_gb-pc2
671   $(Device/dsa-migration)
672   DEVICE_VENDOR := GnuBee
673   DEVICE_MODEL := Personal Cloud Two
674   DEVICE_PACKAGES := kmod-ata-ahci kmod-usb3 kmod-sdhci-mt7620 -wpad-basic-wolfssl
675   IMAGE_SIZE := 32448k
676 endef
677 TARGET_DEVICES += gnubee_gb-pc2
678
679 define Device/hilink_hlk-7621a-evb
680   $(Device/dsa-migration)
681   $(Device/uimage-lzma-loader)
682   DEVICE_VENDOR := HiLink
683   DEVICE_MODEL := HLK-7621A evaluation board
684   DEVICE_PACKAGES += kmod-mt76x2 kmod-usb3
685   IMAGE_SIZE := 32448k
686 endef
687 TARGET_DEVICES += hilink_hlk-7621a-evb
688
689 define Device/hiwifi_hc5962
690   $(Device/dsa-migration)
691   BLOCKSIZE := 128k
692   PAGESIZE := 2048
693   KERNEL_SIZE := 4096k
694   UBINIZE_OPTS := -E 5
695   IMAGE_SIZE := 32768k
696   IMAGES += factory.bin
697   IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
698   IMAGE/factory.bin := append-kernel | pad-to $$(KERNEL_SIZE) | append-ubi | \
699         check-size
700   DEVICE_VENDOR := HiWiFi
701   DEVICE_MODEL := HC5962
702   DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2 kmod-usb3
703 endef
704 TARGET_DEVICES += hiwifi_hc5962
705
706 define Device/humax_e10
707   $(Device/dsa-migration)
708   $(Device/uimage-lzma-loader)
709   IMAGE_SIZE := 15936k
710   DEVICE_VENDOR := HUMAX
711   DEVICE_MODEL := E10
712   DEVICE_ALT0_VENDOR := HUMAX
713   DEVICE_ALT0_MODEL := QUANTUM E10
714   IMAGE/sysupgrade.bin := append-kernel | append-rootfs | \
715         edimax-header -s CSYS -m EA03 -f 0x70000 -S 0x01100000 | pad-rootfs | \
716         check-size | append-metadata
717   IMAGES += factory.bin
718   IMAGE/factory.bin := append-kernel | append-rootfs | pad-rootfs | \
719         edimax-header -s CSYS -m EA03 -f 0x70000 -S 0x01100000 | \
720         check-size | zip upg -P f013c26cf0a320fb71d03356dcb6bb63
721   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware kmod-usb3
722 endef
723 TARGET_DEVICES += humax_e10
724
725 define Device/iodata_wn-ax1167gr
726   $(Device/dsa-migration)
727   $(Device/uimage-lzma-loader)
728   IMAGE_SIZE := 15552k
729   KERNEL_INITRAMFS := $$(KERNEL) | \
730         iodata-factory 7864320 4 0x1055 $(KDIR)/tmp/$$(KERNEL_INITRAMFS_PREFIX)-factory.bin
731   DEVICE_VENDOR := I-O DATA
732   DEVICE_MODEL := WN-AX1167GR
733   DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2
734 endef
735 TARGET_DEVICES += iodata_wn-ax1167gr
736
737 define Device/iodata_nand
738   $(Device/dsa-migration)
739   DEVICE_VENDOR := I-O DATA
740   BLOCKSIZE := 128k
741   PAGESIZE := 2048
742   UBINIZE_OPTS := -E 5
743   KERNEL_SIZE := 4096k
744   IMAGE_SIZE := 51200k
745   LOADER_TYPE := bin
746   KERNEL := kernel-bin | append-dtb | lzma | loader-kernel | lzma | uImage lzma
747   IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
748 endef
749
750 # The OEM webinterface expects an kernel with initramfs which has the uImage
751 # header field ih_name.
752 # We don't want to set the header name field for the kernel include in the
753 # sysupgrade image as well, as this image shouldn't be accepted by the OEM
754 # webinterface. It will soft-brick the board.
755
756 define Device/iodata_wn-ax1167gr2
757   $(Device/iodata_nand)
758   DEVICE_MODEL := WN-AX1167GR2
759   KERNEL_INITRAMFS := $(KERNEL_DTB) | loader-kernel | lzma | \
760         uImage lzma -M 0x434f4d42 -n '3.10(XBC.1)b10' | iodata-mstc-header
761   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware
762 endef
763 TARGET_DEVICES += iodata_wn-ax1167gr2
764
765 define Device/iodata_wn-ax2033gr
766   $(Device/iodata_nand)
767   DEVICE_MODEL := WN-AX2033GR
768   KERNEL_INITRAMFS := $(KERNEL_DTB) | loader-kernel | lzma | \
769         uImage lzma -M 0x434f4d42 -n '3.10(VST.1)C10' | iodata-mstc-header
770   DEVICE_PACKAGES := kmod-mt7603 kmod-mt7615e kmod-mt7615-firmware
771 endef
772 TARGET_DEVICES += iodata_wn-ax2033gr
773
774 define Device/iodata_wn-dx1167r
775   $(Device/iodata_nand)
776   DEVICE_MODEL := WN-DX1167R
777   KERNEL_INITRAMFS := $(KERNEL_DTB) | loader-kernel | lzma | \
778         uImage lzma -M 0x434f4d43 -n '3.10(XIK.1)b10' | iodata-mstc-header
779   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware
780 endef
781 TARGET_DEVICES += iodata_wn-dx1167r
782
783 define Device/iodata_wn-dx1200gr
784   $(Device/iodata_nand)
785   DEVICE_MODEL := WN-DX1200GR
786   KERNEL_INITRAMFS := $(KERNEL_DTB) | loader-kernel | lzma | \
787         uImage lzma -M 0x434f4d43 -n '3.10(XIQ.0)b20' | iodata-mstc-header
788   DEVICE_PACKAGES := kmod-mt7603 kmod-mt7615e kmod-mt7663-firmware-ap
789 endef
790 TARGET_DEVICES += iodata_wn-dx1200gr
791
792 define Device/iodata_wn-dx2033gr
793   $(Device/iodata_nand)
794   DEVICE_MODEL := WN-DX2033GR
795   KERNEL_INITRAMFS := $(KERNEL_DTB) | loader-kernel | lzma | \
796         uImage lzma -M 0x434f4d42 -n '3.10(XID.0)b30' | iodata-mstc-header
797   DEVICE_PACKAGES := kmod-mt7603 kmod-mt7615e kmod-mt7615-firmware
798 endef
799 TARGET_DEVICES += iodata_wn-dx2033gr
800
801 define Device/iodata_wn-gx300gr
802   $(Device/dsa-migration)
803   $(Device/uimage-lzma-loader)
804   IMAGE_SIZE := 7616k
805   DEVICE_VENDOR := I-O DATA
806   DEVICE_MODEL := WN-GX300GR
807   DEVICE_PACKAGES := kmod-mt7603
808 endef
809 TARGET_DEVICES += iodata_wn-gx300gr
810
811 define Device/iodata_wnpr2600g
812   $(Device/dsa-migration)
813   $(Device/uimage-lzma-loader)
814   DEVICE_VENDOR := I-O DATA
815   DEVICE_MODEL := WNPR2600G
816   IMAGE_SIZE := 13952k
817   IMAGES += factory.bin
818   IMAGE/factory.bin := $$(sysupgrade_bin) | check-size | \
819         elx-header 0104003a 8844A2D168B45A2D
820   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware
821 endef
822 TARGET_DEVICES += iodata_wnpr2600g
823
824 define Device/iptime_a3002mesh
825   $(Device/dsa-migration)
826   IMAGE_SIZE := 16128k
827   UIMAGE_NAME := a3002me
828   DEVICE_VENDOR := ipTIME
829   DEVICE_MODEL := A3002MESH
830   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware
831 endef
832 TARGET_DEVICES += iptime_a3002mesh
833
834 define Device/iptime_a3004ns-dual
835   $(Device/dsa-migration)
836   $(Device/uimage-lzma-loader)
837   IMAGE_SIZE := 16128k
838   UIMAGE_NAME := a3004nd
839   DEVICE_VENDOR := ipTIME
840   DEVICE_MODEL := A3004NS-dual
841   DEVICE_PACKAGES := kmod-usb3 kmod-mt76x2 kmod-usb-ledtrig-usbport
842 endef
843 TARGET_DEVICES += iptime_a3004ns-dual
844
845 define Device/iptime_a3004t
846   $(Device/dsa-migration)
847   $(Device/uimage-lzma-loader)
848   BLOCKSIZE := 128k
849   PAGESIZE := 2048
850   FILESYSTEMS := squashfs
851   KERNEL_SIZE := 4096k
852   IMAGE_SIZE := 129280k
853   UIMAGE_NAME := a3004t
854   UBINIZE_OPTS := -E 5
855   IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
856   DEVICE_VENDOR := ipTIME
857   DEVICE_MODEL := A3004T
858   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware kmod-usb3
859 endef
860 TARGET_DEVICES += iptime_a3004t
861
862 define Device/iptime_a6004ns-m
863   $(Device/dsa-migration)
864   IMAGE_SIZE := 16128k
865   UIMAGE_NAME := a6004nm
866   DEVICE_VENDOR := ipTIME
867   DEVICE_MODEL := A6004NS-M
868   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware kmod-usb3 \
869         kmod-usb-ledtrig-usbport
870 endef
871 TARGET_DEVICES += iptime_a6004ns-m
872
873 define Device/iptime_a6ns-m
874   $(Device/dsa-migration)
875   IMAGE_SIZE := 16128k
876   UIMAGE_NAME := a6nm
877   DEVICE_VENDOR := ipTIME
878   DEVICE_MODEL := A6ns-M
879   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware kmod-usb3 \
880         kmod-usb-ledtrig-usbport
881 endef
882 TARGET_DEVICES += iptime_a6ns-m
883
884 define Device/iptime_a8004t
885   $(Device/dsa-migration)
886   IMAGE_SIZE := 16128k
887   UIMAGE_NAME := a8004t
888   DEVICE_VENDOR := ipTIME
889   DEVICE_MODEL := A8004T
890   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware kmod-usb3
891 endef
892 TARGET_DEVICES += iptime_a8004t
893
894 define Device/iptime_ax2004m
895   $(Device/dsa-migration)
896   BLOCKSIZE := 128k
897   PAGESIZE := 2048
898   KERNEL_SIZE := 4096k
899   IMAGE_SIZE := 121344k
900   UBINIZE_OPTS := -E 5
901   KERNEL_LOADADDR := 0x82000000
902   KERNEL := kernel-bin | relocate-kernel 0x80001000 | lzma | \
903         fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
904   IMAGES += recovery.bin
905   IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
906   IMAGE/recovery.bin := append-kernel | pad-to $$(KERNEL_SIZE) | append-ubi | \
907         check-size | iptime-crc32 ax2004m
908   DEVICE_VENDOR := ipTIME
909   DEVICE_MODEL := AX2004M
910   DEVICE_PACKAGES := kmod-mt7915e kmod-usb3
911 endef
912 TARGET_DEVICES += iptime_ax2004m
913
914 define Device/iptime_t5004
915   $(Device/dsa-migration)
916   BLOCKSIZE := 128k
917   PAGESIZE := 2048
918   KERNEL_SIZE := 4096k
919   IMAGE_SIZE := 129280k
920   UBINIZE_OPTS := -E 5
921   UIMAGE_NAME := t5004
922   IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
923   DEVICE_VENDOR := ipTIME
924   DEVICE_MODEL := T5004
925   DEVICE_PACKAGES := -wpad-basic-wolfssl
926 endef
927 TARGET_DEVICES += iptime_t5004
928
929 define Device/jcg_jhr-ac876m
930   $(Device/dsa-migration)
931   IMAGE_SIZE := 16064k
932   IMAGES += factory.bin
933   IMAGE/factory.bin := $$(sysupgrade_bin) | check-size | jcg-header 89.1
934   JCG_MAXSIZE := 16064k
935   DEVICE_VENDOR := JCG
936   DEVICE_MODEL := JHR-AC876M
937   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware kmod-usb3 \
938         kmod-usb-ledtrig-usbport
939 endef
940 TARGET_DEVICES += jcg_jhr-ac876m
941
942 define Device/jcg_q20
943   $(Device/dsa-migration)
944   BLOCKSIZE := 128k
945   PAGESIZE := 2048
946   UBINIZE_OPTS := -E 5
947   KERNEL_SIZE := 4096k
948   IMAGE_SIZE := 91136k
949   IMAGES += factory.bin
950   IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
951   IMAGE/factory.bin := append-kernel | pad-to $$(KERNEL_SIZE) | append-ubi | \
952         check-size
953   DEVICE_VENDOR := JCG
954   DEVICE_MODEL := Q20
955   DEVICE_PACKAGES := kmod-mt7915e uboot-envtools
956 endef
957 TARGET_DEVICES += jcg_q20
958
959 define Device/jcg_y2
960   $(Device/dsa-migration)
961   $(Device/uimage-lzma-loader)
962   IMAGE_SIZE := 16064k
963   IMAGES += factory.bin
964   IMAGE/factory.bin := $$(sysupgrade_bin) | check-size | jcg-header 95.1
965   JCG_MAXSIZE := 16064k
966   DEVICE_VENDOR := JCG
967   DEVICE_MODEL := Y2
968   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware kmod-usb3
969 endef
970 TARGET_DEVICES += jcg_y2
971
972 define Device/lenovo_newifi-d1
973   $(Device/dsa-migration)
974   $(Device/uimage-lzma-loader)
975   IMAGE_SIZE := 32448k
976   DEVICE_VENDOR := Newifi
977   DEVICE_MODEL := D1
978   DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2 kmod-usb3 kmod-sdhci-mt7620 \
979         kmod-usb-ledtrig-usbport
980   SUPPORTED_DEVICES += newifi-d1
981 endef
982 TARGET_DEVICES += lenovo_newifi-d1
983
984 define Device/linksys_e5600
985   $(Device/dsa-migration)
986   $(Device/uimage-lzma-loader)
987   BLOCKSIZE := 128k
988   PAGESIZE := 2048
989   KERNEL_SIZE := 4096k
990   IMAGE_SIZE := 26624k
991   DEVICE_VENDOR := Linksys
992   DEVICE_MODEL := E5600
993   DEVICE_PACKAGES := kmod-mt7603 kmod-mt7615e kmod-mt7663-firmware-ap \
994         uboot-envtools
995   UBINIZE_OPTS := -E 5
996   IMAGES += factory.bin
997   IMAGE/sysupgrade.bin := sysupgrade-tar | check-size | append-metadata
998   IMAGE/factory.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | \
999         append-ubi | check-size | gemtek-trailer
1000 endef
1001 TARGET_DEVICES += linksys_e5600
1002
1003 define Device/linksys_ea7xxx
1004   $(Device/dsa-migration)
1005   $(Device/uimage-lzma-loader)
1006   BLOCKSIZE := 128k
1007   PAGESIZE := 2048
1008   KERNEL_SIZE := 4096k
1009   IMAGE_SIZE := 36864k
1010   DEVICE_VENDOR := Linksys
1011   DEVICE_PACKAGES := kmod-usb3 kmod-mt7615e kmod-mt7615-firmware \
1012         uboot-envtools
1013   UBINIZE_OPTS := -E 5
1014   IMAGES := sysupgrade.bin factory.bin
1015   IMAGE/sysupgrade.bin := sysupgrade-tar | check-size | append-metadata
1016   IMAGE/factory.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | \
1017         append-ubi | check-size | linksys-image type=$$$$(LINKSYS_HWNAME)
1018 endef
1019
1020 define Device/linksys_ea6350-v4
1021   $(Device/linksys_ea7xxx)
1022   DEVICE_MODEL := EA6350
1023   DEVICE_VARIANT := v4
1024   LINKSYS_HWNAME := EA6350
1025   DEVICE_PACKAGES += kmod-mt7603 kmod-mt7663-firmware-ap
1026 endef
1027 TARGET_DEVICES += linksys_ea6350-v4
1028
1029 define Device/linksys_ea7300-v1
1030   $(Device/linksys_ea7xxx)
1031   DEVICE_MODEL := EA7300
1032   DEVICE_VARIANT := v1
1033   LINKSYS_HWNAME := EA7300
1034 endef
1035 TARGET_DEVICES += linksys_ea7300-v1
1036
1037 define Device/linksys_ea7300-v2
1038   $(Device/linksys_ea7xxx)
1039   DEVICE_MODEL := EA7300
1040   DEVICE_VARIANT := v2
1041   LINKSYS_HWNAME := EA7300v2
1042   DEVICE_PACKAGES += kmod-mt7603
1043 endef
1044 TARGET_DEVICES += linksys_ea7300-v2
1045
1046 define Device/linksys_ea7500-v2
1047   $(Device/linksys_ea7xxx)
1048   DEVICE_MODEL := EA7500
1049   DEVICE_VARIANT := v2
1050   LINKSYS_HWNAME := EA7500v2
1051 endef
1052 TARGET_DEVICES += linksys_ea7500-v2
1053
1054 define Device/linksys_ea8100-v1
1055   $(Device/linksys_ea7xxx)
1056   DEVICE_MODEL := EA8100
1057   DEVICE_VARIANT := v1
1058   LINKSYS_HWNAME := EA8100
1059 endef
1060 TARGET_DEVICES += linksys_ea8100-v1
1061
1062 define Device/linksys_ea8100-v2
1063   $(Device/linksys_ea7xxx)
1064   DEVICE_MODEL := EA8100
1065   DEVICE_VARIANT := v2
1066   LINKSYS_HWNAME := EA8100v2
1067 endef
1068 TARGET_DEVICES += linksys_ea8100-v2
1069
1070 define Device/linksys_re6500
1071   $(Device/dsa-migration)
1072   IMAGE_SIZE := 7872k
1073   DEVICE_VENDOR := Linksys
1074   DEVICE_MODEL := RE6500
1075   DEVICE_PACKAGES := kmod-mt76x2
1076   SUPPORTED_DEVICES += re6500
1077 endef
1078 TARGET_DEVICES += linksys_re6500
1079
1080 define Device/mediatek_ap-mt7621a-v60
1081   $(Device/dsa-migration)
1082   IMAGE_SIZE := 7872k
1083   DEVICE_VENDOR := Mediatek
1084   DEVICE_MODEL := AP-MT7621A-V60 EVB
1085   DEVICE_PACKAGES := kmod-usb3 kmod-sdhci-mt7620 kmod-sound-mt7620 -wpad-basic-wolfssl
1086 endef
1087 TARGET_DEVICES += mediatek_ap-mt7621a-v60
1088
1089 define Device/mediatek_mt7621-eval-board
1090   $(Device/dsa-migration)
1091   BLOCKSIZE := 64k
1092   IMAGE_SIZE := 15104k
1093   DEVICE_VENDOR := MediaTek
1094   DEVICE_MODEL := MT7621 EVB
1095   DEVICE_PACKAGES := -wpad-basic-wolfssl
1096   SUPPORTED_DEVICES += mt7621
1097 endef
1098 TARGET_DEVICES += mediatek_mt7621-eval-board
1099
1100 define Device/MikroTik
1101   $(Device/dsa-migration)
1102   DEVICE_VENDOR := MikroTik
1103   BLOCKSIZE := 64k
1104   IMAGE_SIZE := 16128k
1105   DEVICE_PACKAGES := kmod-usb3
1106   KERNEL_NAME := vmlinuz
1107   KERNEL := kernel-bin | append-dtb-elf
1108   IMAGE/sysupgrade.bin := append-kernel | kernel2minor -s 1024 | \
1109         pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size | \
1110         append-metadata
1111 endef
1112
1113 define Device/mikrotik_routerboard-750gr3
1114   $(Device/MikroTik)
1115   DEVICE_MODEL := RouterBOARD 750Gr3
1116   DEVICE_PACKAGES += -wpad-basic-wolfssl
1117   SUPPORTED_DEVICES += mikrotik,rb750gr3
1118 endef
1119 TARGET_DEVICES += mikrotik_routerboard-750gr3
1120
1121 define Device/mikrotik_routerboard-760igs
1122   $(Device/MikroTik)
1123   DEVICE_MODEL := RouterBOARD 760iGS
1124   DEVICE_PACKAGES += kmod-sfp -wpad-basic-wolfssl
1125 endef
1126 TARGET_DEVICES += mikrotik_routerboard-760igs
1127
1128 define Device/mikrotik_routerboard-m11g
1129   $(Device/MikroTik)
1130   DEVICE_MODEL := RouterBOARD M11G
1131   DEVICE_PACKAGES := -wpad-basic-wolfssl
1132   SUPPORTED_DEVICES += mikrotik,rbm11g
1133 endef
1134 TARGET_DEVICES += mikrotik_routerboard-m11g
1135
1136 define Device/mikrotik_routerboard-m33g
1137   $(Device/MikroTik)
1138   DEVICE_MODEL := RouterBOARD M33G
1139   DEVICE_PACKAGES := -wpad-basic-wolfssl
1140   SUPPORTED_DEVICES += mikrotik,rbm33g
1141 endef
1142 TARGET_DEVICES += mikrotik_routerboard-m33g
1143
1144 define Device/mqmaker_witi
1145   $(Device/dsa-migration)
1146   $(Device/uimage-lzma-loader)
1147   IMAGE_SIZE := 16064k
1148   DEVICE_VENDOR := MQmaker
1149   DEVICE_MODEL := WiTi
1150   DEVICE_PACKAGES := kmod-ata-ahci kmod-mt76x2 kmod-sdhci-mt7620 kmod-usb3 \
1151         kmod-usb-ledtrig-usbport
1152   SUPPORTED_DEVICES += witi mqmaker,witi-256m mqmaker,witi-512m
1153 endef
1154 TARGET_DEVICES += mqmaker_witi
1155
1156 define Device/mtc_wr1201
1157   $(Device/dsa-migration)
1158   $(Device/uimage-lzma-loader)
1159   IMAGE_SIZE := 16000k
1160   DEVICE_VENDOR := MTC
1161   DEVICE_MODEL := Wireless Router WR1201
1162   KERNEL_INITRAMFS := $(KERNEL_DTB) | uImage lzma -n 'WR1201_8_128'
1163   DEVICE_PACKAGES := kmod-sdhci-mt7620 kmod-mt76x2 kmod-usb3 \
1164         kmod-usb-ledtrig-usbport
1165 endef
1166 TARGET_DEVICES += mtc_wr1201
1167
1168 define Device/netgear_ex6150
1169   $(Device/dsa-migration)
1170   DEVICE_VENDOR := NETGEAR
1171   DEVICE_MODEL := EX6150
1172   DEVICE_PACKAGES := kmod-mt76x2
1173   NETGEAR_BOARD_ID := U12H318T00_NETGEAR
1174   IMAGE_SIZE := 14848k
1175   IMAGES += factory.chk
1176   IMAGE/factory.chk := $$(sysupgrade_bin) | check-size | netgear-chk
1177 endef
1178 TARGET_DEVICES += netgear_ex6150
1179
1180 define Device/netgear_sercomm_nand
1181   $(Device/dsa-migration)
1182   $(Device/uimage-lzma-loader)
1183   BLOCKSIZE := 128k
1184   PAGESIZE := 2048
1185   KERNEL_SIZE := 4096k
1186   UBINIZE_OPTS := -E 5
1187   IMAGES += factory.img kernel.bin rootfs.bin
1188   IMAGE/factory.img := pad-extra 2048k | append-kernel | pad-to 6144k | \
1189         append-ubi | pad-to $$$$(BLOCKSIZE) | sercom-footer | pad-to 128 | \
1190         zip $$$$(SERCOMM_HWNAME).bin | sercom-seal
1191   IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
1192   IMAGE/kernel.bin := append-kernel
1193   IMAGE/rootfs.bin := append-ubi | check-size
1194   DEVICE_VENDOR := NETGEAR
1195   DEVICE_PACKAGES := kmod-mt7603 kmod-usb3 kmod-usb-ledtrig-usbport
1196 endef
1197
1198 define Device/netgear_r6220
1199   $(Device/netgear_sercomm_nand)
1200   DEVICE_MODEL := R6220
1201   SERCOMM_HWNAME := R6220
1202   SERCOMM_HWID := AYA
1203   SERCOMM_HWVER := A001
1204   SERCOMM_SWVER := 0x0086
1205   IMAGE_SIZE := 28672k
1206   DEVICE_PACKAGES += kmod-mt76x2
1207   SUPPORTED_DEVICES += r6220
1208 endef
1209 TARGET_DEVICES += netgear_r6220
1210
1211
1212 define Device/netgear_r6260
1213   $(Device/netgear_sercomm_nand)
1214   DEVICE_MODEL := R6260
1215   SERCOMM_HWNAME := R6260
1216   SERCOMM_HWID := CHJ
1217   SERCOMM_HWVER := A001
1218   SERCOMM_SWVER := 0x0052
1219   IMAGE_SIZE := 40960k
1220   DEVICE_PACKAGES += kmod-mt7615e kmod-mt7615-firmware
1221 endef
1222 TARGET_DEVICES += netgear_r6260
1223
1224 define Device/netgear_r6350
1225   $(Device/netgear_sercomm_nand)
1226   DEVICE_MODEL := R6350
1227   SERCOMM_HWNAME := R6350
1228   SERCOMM_HWID := CHJ
1229   SERCOMM_HWVER := A001
1230   SERCOMM_SWVER := 0x0052
1231   IMAGE_SIZE := 40960k
1232   DEVICE_PACKAGES += kmod-mt7615e kmod-mt7615-firmware
1233 endef
1234 TARGET_DEVICES += netgear_r6350
1235
1236 define Device/netgear_r6700-v2
1237   $(Device/netgear_sercomm_nand)
1238   DEVICE_MODEL := R6700
1239   DEVICE_VARIANT := v2
1240   DEVICE_ALT0_VENDOR := NETGEAR
1241   DEVICE_ALT0_MODEL := Nighthawk AC2400
1242   DEVICE_ALT0_VARIANT := v1
1243   DEVICE_ALT1_VENDOR := NETGEAR
1244   DEVICE_ALT1_MODEL := Nighthawk AC2100
1245   DEVICE_ALT1_VARIANT := v1
1246   SERCOMM_HWNAME := R6950
1247   SERCOMM_HWID := BZV
1248   SERCOMM_HWVER := A001
1249   SERCOMM_SWVER := 0x1032
1250   IMAGE_SIZE := 40960k
1251   DEVICE_PACKAGES += kmod-mt7615e kmod-mt7615-firmware
1252 endef
1253 TARGET_DEVICES += netgear_r6700-v2
1254
1255 define Device/netgear_r6800
1256   $(Device/netgear_sercomm_nand)
1257   DEVICE_MODEL := R6800
1258   SERCOMM_HWNAME := R6950
1259   SERCOMM_HWID := BZV
1260   SERCOMM_HWVER := A001
1261   SERCOMM_SWVER := 0x0062
1262   IMAGE_SIZE := 40960k
1263   DEVICE_PACKAGES += kmod-mt7615e kmod-mt7615-firmware
1264 endef
1265 TARGET_DEVICES += netgear_r6800
1266
1267 define Device/netgear_r6850
1268   $(Device/netgear_sercomm_nand)
1269   DEVICE_MODEL := R6850
1270   SERCOMM_HWNAME := R6850
1271   SERCOMM_HWID := CHJ
1272   SERCOMM_HWVER := A001
1273   SERCOMM_SWVER := 0x0052
1274   IMAGE_SIZE := 40960k
1275   DEVICE_PACKAGES += kmod-mt7615e kmod-mt7615-firmware
1276 endef
1277 TARGET_DEVICES += netgear_r6850
1278
1279 define Device/netgear_r6900-v2
1280   $(Device/netgear_sercomm_nand)
1281   DEVICE_MODEL := R6900
1282   DEVICE_VARIANT := v2
1283   SERCOMM_HWNAME := R6950
1284   SERCOMM_HWID := BZV
1285   SERCOMM_HWVER := A001
1286   SERCOMM_SWVER := 0x1032
1287   IMAGE_SIZE := 40960k
1288   DEVICE_PACKAGES += kmod-mt7615e kmod-mt7615-firmware
1289 endef
1290 TARGET_DEVICES += netgear_r6900-v2
1291
1292 define Device/netgear_r7200
1293   $(Device/netgear_sercomm_nand)
1294   DEVICE_MODEL := R7200
1295   SERCOMM_HWNAME := R6950
1296   SERCOMM_HWID := BZV
1297   SERCOMM_HWVER := A001
1298   SERCOMM_SWVER := 0x1032
1299   IMAGE_SIZE := 40960k
1300   DEVICE_PACKAGES += kmod-mt7615e kmod-mt7615-firmware
1301 endef
1302 TARGET_DEVICES += netgear_r7200
1303
1304 define Device/netgear_r7450
1305   $(Device/netgear_sercomm_nand)
1306   DEVICE_MODEL := R7450
1307   SERCOMM_HWNAME := R6950
1308   SERCOMM_HWID := BZV
1309   SERCOMM_HWVER := A001
1310   SERCOMM_SWVER := 0x1032
1311   IMAGE_SIZE := 40960k
1312   DEVICE_PACKAGES += kmod-mt7615e kmod-mt7615-firmware
1313 endef
1314 TARGET_DEVICES += netgear_r7450
1315
1316 define Device/netgear_wac104
1317   $(Device/netgear_sercomm_nand)
1318   DEVICE_MODEL := WAC104
1319   SERCOMM_HWNAME := WAC104
1320   SERCOMM_HWID := CAY
1321   SERCOMM_HWVER := A001
1322   SERCOMM_SWVER := 0x0006
1323   IMAGE_SIZE := 28672k
1324   DEVICE_PACKAGES += kmod-mt76x2
1325 endef
1326 TARGET_DEVICES += netgear_wac104
1327
1328 define Device/netgear_wac124
1329   $(Device/netgear_sercomm_nand)
1330   DEVICE_MODEL := WAC124
1331   SERCOMM_HWNAME := WAC124
1332   SERCOMM_HWID := CTL
1333   SERCOMM_HWVER := A003
1334   SERCOMM_SWVER := 0x0402
1335   IMAGE_SIZE := 40960k
1336   DEVICE_PACKAGES += kmod-mt7615e kmod-mt7615-firmware
1337 endef
1338 TARGET_DEVICES += netgear_wac124
1339
1340 define Device/netgear_wndr3700-v5
1341   $(Device/dsa-migration)
1342   $(Device/netgear_sercomm_nor)
1343   $(Device/uimage-lzma-loader)
1344   IMAGE_SIZE := 15232k
1345   DEVICE_MODEL := WNDR3700
1346   DEVICE_VARIANT := v5
1347   SERCOMM_HWNAME := WNDR3700v5
1348   SERCOMM_HWID := AYB
1349   SERCOMM_HWVER := A001
1350   SERCOMM_SWVER := 0x1054
1351   SERCOMM_PAD := 320k
1352   DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2 kmod-usb3 \
1353         kmod-usb-ledtrig-usbport
1354   SUPPORTED_DEVICES += wndr3700v5
1355 endef
1356 TARGET_DEVICES += netgear_wndr3700-v5
1357
1358 define Device/netis_wf2881
1359   $(Device/dsa-migration)
1360   BLOCKSIZE := 128k
1361   PAGESIZE := 2048
1362   FILESYSTEMS := squashfs
1363   KERNEL_SIZE := 4096k
1364   IMAGE_SIZE := 129280k
1365   UBINIZE_OPTS := -E 5
1366   UIMAGE_NAME := WF2881_0.0.00
1367   KERNEL_INITRAMFS := $(KERNEL_DTB) | netis-tail WF2881 | uImage lzma
1368   IMAGES += factory.bin
1369   IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
1370   IMAGE/factory.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi | \
1371         check-size
1372   DEVICE_VENDOR := NETIS
1373   DEVICE_MODEL := WF2881
1374   DEVICE_PACKAGES := kmod-mt76x2 kmod-usb3 kmod-usb-ledtrig-usbport
1375 endef
1376 TARGET_DEVICES += netis_wf2881
1377
1378 define Device/phicomm_k2p
1379   $(Device/dsa-migration)
1380   IMAGE_SIZE := 15744k
1381   DEVICE_VENDOR := Phicomm
1382   DEVICE_MODEL := K2P
1383   DEVICE_ALT0_VENDOR := Phicomm
1384   DEVICE_ALT0_MODEL := KE 2P
1385   SUPPORTED_DEVICES += k2p
1386   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware
1387 endef
1388 TARGET_DEVICES += phicomm_k2p
1389
1390 define Device/planex_vr500
1391   $(Device/dsa-migration)
1392   $(Device/uimage-lzma-loader)
1393   IMAGE_SIZE := 65216k
1394   DEVICE_VENDOR := Planex
1395   DEVICE_MODEL := VR500
1396   DEVICE_PACKAGES := kmod-usb3 -wpad-basic-wolfssl
1397   SUPPORTED_DEVICES += vr500
1398 endef
1399 TARGET_DEVICES += planex_vr500
1400
1401 define Device/raisecom_msg1500-x-00
1402   $(Device/dsa-migration)
1403   $(Device/uimage-lzma-loader)
1404   BLOCKSIZE := 128k
1405   PAGESIZE := 2048
1406   KERNEL_SIZE := 4096k
1407   IMAGE_SIZE := 129280k
1408   UBINIZE_OPTS := -E 5
1409   IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
1410   DEVICE_VENDOR := RAISECOM
1411   DEVICE_MODEL := MSG1500
1412   DEVICE_VARIANT := X.00
1413   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware kmod-usb3 \
1414         kmod-usb-ledtrig-usbport uboot-envtools
1415 endef
1416 TARGET_DEVICES += raisecom_msg1500-x-00
1417
1418 define Device/renkforce_ws-wn530hp3-a
1419   $(Device/dsa-migration)
1420   DEVICE_VENDOR := Renkforce
1421   DEVICE_MODEL := WS-WN530HP3-A
1422   DEVICE_PACKAGES += kmod-mt7603 kmod-mt7615e kmod-mt7663-firmware-ap
1423   IMAGE/sysupgrade.bin := append-kernel | pad-to 65536 | append-rootfs | \
1424         check-size | append-metadata
1425   IMAGE_SIZE := 15040k
1426 endef
1427 TARGET_DEVICES += renkforce_ws-wn530hp3-a
1428
1429 define Device/samknows_whitebox-v8
1430   $(Device/dsa-migration)
1431   IMAGE_SIZE := 16064k
1432   DEVICE_VENDOR := SamKnows
1433   DEVICE_MODEL := Whitebox 8
1434   DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2 kmod-usb3 \
1435         kmod-usb-ledtrig-usbport uboot-envtools
1436   SUPPORTED_DEVICES += sk-wb8
1437 endef
1438 TARGET_DEVICES += samknows_whitebox-v8
1439
1440 define Device/sercomm_na502
1441   $(Device/uimage-lzma-loader)
1442   BLOCKSIZE := 128k
1443   PAGESIZE := 2048
1444   IMAGE_SIZE := 20480k
1445   IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
1446   UBINIZE_OPTS := -E 5
1447   KERNEL_SIZE := 4096k
1448   DEVICE_VENDOR := SERCOMM
1449   DEVICE_MODEL := NA502
1450   DEVICE_PACKAGES := kmod-mt76x2 kmod-mt7603 kmod-usb3
1451 endef
1452 TARGET_DEVICES += sercomm_na502
1453
1454 define Device/storylink_sap-g3200u3
1455   $(Device/dsa-migration)
1456   IMAGE_SIZE := 7872k
1457   DEVICE_VENDOR := STORYLiNK
1458   DEVICE_MODEL := SAP-G3200U3
1459   DEVICE_PACKAGES := kmod-mt76x2 kmod-usb3 kmod-usb-ledtrig-usbport
1460   SUPPORTED_DEVICES += sap-g3200u3
1461 endef
1462 TARGET_DEVICES += storylink_sap-g3200u3
1463
1464 define Device/telco-electronics_x1
1465   $(Device/dsa-migration)
1466   IMAGE_SIZE := 16064k
1467   DEVICE_VENDOR := Telco Electronics
1468   DEVICE_MODEL := X1
1469   DEVICE_PACKAGES := kmod-usb3 kmod-mt76
1470 endef
1471 TARGET_DEVICES += telco-electronics_x1
1472
1473 define Device/tenbay_t-mb5eu-v01
1474   $(Device/dsa-migration)
1475   DEVICE_VENDOR := Tenbay
1476   DEVICE_MODEL := T-MB5EU-V01
1477   DEVICE_DTS_CONFIG := config@1
1478   DEVICE_PACKAGES += kmod-mt7915e kmod-usb3
1479   KERNEL := kernel-bin | lzma | fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
1480   IMAGE_SIZE := 15808k
1481   SUPPORTED_DEVICES += mt7621-dm2-t-mb5eu-v01-nor
1482 endef
1483 TARGET_DEVICES += tenbay_t-mb5eu-v01
1484
1485 define Device/thunder_timecloud
1486   $(Device/dsa-migration)
1487   $(Device/uimage-lzma-loader)
1488   IMAGE_SIZE := 16064k
1489   DEVICE_VENDOR := Thunder
1490   DEVICE_MODEL := Timecloud
1491   DEVICE_PACKAGES := kmod-usb3 -wpad-basic-wolfssl
1492   SUPPORTED_DEVICES += timecloud
1493 endef
1494 TARGET_DEVICES += thunder_timecloud
1495
1496 define Device/totolink_a7000r
1497   $(Device/dsa-migration)
1498   IMAGE_SIZE := 16064k
1499   UIMAGE_NAME := C8340R1C-9999
1500   DEVICE_VENDOR := TOTOLINK
1501   DEVICE_MODEL := A7000R
1502   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware
1503 endef
1504 TARGET_DEVICES += totolink_a7000r
1505
1506 define Device/totolink_x5000r
1507   $(Device/dsa-migration)
1508   IMAGE_SIZE := 16064k
1509   UIMAGE_NAME := C8343R-9999
1510   DEVICE_VENDOR := TOTOLINK
1511   DEVICE_MODEL := X5000R
1512   DEVICE_PACKAGES := kmod-mt7915e
1513 endef
1514 TARGET_DEVICES += totolink_x5000r
1515
1516 define Device/tplink_archer-a6-v3
1517   $(Device/dsa-migration)
1518   $(Device/tplink-safeloader)
1519   DEVICE_MODEL := Archer A6
1520   DEVICE_VARIANT := V3
1521   DEVICE_PACKAGES := kmod-mt7603 kmod-mt7615e \
1522         kmod-mt7663-firmware-ap
1523   TPLINK_BOARD_ID := ARCHER-A6-V3
1524   KERNEL := $(KERNEL_DTB) | uImage lzma
1525   IMAGE_SIZE := 15744k
1526 endef
1527 TARGET_DEVICES += tplink_archer-a6-v3
1528
1529 define Device/tplink_archer-c6-v3
1530   $(Device/dsa-migration)
1531   $(Device/tplink-safeloader)
1532   DEVICE_MODEL := Archer C6
1533   DEVICE_VARIANT := V3
1534   DEVICE_PACKAGES := kmod-mt7603 kmod-mt7615e \
1535         kmod-mt7663-firmware-ap
1536   TPLINK_BOARD_ID := ARCHER-C6-V3
1537   KERNEL := $(KERNEL_DTB) | uImage lzma
1538   IMAGE_SIZE := 15744k
1539 endef
1540 TARGET_DEVICES += tplink_archer-c6-v3
1541
1542 define Device/tplink_archer-c6u-v1
1543   $(Device/dsa-migration)
1544   $(Device/tplink-safeloader)
1545   DEVICE_MODEL := Archer C6U
1546   DEVICE_VARIANT := v1
1547   DEVICE_PACKAGES := kmod-mt7603 \
1548         kmod-mt7615e kmod-mt7663-firmware-ap \
1549         kmod-usb3 kmod-usb-ledtrig-usbport
1550   KERNEL := $(KERNEL_DTB) | uImage lzma
1551   TPLINK_BOARD_ID := ARCHER-C6U-V1
1552   IMAGE_SIZE := 15744k
1553 endef
1554 TARGET_DEVICES += tplink_archer-c6u-v1
1555
1556 define Device/tplink_eap235-wall-v1
1557   $(Device/dsa-migration)
1558   $(Device/tplink-safeloader)
1559   DEVICE_MODEL := EAP235-Wall
1560   DEVICE_VARIANT := v1
1561   DEVICE_PACKAGES := kmod-mt7603 kmod-mt7615e kmod-mt7663-firmware-ap
1562   TPLINK_BOARD_ID := EAP235-WALL-V1
1563   IMAGE_SIZE := 13440k
1564   IMAGE/factory.bin := append-rootfs | tplink-safeloader factory | \
1565         pad-extra 128
1566 endef
1567 TARGET_DEVICES += tplink_eap235-wall-v1
1568
1569 define Device/tplink_eap615-wall-v1
1570   $(Device/dsa-migration)
1571   $(Device/tplink-safeloader)
1572   DEVICE_MODEL := EAP615-Wall
1573   DEVICE_VARIANT := v1
1574   DEVICE_PACKAGES := kmod-mt7915e
1575   TPLINK_BOARD_ID := EAP615-WALL-V1
1576   KERNEL := kernel-bin | lzma | fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb | pad-to 64k
1577   KERNEL_INITRAMFS := kernel-bin | lzma | fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb with-initrd
1578   IMAGE_SIZE := 13248k
1579 endef
1580 TARGET_DEVICES += tplink_eap615-wall-v1
1581
1582 define Device/tplink_re350-v1
1583   $(Device/dsa-migration)
1584   $(Device/tplink-safeloader)
1585   DEVICE_MODEL := RE350
1586   DEVICE_VARIANT := v1
1587   DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2
1588   TPLINK_BOARD_ID := RE350-V1
1589   IMAGE_SIZE := 6016k
1590   SUPPORTED_DEVICES += re350-v1
1591 endef
1592 TARGET_DEVICES += tplink_re350-v1
1593
1594 define Device/tplink_re500-v1
1595   $(Device/dsa-migration)
1596   $(Device/tplink-safeloader)
1597   DEVICE_MODEL := RE500
1598   DEVICE_VARIANT := v1
1599   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware
1600   TPLINK_BOARD_ID := RE500-V1
1601   IMAGE_SIZE := 14208k
1602 endef
1603 TARGET_DEVICES += tplink_re500-v1
1604
1605 define Device/tplink_re650-v1
1606   $(Device/dsa-migration)
1607   $(Device/tplink-safeloader)
1608   DEVICE_MODEL := RE650
1609   DEVICE_VARIANT := v1
1610   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware
1611   TPLINK_BOARD_ID := RE650-V1
1612   IMAGE_SIZE := 14208k
1613 endef
1614 TARGET_DEVICES += tplink_re650-v1
1615
1616 define Device/tplink_tl-wpa8631p-v3
1617   $(Device/dsa-migration)
1618   $(Device/tplink-safeloader)
1619   DEVICE_MODEL := TL-WPA8631P
1620   DEVICE_VARIANT := v3
1621   DEVICE_PACKAGES := kmod-mt7603 kmod-mt7615e kmod-mt7663-firmware-ap
1622   TPLINK_BOARD_ID := TL-WPA8631P-V3
1623   IMAGE_SIZE := 7232k
1624 endef
1625 TARGET_DEVICES += tplink_tl-wpa8631p-v3
1626
1627 define Device/ubnt_edgerouter_common
1628   $(Device/dsa-migration)
1629   $(Device/uimage-lzma-loader)
1630   DEVICE_VENDOR := Ubiquiti
1631   IMAGE_SIZE := 256768k
1632   FILESYSTEMS := squashfs
1633   KERNEL_SIZE := 3145728
1634   KERNEL_INITRAMFS := $$(KERNEL) | \
1635         ubnt-erx-factory-image $(KDIR)/tmp/$$(KERNEL_INITRAMFS_PREFIX)-factory.tar
1636   IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
1637   DEVICE_PACKAGES += -wpad-basic-wolfssl
1638 endef
1639
1640 define Device/ubnt_edgerouter-x
1641   $(Device/ubnt_edgerouter_common)
1642   DEVICE_MODEL := EdgeRouter X
1643   SUPPORTED_DEVICES += ubnt-erx ubiquiti,edgerouterx
1644 endef
1645 TARGET_DEVICES += ubnt_edgerouter-x
1646
1647 define Device/ubnt_edgerouter-x-sfp
1648   $(Device/ubnt_edgerouter_common)
1649   DEVICE_MODEL := EdgeRouter X SFP
1650   DEVICE_ALT0_VENDOR := Ubiquiti
1651   DEVICE_ALT0_MODEL := EdgePoint R6
1652   DEVICE_PACKAGES += kmod-i2c-algo-pca kmod-gpio-pca953x kmod-sfp
1653   SUPPORTED_DEVICES += ubnt-erx-sfp ubiquiti,edgerouterx-sfp
1654 endef
1655 TARGET_DEVICES += ubnt_edgerouter-x-sfp
1656
1657 define Device/ubnt_unifi-6-lite
1658   $(Device/dsa-migration)
1659   DEVICE_VENDOR := Ubiquiti
1660   DEVICE_MODEL := UniFi 6 Lite
1661   DEVICE_DTS_CONFIG := config@1
1662   DEVICE_PACKAGES += kmod-mt7603 kmod-mt7915e
1663   KERNEL := kernel-bin | lzma | fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
1664   IMAGE_SIZE := 15424k
1665 endef
1666 TARGET_DEVICES += ubnt_unifi-6-lite
1667
1668 define Device/ubnt_unifi-nanohd
1669   $(Device/dsa-migration)
1670   DEVICE_VENDOR := Ubiquiti
1671   DEVICE_MODEL := UniFi nanoHD
1672   DEVICE_PACKAGES += kmod-mt7603 kmod-mt7615e kmod-mt7615-firmware
1673   IMAGE_SIZE := 15552k
1674 endef
1675 TARGET_DEVICES += ubnt_unifi-nanohd
1676
1677 define Device/ubnt_usw-flex
1678   $(Device/dsa-migration)
1679   DEVICE_VENDOR := Ubiquiti
1680   DEVICE_MODEL := UniFi Switch Flex
1681   DEVICE_DTS_CONFIG := config@1
1682   KERNEL := kernel-bin | lzma | fit lzma $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
1683   IMAGE_SIZE := 7360k
1684 endef
1685 TARGET_DEVICES += ubnt_usw-flex
1686
1687 define Device/unielec_u7621-01-16m
1688   $(Device/dsa-migration)
1689   $(Device/uimage-lzma-loader)
1690   IMAGE_SIZE := 16064k
1691   DEVICE_VENDOR := UniElec
1692   DEVICE_MODEL := U7621-01
1693   DEVICE_VARIANT := 16M
1694   DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2 kmod-usb3
1695 endef
1696 TARGET_DEVICES += unielec_u7621-01-16m
1697
1698 define Device/unielec_u7621-06-16m
1699   $(Device/dsa-migration)
1700   $(Device/uimage-lzma-loader)
1701   IMAGE_SIZE := 16064k
1702   DEVICE_VENDOR := UniElec
1703   DEVICE_MODEL := U7621-06
1704   DEVICE_VARIANT := 16M
1705   DEVICE_PACKAGES := kmod-ata-ahci kmod-sdhci-mt7620 kmod-usb3 -wpad-basic-wolfssl
1706   SUPPORTED_DEVICES += u7621-06-256M-16M unielec,u7621-06-256m-16m
1707 endef
1708 TARGET_DEVICES += unielec_u7621-06-16m
1709
1710 define Device/unielec_u7621-06-64m
1711   $(Device/dsa-migration)
1712   $(Device/uimage-lzma-loader)
1713   IMAGE_SIZE := 65216k
1714   DEVICE_VENDOR := UniElec
1715   DEVICE_MODEL := U7621-06
1716   DEVICE_VARIANT := 64M
1717   DEVICE_PACKAGES := kmod-ata-ahci kmod-sdhci-mt7620 kmod-usb3 -wpad-basic-wolfssl
1718   SUPPORTED_DEVICES += unielec,u7621-06-512m-64m
1719 endef
1720 TARGET_DEVICES += unielec_u7621-06-64m
1721
1722 define Device/wavlink_wl-wn531a6
1723   $(Device/dsa-migration)
1724   DEVICE_VENDOR := Wavlink
1725   DEVICE_MODEL := WL-WN531A6
1726   DEVICE_PACKAGES := kmod-mt7603 kmod-mt7615e kmod-mt7615-firmware kmod-usb3
1727   IMAGE_SIZE := 15040k
1728 endef
1729 TARGET_DEVICES += wavlink_wl-wn531a6
1730
1731 define Device/wevo_11acnas
1732   $(Device/dsa-migration)
1733   $(Device/uimage-lzma-loader)
1734   IMAGE_SIZE := 16064k
1735   UIMAGE_NAME := 11AC-NAS-Router(0.0.0)
1736   DEVICE_VENDOR := WeVO
1737   DEVICE_MODEL := 11AC NAS Router
1738   DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2 kmod-usb3 \
1739         kmod-usb-ledtrig-usbport
1740   SUPPORTED_DEVICES += 11acnas
1741 endef
1742 TARGET_DEVICES += wevo_11acnas
1743
1744 define Device/wevo_w2914ns-v2
1745   $(Device/dsa-migration)
1746   $(Device/uimage-lzma-loader)
1747   IMAGE_SIZE := 16064k
1748   UIMAGE_NAME := W2914NS-V2(0.0.0)
1749   DEVICE_VENDOR := WeVO
1750   DEVICE_MODEL := W2914NS
1751   DEVICE_VARIANT := v2
1752   DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2 kmod-usb3 \
1753         kmod-usb-ledtrig-usbport
1754   SUPPORTED_DEVICES += w2914nsv2
1755 endef
1756 TARGET_DEVICES += wevo_w2914ns-v2
1757
1758 define Device/winstars_ws-wn583a6
1759   $(Device/dsa-migration)
1760   $(Device/uimage-lzma-loader)
1761   IMAGE_SIZE := 7872k
1762   DEVICE_VENDOR := Winstars
1763   DEVICE_MODEL := WS-WN583A6
1764   DEVICE_ALT0_VENDOR := Gemeita
1765   DEVICE_ALT0_MODEL := AC2100
1766   KERNEL_INITRAMFS_SUFFIX := -WN583A6$$(KERNEL_SUFFIX)
1767   DEVICE_PACKAGES := kmod-mt7603 kmod-mt7615e kmod-mt7615-firmware
1768 endef
1769 TARGET_DEVICES += winstars_ws-wn583a6
1770
1771 define Device/xiaomi_nand_separate
1772   $(Device/dsa-migration)
1773   $(Device/uimage-lzma-loader)
1774   DEVICE_VENDOR := Xiaomi
1775   DEVICE_PACKAGES := uboot-envtools
1776   BLOCKSIZE := 128k
1777   PAGESIZE := 2048
1778   KERNEL_SIZE := 4096k
1779   UBINIZE_OPTS := -E 5
1780   IMAGES += kernel1.bin rootfs0.bin
1781   IMAGE/kernel1.bin := append-kernel
1782   IMAGE/rootfs0.bin := append-ubi | check-size
1783   IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
1784 endef
1785
1786 define Device/xiaomi_mi-router-3g
1787   $(Device/xiaomi_nand_separate)
1788   DEVICE_MODEL := Mi Router 3G
1789   IMAGE_SIZE := 124416k
1790   DEVICE_PACKAGES += kmod-mt7603 kmod-mt76x2 kmod-usb3 \
1791         kmod-usb-ledtrig-usbport
1792   SUPPORTED_DEVICES += R3G mir3g xiaomi,mir3g
1793 endef
1794 TARGET_DEVICES += xiaomi_mi-router-3g
1795
1796 define Device/xiaomi_mi-router-3g-v2
1797   $(Device/dsa-migration)
1798   $(Device/uimage-lzma-loader)
1799   IMAGE_SIZE := 14848k
1800   DEVICE_VENDOR := Xiaomi
1801   DEVICE_MODEL := Mi Router 3G
1802   DEVICE_VARIANT := v2
1803   DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2
1804   SUPPORTED_DEVICES += xiaomi,mir3g-v2
1805 endef
1806 TARGET_DEVICES += xiaomi_mi-router-3g-v2
1807
1808 define Device/xiaomi_mi-router-3-pro
1809   $(Device/dsa-migration)
1810   $(Device/uimage-lzma-loader)
1811   BLOCKSIZE := 128k
1812   PAGESIZE := 2048
1813   KERNEL_SIZE:= 4096k
1814   UBINIZE_OPTS := -E 5
1815   IMAGE_SIZE := 255488k
1816   DEVICE_VENDOR := Xiaomi
1817   DEVICE_MODEL := Mi Router 3 Pro
1818   IMAGES += factory.bin
1819   IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
1820   IMAGE/factory.bin := append-kernel | pad-to $$(KERNEL_SIZE) | append-ubi | \
1821         check-size
1822   DEVICE_PACKAGES := kmod-mt7615e kmod-mt7615-firmware kmod-usb3 \
1823         kmod-usb-ledtrig-usbport uboot-envtools
1824   SUPPORTED_DEVICES += xiaomi,mir3p
1825 endef
1826 TARGET_DEVICES += xiaomi_mi-router-3-pro
1827
1828 define Device/xiaomi_mi-router-4
1829   $(Device/xiaomi_nand_separate)
1830   DEVICE_MODEL := Mi Router 4
1831   IMAGE_SIZE := 124416k
1832   DEVICE_PACKAGES += kmod-mt7603 kmod-mt76x2
1833 endef
1834 TARGET_DEVICES += xiaomi_mi-router-4
1835
1836 define Device/xiaomi_mi-router-4a-gigabit
1837   $(Device/dsa-migration)
1838   $(Device/uimage-lzma-loader)
1839   IMAGE_SIZE := 14848k
1840   DEVICE_VENDOR := Xiaomi
1841   DEVICE_MODEL := Mi Router 4A
1842   DEVICE_VARIANT := Gigabit Edition
1843   DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2
1844 endef
1845 TARGET_DEVICES += xiaomi_mi-router-4a-gigabit
1846
1847 define Device/xiaomi_mi-router-ac2100
1848   $(Device/xiaomi_nand_separate)
1849   DEVICE_MODEL := Mi Router AC2100
1850   IMAGE_SIZE := 120320k
1851   DEVICE_PACKAGES += kmod-mt7603 kmod-mt7615e kmod-mt7615-firmware
1852 endef
1853 TARGET_DEVICES += xiaomi_mi-router-ac2100
1854
1855 define Device/xiaomi_mi-router-cr660x
1856   $(Device/dsa-migration)
1857   $(Device/uimage-lzma-loader)
1858   DEVICE_VENDOR := Xiaomi
1859   BLOCKSIZE := 128k
1860   PAGESIZE := 2048
1861   KERNEL_SIZE := 4096k
1862   UBINIZE_OPTS := -E 5
1863   IMAGE_SIZE := 128512k
1864   IMAGES += firmware.bin
1865   IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
1866   IMAGE/firmware.bin := append-kernel | pad-to $$(KERNEL_SIZE) | append-ubi | \
1867         check-size
1868   DEVICE_PACKAGES += kmod-mt7915e uboot-envtools
1869 endef
1870
1871 define Device/xiaomi_mi-router-cr6606
1872   $(Device/xiaomi_mi-router-cr660x)
1873   DEVICE_MODEL := Mi Router CR6606
1874 endef
1875 TARGET_DEVICES += xiaomi_mi-router-cr6606
1876
1877 define Device/xiaomi_mi-router-cr6608
1878   $(Device/xiaomi_mi-router-cr660x)
1879   DEVICE_MODEL := Mi Router CR6608
1880 endef
1881 TARGET_DEVICES += xiaomi_mi-router-cr6608
1882
1883 define Device/xiaomi_mi-router-cr6609
1884   $(Device/xiaomi_mi-router-cr660x)
1885   DEVICE_MODEL := Mi Router CR6609
1886 endef
1887 TARGET_DEVICES += xiaomi_mi-router-cr6609
1888
1889 define Device/xiaomi_redmi-router-ac2100
1890   $(Device/xiaomi_nand_separate)
1891   DEVICE_MODEL := Redmi Router AC2100
1892   IMAGE_SIZE := 120320k
1893   DEVICE_PACKAGES += kmod-mt7603 kmod-mt7615e kmod-mt7615-firmware
1894 endef
1895 TARGET_DEVICES += xiaomi_redmi-router-ac2100
1896
1897 define Device/xiaoyu_xy-c5
1898   $(Device/dsa-migration)
1899   IMAGE_SIZE := 32448k
1900   DEVICE_VENDOR := XiaoYu
1901   DEVICE_MODEL := XY-C5
1902   DEVICE_PACKAGES := kmod-ata-ahci kmod-usb3 -wpad-basic-wolfssl
1903 endef
1904 TARGET_DEVICES += xiaoyu_xy-c5
1905
1906 define Device/xzwifi_creativebox-v1
1907   $(Device/dsa-migration)
1908   IMAGE_SIZE := 32448k
1909   DEVICE_VENDOR := CreativeBox
1910   DEVICE_MODEL := v1
1911   DEVICE_PACKAGES := kmod-ata-ahci kmod-mt7603 kmod-mt76x2 kmod-sdhci-mt7620 \
1912         kmod-usb3 -wpad-basic-wolfssl
1913 endef
1914 TARGET_DEVICES += xzwifi_creativebox-v1
1915
1916 define Device/youhua_wr1200js
1917   $(Device/dsa-migration)
1918   IMAGE_SIZE := 16064k
1919   DEVICE_VENDOR := YouHua
1920   DEVICE_MODEL := WR1200JS
1921   DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2 kmod-usb3 \
1922         kmod-usb-ledtrig-usbport
1923 endef
1924 TARGET_DEVICES += youhua_wr1200js
1925
1926 define Device/youku_yk-l2
1927   $(Device/dsa-migration)
1928   IMAGE_SIZE := 16064k
1929   DEVICE_VENDOR := Youku
1930   DEVICE_MODEL := YK-L2
1931   DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2 kmod-sdhci-mt7620 \
1932         kmod-usb3 kmod-usb-ledtrig-usbport
1933 endef
1934 TARGET_DEVICES += youku_yk-l2
1935
1936 define Device/zbtlink_zbt-we1326
1937   $(Device/dsa-migration)
1938   $(Device/uimage-lzma-loader)
1939   IMAGE_SIZE := 16064k
1940   DEVICE_VENDOR := Zbtlink
1941   DEVICE_MODEL := ZBT-WE1326
1942   DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2 kmod-usb3 kmod-sdhci-mt7620
1943   SUPPORTED_DEVICES += zbt-we1326
1944 endef
1945 TARGET_DEVICES += zbtlink_zbt-we1326
1946
1947 define Device/zbtlink_zbt-we3526
1948   $(Device/dsa-migration)
1949   $(Device/uimage-lzma-loader)
1950   IMAGE_SIZE := 16064k
1951   DEVICE_VENDOR := Zbtlink
1952   DEVICE_MODEL := ZBT-WE3526
1953   DEVICE_PACKAGES := kmod-sdhci-mt7620 kmod-mt7603 kmod-mt76x2 kmod-usb3 \
1954         kmod-usb-ledtrig-usbport
1955 endef
1956 TARGET_DEVICES += zbtlink_zbt-we3526
1957
1958 define Device/zbtlink_zbt-wg1602-16m
1959   $(Device/dsa-migration)
1960   $(Device/uimage-lzma-loader)
1961   IMAGE_SIZE := 16064k
1962   DEVICE_VENDOR := Zbtlink
1963   DEVICE_MODEL := ZBT-WG1602
1964   DEVICE_VARIANT := 16M
1965   DEVICE_PACKAGES := kmod-sdhci-mt7620 kmod-mt7603 kmod-mt76x2 kmod-usb3 \
1966         kmod-usb-ledtrig-usbport
1967 endef
1968 TARGET_DEVICES += zbtlink_zbt-wg1602-16m
1969
1970 define Device/zbtlink_zbt-wg1608-16m
1971   $(Device/dsa-migration)
1972   $(Device/uimage-lzma-loader)
1973   IMAGE_SIZE := 16064k
1974   DEVICE_VENDOR := Zbtlink
1975   DEVICE_MODEL := ZBT-WG1608
1976   DEVICE_VARIANT := 16M
1977   DEVICE_PACKAGES := kmod-sdhci-mt7620 kmod-mt7603 kmod-mt7615e \
1978         kmod-mt7663-firmware-ap kmod-usb3 kmod-usb-ledtrig-usbport
1979 endef
1980 TARGET_DEVICES += zbtlink_zbt-wg1608-16m
1981
1982 define Device/zbtlink_zbt-wg2626
1983   $(Device/dsa-migration)
1984   $(Device/uimage-lzma-loader)
1985   IMAGE_SIZE := 16064k
1986   DEVICE_VENDOR := Zbtlink
1987   DEVICE_MODEL := ZBT-WG2626
1988   DEVICE_PACKAGES := kmod-ata-ahci kmod-sdhci-mt7620 kmod-mt76x2 kmod-usb3 \
1989         kmod-usb-ledtrig-usbport
1990   SUPPORTED_DEVICES += zbt-wg2626
1991 endef
1992 TARGET_DEVICES += zbtlink_zbt-wg2626
1993
1994 define Device/zbtlink_zbt-wg3526-16m
1995   $(Device/dsa-migration)
1996   $(Device/uimage-lzma-loader)
1997   IMAGE_SIZE := 16064k
1998   DEVICE_VENDOR := Zbtlink
1999   DEVICE_MODEL := ZBT-WG3526
2000   DEVICE_VARIANT := 16M
2001   DEVICE_PACKAGES := kmod-ata-ahci kmod-sdhci-mt7620 kmod-mt7603 kmod-mt76x2 \
2002         kmod-usb3 kmod-usb-ledtrig-usbport
2003   SUPPORTED_DEVICES += zbt-wg3526 zbt-wg3526-16M
2004 endef
2005 TARGET_DEVICES += zbtlink_zbt-wg3526-16m
2006
2007 define Device/zbtlink_zbt-wg3526-32m
2008   $(Device/dsa-migration)
2009   $(Device/uimage-lzma-loader)
2010   IMAGE_SIZE := 32448k
2011   DEVICE_VENDOR := Zbtlink
2012   DEVICE_MODEL := ZBT-WG3526
2013   DEVICE_VARIANT := 32M
2014   DEVICE_PACKAGES := kmod-ata-ahci kmod-sdhci-mt7620 kmod-mt7603 kmod-mt76x2 \
2015         kmod-usb3 kmod-usb-ledtrig-usbport
2016   SUPPORTED_DEVICES += ac1200pro zbt-wg3526-32M
2017 endef
2018 TARGET_DEVICES += zbtlink_zbt-wg3526-32m
2019
2020 define Device/zio_freezio
2021   $(Device/dsa-migration)
2022   IMAGE_SIZE := 16064k
2023   DEVICE_VENDOR := ZIO
2024   DEVICE_MODEL := FREEZIO
2025   DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2 kmod-usb3 \
2026         kmod-usb-ledtrig-usbport
2027 endef
2028 TARGET_DEVICES += zio_freezio
2029
2030 define Device/zyxel_nr7101
2031   $(Device/dsa-migration)
2032   BLOCKSIZE := 128k
2033   PAGESIZE := 2048
2034   UBINIZE_OPTS := -E 5
2035   DEVICE_VENDOR := ZyXEL
2036   DEVICE_MODEL := NR7101
2037   DEVICE_PACKAGES := kmod-mt7603 kmod-usb3 uboot-envtools kmod-usb-net-qmi-wwan kmod-usb-serial-option uqmi
2038   KERNEL := $(KERNEL_DTB) | uImage lzma | zytrx-header $$(DEVICE_MODEL) $$(VERSION_DIST)-$$(REVISION)
2039   KERNEL_INITRAMFS := $(KERNEL_DTB) | uImage lzma | zytrx-header $$(DEVICE_MODEL) 9.99(ABUV.9)$$(VERSION_DIST)-recovery
2040   KERNEL_INITRAMFS_SUFFIX := -recovery.bin
2041   IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
2042 endef
2043 TARGET_DEVICES += zyxel_nr7101
2044
2045 define Device/zyxel_wap6805
2046   $(Device/dsa-migration)
2047   BLOCKSIZE := 128k
2048   PAGESIZE := 2048
2049   KERNEL_SIZE := 4096k
2050   UBINIZE_OPTS := -E 5
2051   IMAGE_SIZE := 32448k
2052   DEVICE_VENDOR := ZyXEL
2053   DEVICE_MODEL := WAP6805
2054   DEVICE_PACKAGES := kmod-mt7603 kmod-mt7621-qtn-rgmii
2055   KERNEL := $(KERNEL_DTB) | uImage lzma | uimage-padhdr 160
2056   IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
2057 endef
2058 TARGET_DEVICES += zyxel_wap6805