ath79: add support for Meraki MR16
[openwrt/staging/stintel.git] / target / linux / ath79 / image / generic.mk
1 include ./common-buffalo.mk
2 include ./common-netgear.mk
3 include ./common-tp-link.mk
4 include ./common-yuncore.mk
5
6 DEVICE_VARS += ADDPATTERN_ID ADDPATTERN_VERSION
7 DEVICE_VARS += SEAMA_SIGNATURE SEAMA_MTDBLOCK
8 DEVICE_VARS += KERNEL_INITRAMFS_PREFIX
9 DEVICE_VARS += DAP_SIGNATURE
10
11 define Build/add-elecom-factory-initramfs
12 $(eval edimax_model=$(word 1,$(1)))
13 $(eval product=$(word 2,$(1)))
14
15 $(STAGING_DIR_HOST)/bin/mkedimaximg \
16 -b -s CSYS -m $(edimax_model) \
17 -f 0x70000 -S 0x01100000 \
18 -i $@ -o $@.factory
19
20 ( \
21 echo -n -e "ELECOM\x00\x00$(product)" | dd bs=40 count=1 conv=sync; \
22 echo -n "0.00" | dd bs=16 count=1 conv=sync; \
23 dd if=$@.factory; \
24 ) > $@.factory.new
25
26 if [ "$$(stat -c%s $@.factory.new)" -le $$(($(subst k,* 1024,$(subst m, * 1024k,$(IMAGE_SIZE))))) ]; then \
27 mv $@.factory.new $(BIN_DIR)/$(KERNEL_INITRAMFS_PREFIX)-factory.bin; \
28 else \
29 echo "WARNING: initramfs kernel image too big, cannot generate factory image" >&2; \
30 fi
31 endef
32
33 define Build/addpattern
34 -$(STAGING_DIR_HOST)/bin/addpattern -B $(ADDPATTERN_ID) \
35 -v v$(ADDPATTERN_VERSION) -i $@ -o $@.new
36 -mv "$@.new" "$@"
37 endef
38
39 define Build/append-md5sum-bin
40 $(STAGING_DIR_HOST)/bin/mkhash md5 $@ | sed 's/../\\\\x&/g' |\
41 xargs echo -ne >> $@
42 endef
43
44 define Build/cybertan-trx
45 @echo -n '' > $@-empty.bin
46 -$(STAGING_DIR_HOST)/bin/trx -o $@.new \
47 -f $(IMAGE_KERNEL) -F $@-empty.bin \
48 -x 32 -a 0x10000 -x -32 -f $@
49 -mv "$@.new" "$@"
50 -rm $@-empty.bin
51 endef
52
53 define Build/mkdapimg2
54 $(STAGING_DIR_HOST)/bin/mkdapimg2 \
55 -i $@ -o $@.new \
56 -s $(DAP_SIGNATURE) \
57 -v $(VERSION_DIST)-$(firstword $(subst +, , \
58 $(firstword $(subst -, ,$(REVISION))))) \
59 -r Default \
60 $(if $(1),-k $(1))
61 mv $@.new $@
62 endef
63
64 define Build/mkmylofw_16m
65 $(eval device_id=$(word 1,$(1)))
66 $(eval revision=$(word 2,$(1)))
67
68 # On WPJ344, WPJ531, and WPJ563, the default boot command tries 0x9f680000
69 # first and fails if the remains of the stock image are sill there
70 # - resulting in an infinite boot loop.
71 # The size parameter is grown to have that block deleted if the firmware
72 # isn't big enough by itself.
73
74 let \
75 size="$$(stat -c%s $@)" \
76 pad="$(subst k,* 1024,$(BLOCKSIZE))" \
77 pad="(pad - (size % pad)) % pad" \
78 newsize='size + pad' ; \
79 [ $$newsize -lt $$((0x660000)) ] && newsize=0x660000 ; \
80 $(STAGING_DIR_HOST)/bin/mkmylofw \
81 -B WPE72 -i 0x11f6:$(device_id):0x11f6:$(device_id) -r $(revision) \
82 -s 0x1000000 -p0x30000:$$newsize:al:0x80060000:"OpenWRT":$@ \
83 $@.new
84 @mv $@.new $@
85 endef
86
87 define Build/mkwrggimg
88 $(STAGING_DIR_HOST)/bin/mkwrggimg -b \
89 -i $@ -o $@.imghdr -d /dev/mtdblock/1 \
90 -m $(DEVICE_MODEL)-$(DEVICE_VARIANT) -s $(DAP_SIGNATURE) \
91 -v $(VERSION_DIST) -B $(REVISION)
92 mv $@.imghdr $@
93 endef
94
95 define Build/nec-enc
96 $(STAGING_DIR_HOST)/bin/nec-enc \
97 -i $@ -o $@.new -k $(1)
98 mv $@.new $@
99 endef
100
101 define Build/nec-fw
102 ( stat -c%s $@ | tr -d "\n" | dd bs=16 count=1 conv=sync; ) >> $@
103 ( \
104 echo -n -e "$(1)" | dd bs=16 count=1 conv=sync; \
105 echo -n "0.0.00" | dd bs=16 count=1 conv=sync; \
106 dd if=$@; \
107 ) > $@.new
108 mv $@.new $@
109 endef
110
111 define Build/pisen_wmb001n-factory
112 -[ -f "$@" ] && \
113 mkdir -p "$@.tmp" && \
114 cp "$(KDIR)/loader-$(word 1,$(1)).uImage" "$@.tmp/uImage" && \
115 mv "$@" "$@.tmp/rootfs" && \
116 cp "bin/pisen_wmb001n_factory-header.bin" "$@" && \
117 $(TAR) -cp --numeric-owner --owner=0 --group=0 --mode=a-s --sort=name \
118 $(if $(SOURCE_DATE_EPOCH),--mtime="@$(SOURCE_DATE_EPOCH)") \
119 -C "$@.tmp" . | gzip -9n >> "$@" && \
120 rm -rf "$@.tmp"
121 endef
122
123 define Build/teltonika-fw-fake-checksum
124 # Teltonika U-Boot web based firmware upgrade/recovery routine compares
125 # 16 bytes from md5sum1[16] field in TP-Link v1 header (offset: 76 bytes
126 # from begin of the firmware file) with 16 bytes stored just before
127 # 0xdeadc0de marker. Values are only compared, MD5 sum is not verified.
128 let \
129 offs="$$(stat -c%s $@) - 20"; \
130 dd if=$@ bs=1 count=16 skip=76 |\
131 dd of=$@ bs=1 count=16 seek=$$offs conv=notrunc
132 endef
133
134 define Build/wrgg-pad-rootfs
135 $(STAGING_DIR_HOST)/bin/padjffs2 $(IMAGE_ROOTFS) -c 64 >>$@
136 endef
137
138 define Device/seama
139 KERNEL := kernel-bin | append-dtb | relocate-kernel | lzma
140 KERNEL_INITRAMFS := $$(KERNEL) | seama
141 IMAGES += factory.bin
142 SEAMA_MTDBLOCK := 1
143
144 # 64 bytes offset:
145 # - 28 bytes seama_header
146 # - 36 bytes of META data (4-bytes aligned)
147 IMAGE/default := append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | append-rootfs
148 IMAGE/sysupgrade.bin := $$(IMAGE/default) | seama | pad-rootfs | \
149 append-metadata | check-size
150 IMAGE/factory.bin := $$(IMAGE/default) | pad-rootfs -x 64 | seama | \
151 seama-seal | check-size
152 SEAMA_SIGNATURE :=
153 endef
154
155
156 define Device/8dev_carambola2
157 SOC := ar9331
158 DEVICE_VENDOR := 8devices
159 DEVICE_MODEL := Carambola2
160 DEVICE_PACKAGES := kmod-usb2 kmod-usb-chipidea2
161 IMAGE_SIZE := 16000k
162 SUPPORTED_DEVICES += carambola2
163 endef
164 TARGET_DEVICES += 8dev_carambola2
165
166 define Device/8dev_lima
167 SOC := qca9531
168 DEVICE_VENDOR := 8devices
169 DEVICE_MODEL := Lima
170 DEVICE_PACKAGES := kmod-usb2
171 IMAGE_SIZE := 15616k
172 SUPPORTED_DEVICES += lima
173 endef
174 TARGET_DEVICES += 8dev_lima
175
176 define Device/adtran_bsap1880
177 SOC := ar7161
178 DEVICE_VENDOR := Adtran/Bluesocket
179 DEVICE_PACKAGES += -swconfig -uboot-envtools fconfig
180 KERNEL := kernel-bin | append-dtb | lzma | pad-to $$(BLOCKSIZE)
181 KERNEL_INITRAMFS := kernel-bin | append-dtb
182 IMAGE_SIZE := 11200k
183 IMAGES += kernel.bin rootfs.bin
184 IMAGE/kernel.bin := append-kernel
185 IMAGE/rootfs.bin := append-rootfs | pad-rootfs
186 IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | \
187 check-size | sysupgrade-tar rootfs=$$$$@ | append-metadata
188 endef
189
190 define Device/adtran_bsap1800-v2
191 $(Device/adtran_bsap1880)
192 DEVICE_MODEL := BSAP-1800
193 DEVICE_VARIANT := v2
194 endef
195 TARGET_DEVICES += adtran_bsap1800-v2
196
197 define Device/adtran_bsap1840
198 $(Device/adtran_bsap1880)
199 DEVICE_MODEL := BSAP-1840
200 endef
201 TARGET_DEVICES += adtran_bsap1840
202
203 define Device/alfa-network_ap121f
204 SOC := ar9331
205 DEVICE_VENDOR := ALFA Network
206 DEVICE_MODEL := AP121F
207 DEVICE_PACKAGES := kmod-usb2 kmod-usb-chipidea2 kmod-usb-storage -swconfig
208 IMAGE_SIZE := 16064k
209 SUPPORTED_DEVICES += ap121f
210 endef
211 TARGET_DEVICES += alfa-network_ap121f
212
213 define Device/allnet_all-wap02860ac
214 SOC := qca9558
215 DEVICE_VENDOR := ALLNET
216 DEVICE_MODEL := ALL-WAP02860AC
217 DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct
218 IMAGE_SIZE := 13120k
219 endef
220 TARGET_DEVICES += allnet_all-wap02860ac
221
222 define Device/arduino_yun
223 SOC := ar9331
224 DEVICE_VENDOR := Arduino
225 DEVICE_MODEL := Yun
226 DEVICE_PACKAGES := kmod-usb2 kmod-usb-chipidea2 kmod-usb-ledtrig-usbport \
227 kmod-usb-storage block-mount -swconfig
228 IMAGE_SIZE := 15936k
229 SUPPORTED_DEVICES += arduino-yun
230 endef
231 TARGET_DEVICES += arduino_yun
232
233 define Device/aruba_ap-105
234 SOC := ar7161
235 DEVICE_VENDOR := Aruba
236 DEVICE_MODEL := AP-105
237 IMAGE_SIZE := 16000k
238 DEVICE_PACKAGES := kmod-i2c-gpio kmod-tpm-i2c-atmel
239 endef
240 TARGET_DEVICES += aruba_ap-105
241
242 define Device/avm
243 DEVICE_VENDOR := AVM
244 KERNEL := kernel-bin | append-dtb | lzma | eva-image
245 KERNEL_INITRAMFS := $$(KERNEL)
246 IMAGE/sysupgrade.bin := append-kernel | pad-to 64k | \
247 append-squashfs-fakeroot-be | pad-to 256 | append-rootfs | pad-rootfs | \
248 append-metadata | check-size
249 DEVICE_PACKAGES := fritz-tffs
250 endef
251
252 define Device/avm_fritz1750e
253 $(Device/avm)
254 SOC := qca9556
255 IMAGE_SIZE := 15232k
256 DEVICE_MODEL := FRITZ!WLAN Repeater 1750E
257 DEVICE_PACKAGES += rssileds kmod-ath10k-ct-smallbuffers \
258 ath10k-firmware-qca988x-ct -swconfig
259 endef
260 TARGET_DEVICES += avm_fritz1750e
261
262 define Device/avm_fritz300e
263 $(Device/avm)
264 SOC := ar7242
265 IMAGE_SIZE := 15232k
266 DEVICE_MODEL := FRITZ!WLAN Repeater 300E
267 DEVICE_PACKAGES += rssileds -swconfig
268 SUPPORTED_DEVICES += fritz300e
269 endef
270 TARGET_DEVICES += avm_fritz300e
271
272 define Device/avm_fritz4020
273 $(Device/avm)
274 SOC := qca9561
275 IMAGE_SIZE := 15232k
276 DEVICE_MODEL := FRITZ!Box 4020
277 SUPPORTED_DEVICES += fritz4020
278 endef
279 TARGET_DEVICES += avm_fritz4020
280
281 define Device/avm_fritz450e
282 $(Device/avm)
283 SOC := qca9556
284 IMAGE_SIZE := 15232k
285 DEVICE_MODEL := FRITZ!WLAN Repeater 450E
286 SUPPORTED_DEVICES += fritz450e
287 endef
288 TARGET_DEVICES += avm_fritz450e
289
290 define Device/avm_fritzdvbc
291 $(Device/avm)
292 SOC := qca9556
293 IMAGE_SIZE := 15232k
294 DEVICE_MODEL := FRITZ!WLAN Repeater DVB-C
295 DEVICE_PACKAGES += rssileds kmod-ath10k-ct-smallbuffers \
296 ath10k-firmware-qca988x-ct -swconfig
297 endef
298 TARGET_DEVICES += avm_fritzdvbc
299
300 define Device/buffalo_bhr-4grv
301 SOC := ar7242
302 DEVICE_VENDOR := Buffalo
303 DEVICE_MODEL := BHR-4GRV
304 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
305 IMAGE_SIZE := 32256k
306 IMAGES += factory.bin tftp.bin
307 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | \
308 pad-rootfs | check-size
309 IMAGE/factory.bin := $$(IMAGE/default) | buffalo-enc BHR-4GRV 1.99 | \
310 buffalo-tag BHR-4GRV 3
311 IMAGE/tftp.bin := $$(IMAGE/default) | buffalo-tftp-header
312 SUPPORTED_DEVICES += wzr-hp-g450h
313 endef
314 TARGET_DEVICES += buffalo_bhr-4grv
315
316 define Device/buffalo_bhr-4grv2
317 SOC := qca9557
318 DEVICE_VENDOR := Buffalo
319 DEVICE_MODEL := BHR-4GRV2
320 IMAGE_SIZE := 16000k
321 endef
322 TARGET_DEVICES += buffalo_bhr-4grv2
323
324 define Device/buffalo_wzr-hp-ag300h
325 SOC := ar7161
326 DEVICE_VENDOR := Buffalo
327 DEVICE_MODEL := WZR-HP-AG300H
328 IMAGE_SIZE := 32320k
329 IMAGES += factory.bin tftp.bin
330 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | \
331 pad-rootfs | check-size
332 IMAGE/factory.bin := $$(IMAGE/default) | buffalo-enc WZR-HP-AG300H 1.99 | \
333 buffalo-tag WZR-HP-AG300H 3
334 IMAGE/tftp.bin := $$(IMAGE/default) | buffalo-tftp-header
335 DEVICE_PACKAGES := kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport \
336 kmod-leds-reset kmod-owl-loader
337 SUPPORTED_DEVICES += wzr-hp-ag300h
338 endef
339 TARGET_DEVICES += buffalo_wzr-hp-ag300h
340
341 define Device/buffalo_wzr-hp-g302h-a1a0
342 SOC := ar7242
343 DEVICE_VENDOR := Buffalo
344 DEVICE_MODEL := WZR-HP-G302H
345 DEVICE_VARIANT := A1A0
346 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
347 IMAGE_SIZE := 32128k
348 IMAGES += factory.bin tftp.bin
349 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | \
350 pad-rootfs | check-size
351 IMAGE/factory.bin := $$(IMAGE/default) | buffalo-enc WZR-HP-G302H 1.99 | \
352 buffalo-tag WZR-HP-G302H 4
353 IMAGE/tftp.bin := $$(IMAGE/default) | buffalo-tftp-header
354 SUPPORTED_DEVICES += wzr-hp-g300nh2
355 endef
356 TARGET_DEVICES += buffalo_wzr-hp-g302h-a1a0
357
358 define Device/buffalo_wzr-hp-g450h
359 SOC := ar7242
360 DEVICE_VENDOR := Buffalo
361 DEVICE_MODEL := WZR-HP-G450H/WZR-450HP
362 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
363 IMAGE_SIZE := 32256k
364 IMAGES += factory.bin tftp.bin
365 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | \
366 pad-rootfs | check-size
367 IMAGE/factory.bin := $$(IMAGE/default) | buffalo-enc WZR-HP-G450H 1.99 | \
368 buffalo-tag WZR-HP-G450H 3
369 IMAGE/tftp.bin := $$(IMAGE/default) | buffalo-tftp-header
370 SUPPORTED_DEVICES += wzr-hp-g450h
371 endef
372 TARGET_DEVICES += buffalo_wzr-hp-g450h
373
374 define Device/comfast_cf-e110n-v2
375 SOC := qca9533
376 DEVICE_VENDOR := COMFAST
377 DEVICE_MODEL := CF-E110N
378 DEVICE_VARIANT := v2
379 DEVICE_PACKAGES := rssileds -swconfig -uboot-envtools
380 IMAGE_SIZE := 16192k
381 endef
382 TARGET_DEVICES += comfast_cf-e110n-v2
383
384 define Device/comfast_cf-e120a-v3
385 SOC := ar9344
386 DEVICE_VENDOR := COMFAST
387 DEVICE_MODEL := CF-E120A
388 DEVICE_VARIANT := v3
389 DEVICE_PACKAGES := rssileds -uboot-envtools
390 IMAGE_SIZE := 8000k
391 endef
392 TARGET_DEVICES += comfast_cf-e120a-v3
393
394 define Device/comfast_cf-e130n-v2
395 SOC := qca9531
396 DEVICE_VENDOR := COMFAST
397 DEVICE_MODEL := CF-E130N
398 DEVICE_VARIANT := v2
399 DEVICE_PACKAGES := rssileds -swconfig -uboot-envtools
400 IMAGE_SIZE := 7936k
401 endef
402 TARGET_DEVICES += comfast_cf-e130n-v2
403
404 define Device/comfast_cf-e313ac
405 SOC := qca9531
406 DEVICE_VENDOR := COMFAST
407 DEVICE_MODEL := CF-E313AC
408 DEVICE_PACKAGES := rssileds kmod-ath10k-ct-smallbuffers \
409 ath10k-firmware-qca9888-ct -swconfig -uboot-envtools
410 IMAGE_SIZE := 7936k
411 endef
412 TARGET_DEVICES += comfast_cf-e313ac
413
414 define Device/comfast_cf-e314n-v2
415 SOC := qca9531
416 DEVICE_VENDOR := COMFAST
417 DEVICE_MODEL := CF-E314N
418 DEVICE_VARIANT := v2
419 DEVICE_PACKAGES := rssileds
420 IMAGE_SIZE := 7936k
421 endef
422 TARGET_DEVICES += comfast_cf-e314n-v2
423
424 define Device/comfast_cf-e5
425 SOC := qca9531
426 DEVICE_VENDOR := COMFAST
427 DEVICE_MODEL := CF-E5/E7
428 DEVICE_PACKAGES := rssileds kmod-usb2 kmod-usb-net-qmi-wwan -swconfig \
429 -uboot-envtools
430 IMAGE_SIZE := 16192k
431 endef
432 TARGET_DEVICES += comfast_cf-e5
433
434 define Device/comfast_cf-e560ac
435 SOC := qca9531
436 DEVICE_VENDOR := COMFAST
437 DEVICE_MODEL := CF-E560AC
438 DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca9888-ct
439 IMAGE_SIZE := 16128k
440 endef
441 TARGET_DEVICES += comfast_cf-e560ac
442
443 define Device/comfast_cf-ew72
444 SOC := qca9531
445 DEVICE_VENDOR := COMFAST
446 DEVICE_MODEL := CF-EW72
447 DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca9888-ct \
448 -uboot-envtools -swconfig
449 IMAGE_SIZE := 16192k
450 endef
451 TARGET_DEVICES += comfast_cf-ew72
452
453 define Device/comfast_cf-wr650ac-v1
454 SOC := qca9558
455 DEVICE_VENDOR := COMFAST
456 DEVICE_MODEL := CF-WR650AC
457 DEVICE_VARIANT := v1
458 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
459 IMAGE_SIZE := 16128k
460 endef
461 TARGET_DEVICES += comfast_cf-wr650ac-v1
462
463 define Device/comfast_cf-wr650ac-v2
464 SOC := qca9558
465 DEVICE_VENDOR := COMFAST
466 DEVICE_MODEL := CF-WR650AC
467 DEVICE_VARIANT := v2
468 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
469 IMAGE_SIZE := 16000k
470 endef
471 TARGET_DEVICES += comfast_cf-wr650ac-v2
472
473 define Device/comfast_cf-wr752ac-v1
474 SOC := qca9531
475 DEVICE_VENDOR := COMFAST
476 DEVICE_MODEL := CF-WR752AC
477 DEVICE_VARIANT := v1
478 DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca9888-ct \
479 -uboot-envtools
480 IMAGE_SIZE := 16192k
481 endef
482 TARGET_DEVICES += comfast_cf-wr752ac-v1
483
484 define Device/compex_wpj344-16m
485 SOC := ar9344
486 DEVICE_PACKAGES := kmod-usb2
487 IMAGE_SIZE := 16128k
488 DEVICE_VENDOR := Compex
489 DEVICE_MODEL := WPJ344
490 DEVICE_VARIANT := 16M
491 SUPPORTED_DEVICES += wpj344
492 IMAGES += cpximg-6a08.bin
493 IMAGE/cpximg-6a08.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | mkmylofw_16m 0x690 3
494 endef
495 TARGET_DEVICES += compex_wpj344-16m
496
497 define Device/compex_wpj531-16m
498 SOC := qca9531
499 DEVICE_PACKAGES := kmod-usb2
500 IMAGE_SIZE := 16128k
501 DEVICE_VENDOR := Compex
502 DEVICE_MODEL := WPJ531
503 DEVICE_VARIANT := 16M
504 SUPPORTED_DEVICES += wpj531
505 IMAGES += cpximg-7a03.bin cpximg-7a04.bin cpximg-7a06.bin cpximg-7a07.bin
506 IMAGE/cpximg-7a03.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | mkmylofw_16m 0x68a 2
507 IMAGE/cpximg-7a04.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | mkmylofw_16m 0x693 3
508 IMAGE/cpximg-7a06.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | mkmylofw_16m 0x693 3
509 IMAGE/cpximg-7a07.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | mkmylofw_16m 0x693 3
510 endef
511 TARGET_DEVICES += compex_wpj531-16m
512
513 define Device/compex_wpj563
514 SOC := qca9563
515 DEVICE_PACKAGES := kmod-usb2 kmod-usb3
516 IMAGE_SIZE := 16128k
517 DEVICE_VENDOR := Compex
518 DEVICE_MODEL := WPJ563
519 SUPPORTED_DEVICES += wpj563
520 IMAGES += cpximg-7a02.bin
521 IMAGE/cpximg-7a02.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | mkmylofw_16m 0x694 2
522 endef
523 TARGET_DEVICES += compex_wpj563
524
525 define Device/devolo_dvl1200e
526 SOC := qca9558
527 DEVICE_VENDOR := devolo
528 DEVICE_MODEL := WiFi pro 1200e
529 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
530 IMAGE_SIZE := 15936k
531 endef
532 TARGET_DEVICES += devolo_dvl1200e
533
534 define Device/devolo_dvl1200i
535 SOC := qca9558
536 DEVICE_VENDOR := devolo
537 DEVICE_MODEL := WiFi pro 1200i
538 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
539 IMAGE_SIZE := 15936k
540 endef
541 TARGET_DEVICES += devolo_dvl1200i
542
543 define Device/devolo_dvl1750c
544 SOC := qca9558
545 DEVICE_VENDOR := devolo
546 DEVICE_MODEL := WiFi pro 1750c
547 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
548 IMAGE_SIZE := 15936k
549 endef
550 TARGET_DEVICES += devolo_dvl1750c
551
552 define Device/devolo_dvl1750e
553 SOC := qca9558
554 DEVICE_VENDOR := devolo
555 DEVICE_MODEL := WiFi pro 1750e
556 DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
557 IMAGE_SIZE := 15936k
558 endef
559 TARGET_DEVICES += devolo_dvl1750e
560
561 define Device/devolo_dvl1750i
562 SOC := qca9558
563 DEVICE_VENDOR := devolo
564 DEVICE_MODEL := WiFi pro 1750i
565 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
566 IMAGE_SIZE := 15936k
567 endef
568 TARGET_DEVICES += devolo_dvl1750i
569
570 define Device/devolo_dvl1750x
571 SOC := qca9558
572 DEVICE_VENDOR := devolo
573 DEVICE_MODEL := WiFi pro 1750x
574 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
575 IMAGE_SIZE := 15936k
576 endef
577 TARGET_DEVICES += devolo_dvl1750x
578
579 define Device/devolo_magic-2-wifi
580 SOC := ar9344
581 DEVICE_VENDOR := Devolo
582 DEVICE_MODEL := Magic 2 WiFi
583 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
584 IMAGE_SIZE := 15872k
585 endef
586 TARGET_DEVICES += devolo_magic-2-wifi
587
588 define Device/dlink_dap-13xx
589 SOC := qca9533
590 DEVICE_VENDOR := D-Link
591 DEVICE_PACKAGES += rssileds
592 IMAGE_SIZE := 7936k
593 IMAGES += factory.bin
594 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
595 append-rootfs | pad-rootfs | check-size | mkdapimg2 0xE0000
596 endef
597
598 define Device/dlink_dap-1330-a1
599 $(Device/dlink_dap-13xx)
600 DEVICE_MODEL := DAP-1330
601 DEVICE_VARIANT := A1
602 DAP_SIGNATURE := HONEYBEE-FIRMWARE-DAP-1330
603 SUPPORTED_DEVICES += dap-1330-a1
604 endef
605 TARGET_DEVICES += dlink_dap-1330-a1
606
607 define Device/dlink_dap-1365-a1
608 $(Device/dlink_dap-13xx)
609 DEVICE_MODEL := DAP-1365
610 DEVICE_VARIANT := A1
611 DAP_SIGNATURE := HONEYBEE-FIRMWARE-DAP-1365
612 endef
613 TARGET_DEVICES += dlink_dap-1365-a1
614
615 define Device/dlink_dap-2695-a1
616 SOC := qca9558
617 DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct
618 DEVICE_VENDOR := D-Link
619 DEVICE_MODEL := DAP-2965
620 DEVICE_VARIANT := A1
621 IMAGES := factory.img sysupgrade.bin
622 IMAGE_SIZE := 15360k
623 IMAGE/default := append-kernel | pad-offset 65536 160
624 IMAGE/factory.img := $$(IMAGE/default) | append-rootfs | wrgg-pad-rootfs | \
625 mkwrggimg | check-size
626 IMAGE/sysupgrade.bin := $$(IMAGE/default) | mkwrggimg | append-rootfs | \
627 wrgg-pad-rootfs | append-metadata | check-size
628 KERNEL := kernel-bin | append-dtb | relocate-kernel | lzma
629 KERNEL_INITRAMFS := $$(KERNEL) | mkwrggimg
630 DAP_SIGNATURE := wapac02_dkbs_dap2695
631 SUPPORTED_DEVICES += dap-2695-a1
632 endef
633 TARGET_DEVICES += dlink_dap-2695-a1
634
635 define Device/dlink_dch-g020-a1
636 SOC := qca9531
637 DEVICE_VENDOR := D-Link
638 DEVICE_MODEL := DCH-G020
639 DEVICE_VARIANT := A1
640 DEVICE_PACKAGES := kmod-gpio-pca953x kmod-i2c-gpio kmod-usb2 kmod-usb-acm
641 IMAGES += factory.bin
642 IMAGE_SIZE := 14784k
643 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
644 append-rootfs | pad-rootfs | check-size | mkdapimg2 0x20000
645 DAP_SIGNATURE := HONEYBEE-FIRMWARE-DCH-G020
646 endef
647 TARGET_DEVICES += dlink_dch-g020-a1
648
649 define Device/dlink_dir-505
650 SOC := ar9330
651 DEVICE_VENDOR := D-Link
652 DEVICE_MODEL := DIR-505
653 IMAGE_SIZE := 7680k
654 DEVICE_PACKAGES := kmod-usb2
655 SUPPORTED_DEVICES += dir-505-a1
656 endef
657 TARGET_DEVICES += dlink_dir-505
658
659 define Device/dlink_dir-825-b1
660 SOC := ar7161
661 DEVICE_VENDOR := D-Link
662 DEVICE_MODEL := DIR-825
663 DEVICE_VARIANT := B1
664 IMAGE_SIZE := 6208k
665 IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | \
666 append-metadata | check-size
667 DEVICE_PACKAGES := kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport \
668 kmod-leds-reset kmod-owl-loader
669 SUPPORTED_DEVICES += dir-825-b1
670 endef
671 TARGET_DEVICES += dlink_dir-825-b1
672
673 define Device/dlink_dir-825-c1
674 SOC := ar9344
675 DEVICE_VENDOR := D-Link
676 DEVICE_MODEL := DIR-825
677 DEVICE_VARIANT := C1
678 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport kmod-leds-reset \
679 kmod-owl-loader
680 SUPPORTED_DEVICES += dir-825-c1
681 IMAGE_SIZE := 15936k
682 IMAGES := factory.bin sysupgrade.bin
683 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | \
684 pad-rootfs
685 IMAGE/factory.bin := $$(IMAGE/default) | pad-offset $$$$(IMAGE_SIZE) 26 | \
686 append-string 00DB120AR9344-RT-101214-00 | check-size
687 IMAGE/sysupgrade.bin := $$(IMAGE/default) | append-metadata | \
688 check-size
689 endef
690 TARGET_DEVICES += dlink_dir-825-c1
691
692 define Device/dlink_dir-835-a1
693 SOC := ar9344
694 DEVICE_VENDOR := D-Link
695 DEVICE_MODEL := DIR-835
696 DEVICE_VARIANT := A1
697 DEVICE_PACKAGES := kmod-usb2 kmod-leds-reset kmod-owl-loader
698 SUPPORTED_DEVICES += dir-835-a1
699 IMAGE_SIZE := 15936k
700 IMAGES := factory.bin sysupgrade.bin
701 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | \
702 pad-rootfs
703 IMAGE/factory.bin := $$(IMAGE/default) | pad-offset $$$$(IMAGE_SIZE) 26 | \
704 append-string 00DB120AR9344-RT-101214-00 | check-size
705 IMAGE/sysupgrade.bin := $$(IMAGE/default) | append-metadata | \
706 check-size
707 endef
708 TARGET_DEVICES += dlink_dir-835-a1
709
710 define Device/dlink_dir-842-c
711 SOC := qca9563
712 DEVICE_VENDOR := D-Link
713 DEVICE_MODEL := DIR-842
714 KERNEL := kernel-bin | append-dtb | relocate-kernel | lzma
715 KERNEL_INITRAMFS := $$(KERNEL) | seama
716 IMAGES += factory.bin
717 SEAMA_MTDBLOCK := 5
718 SEAMA_SIGNATURE := wrgac65_dlink.2015_dir842
719 # 64 bytes offset:
720 # - 28 bytes seama_header
721 # - 36 bytes of META data (4-bytes aligned)
722 IMAGE/default := append-kernel | uImage lzma | \
723 pad-offset $$$$(BLOCKSIZE) 64 | append-rootfs
724 IMAGE/sysupgrade.bin := $$(IMAGE/default) | seama | pad-rootfs | \
725 append-metadata | check-size
726 IMAGE/factory.bin := $$(IMAGE/default) | pad-rootfs -x 64 | seama | \
727 seama-seal | check-size
728 IMAGE_SIZE := 15680k
729 endef
730
731 define Device/dlink_dir-842-c1
732 $(Device/dlink_dir-842-c)
733 DEVICE_VARIANT := C1
734 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9888-ct
735 endef
736 TARGET_DEVICES += dlink_dir-842-c1
737
738 define Device/dlink_dir-842-c2
739 $(Device/dlink_dir-842-c)
740 DEVICE_VARIANT := C2
741 DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca9888-ct
742 endef
743 TARGET_DEVICES += dlink_dir-842-c2
744
745 define Device/dlink_dir-842-c3
746 $(Device/dlink_dir-842-c)
747 DEVICE_VARIANT := C3
748 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9888-ct
749 endef
750 TARGET_DEVICES += dlink_dir-842-c3
751
752 define Device/dlink_dir-859-a1
753 $(Device/seama)
754 SOC := qca9563
755 DEVICE_VENDOR := D-Link
756 DEVICE_MODEL := DIR-859
757 DEVICE_VARIANT := A1
758 IMAGE_SIZE := 15872k
759 DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct-smallbuffers ath10k-firmware-qca988x-ct
760 SEAMA_SIGNATURE := wrgac37_dlink.2013gui_dir859
761 endef
762 TARGET_DEVICES += dlink_dir-859-a1
763
764 define Device/elecom_wrc-1750ghbk2-i
765 SOC := qca9563
766 DEVICE_VENDOR := ELECOM
767 DEVICE_MODEL := WRC-1750GHBK2-I/C
768 IMAGE_SIZE := 15808k
769 KERNEL_INITRAMFS := $$(KERNEL) | pad-to 2 | \
770 add-elecom-factory-initramfs RN68 WRC-1750GHBK2
771 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
772 endef
773 TARGET_DEVICES += elecom_wrc-1750ghbk2-i
774
775 define Device/elecom_wrc-300ghbk2-i
776 SOC := qca9563
777 DEVICE_VENDOR := ELECOM
778 DEVICE_MODEL := WRC-300GHBK2-I
779 IMAGE_SIZE := 7616k
780 KERNEL_INITRAMFS := $$(KERNEL) | pad-to 2 | \
781 add-elecom-factory-initramfs RN51 WRC-300GHBK2-I
782 endef
783 TARGET_DEVICES += elecom_wrc-300ghbk2-i
784
785 define Device/embeddedwireless_dorin
786 SOC := ar9331
787 DEVICE_VENDOR := Embedded Wireless
788 DEVICE_MODEL := Dorin
789 DEVICE_PACKAGES := kmod-usb-chipidea2
790 IMAGE_SIZE := 16000k
791 endef
792 TARGET_DEVICES += embeddedwireless_dorin
793
794 define Device/engenius_ecb1750
795 SOC := qca9558
796 DEVICE_VENDOR := EnGenius
797 DEVICE_MODEL := ECB1750
798 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
799 IMAGE_SIZE := 15680k
800 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
801 append-rootfs | pad-rootfs | check-size | \
802 senao-header -r 0x101 -p 0x6d -t 2
803 IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | \
804 append-metadata | check-size
805 endef
806 TARGET_DEVICES += engenius_ecb1750
807
808 define Device/engenius_epg5000
809 SOC := qca9558
810 DEVICE_VENDOR := EnGenius
811 DEVICE_MODEL := EPG5000
812 DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct kmod-usb2
813 IMAGE_SIZE := 14656k
814 IMAGES += factory.dlf
815 IMAGE/factory.dlf := append-kernel | pad-to $$$$(BLOCKSIZE) | \
816 append-rootfs | pad-rootfs | check-size | \
817 senao-header -r 0x101 -p 0x71 -t 2
818 SUPPORTED_DEVICES += epg5000
819 endef
820 TARGET_DEVICES += engenius_epg5000
821
822 define Device/engenius_ews511ap
823 SOC := qca9531
824 DEVICE_VENDOR := EnGenius
825 DEVICE_MODEL := EWS511AP
826 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9887-ct
827 IMAGE_SIZE := 16000k
828 endef
829 TARGET_DEVICES += engenius_ews511ap
830
831 define Device/enterasys_ws-ap3705i
832 SOC := ar9344
833 DEVICE_VENDOR := Enterasys
834 DEVICE_MODEL := WS-AP3705i
835 IMAGE_SIZE := 30528k
836 endef
837 TARGET_DEVICES += enterasys_ws-ap3705i
838
839 define Device/etactica_eg200
840 SOC := ar9331
841 DEVICE_VENDOR := eTactica
842 DEVICE_MODEL := EG200
843 DEVICE_PACKAGES := kmod-usb-chipidea2 kmod-ledtrig-oneshot \
844 kmod-usb-serial kmod-usb-serial-ftdi kmod-usb-storage kmod-fs-ext4
845 IMAGE_SIZE := 16000k
846 SUPPORTED_DEVICES += rme-eg200
847 endef
848 TARGET_DEVICES += etactica_eg200
849
850 define Device/glinet_6408
851 $(Device/tplink-8mlzma)
852 SOC := ar9331
853 DEVICE_VENDOR := GL.iNet
854 DEVICE_MODEL := 6408
855 DEVICE_PACKAGES := kmod-usb2
856 IMAGE_SIZE := 8000k
857 TPLINK_HWID := 0x08000001
858 IMAGES := sysupgrade.bin
859 SUPPORTED_DEVICES += gl-inet
860 endef
861 TARGET_DEVICES += glinet_6408
862
863 define Device/glinet_6416
864 $(Device/tplink-16mlzma)
865 SOC := ar9331
866 DEVICE_VENDOR := GL.iNet
867 DEVICE_MODEL := 6416
868 DEVICE_PACKAGES := kmod-usb2
869 IMAGE_SIZE := 16192k
870 TPLINK_HWID := 0x08000001
871 IMAGES := sysupgrade.bin
872 SUPPORTED_DEVICES += gl-inet
873 endef
874 TARGET_DEVICES += glinet_6416
875
876 define Device/glinet_gl-ar150
877 SOC := ar9330
878 DEVICE_VENDOR := GL.iNet
879 DEVICE_MODEL := GL-AR150
880 DEVICE_PACKAGES := kmod-usb-chipidea2
881 IMAGE_SIZE := 16000k
882 SUPPORTED_DEVICES += gl-ar150
883 endef
884 TARGET_DEVICES += glinet_gl-ar150
885
886 define Device/glinet_gl-ar300m-common-nor
887 SOC := qca9531
888 DEVICE_VENDOR := GL.iNet
889 DEVICE_PACKAGES := kmod-usb2
890 IMAGE_SIZE := 16000k
891 SUPPORTED_DEVICES += gl-ar300m
892 endef
893
894 define Device/glinet_gl-ar300m-lite
895 $(Device/glinet_gl-ar300m-common-nor)
896 DEVICE_MODEL := GL-AR300M
897 DEVICE_VARIANT := Lite
898 endef
899 TARGET_DEVICES += glinet_gl-ar300m-lite
900
901 define Device/glinet_gl-ar300m16
902 $(Device/glinet_gl-ar300m-common-nor)
903 DEVICE_MODEL := GL-AR300M16
904 endef
905 TARGET_DEVICES += glinet_gl-ar300m16
906
907 define Device/glinet_gl-ar750
908 SOC := qca9531
909 DEVICE_VENDOR := GL.iNet
910 DEVICE_MODEL := GL-AR750
911 DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca9887-ct
912 IMAGE_SIZE := 16000k
913 SUPPORTED_DEVICES += gl-ar750
914 endef
915 TARGET_DEVICES += glinet_gl-ar750
916
917 define Device/glinet_gl-mifi
918 SOC := ar9331
919 DEVICE_VENDOR := GL.iNET
920 DEVICE_MODEL := GL-MiFi
921 DEVICE_PACKAGES := kmod-usb-chipidea2
922 IMAGE_SIZE := 16000k
923 SUPPORTED_DEVICES += gl-mifi
924 endef
925 TARGET_DEVICES += glinet_gl-mifi
926
927 define Device/glinet_gl-x750
928 SOC := qca9531
929 DEVICE_VENDOR := GL.iNet
930 DEVICE_MODEL := GL-X750
931 DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca9887-ct
932 IMAGE_SIZE := 16000k
933 endef
934 TARGET_DEVICES += glinet_gl-x750
935
936 define Device/iodata_etg3-r
937 SOC := ar9342
938 DEVICE_VENDOR := I-O DATA
939 DEVICE_MODEL := ETG3-R
940 IMAGE_SIZE := 7680k
941 DEVICE_PACKAGES := -iwinfo -kmod-ath9k -wpad-basic-wolfssl
942 endef
943 TARGET_DEVICES += iodata_etg3-r
944
945 define Device/iodata_wn-ac1167dgr
946 SOC := qca9557
947 DEVICE_VENDOR := I-O DATA
948 DEVICE_MODEL := WN-AC1167DGR
949 IMAGE_SIZE := 14656k
950 IMAGES += factory.bin
951 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
952 append-rootfs | pad-rootfs | check-size | \
953 senao-header -r 0x30a -p 0x61 -t 2
954 DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
955 endef
956 TARGET_DEVICES += iodata_wn-ac1167dgr
957
958 define Device/iodata_wn-ac1600dgr
959 SOC := qca9557
960 DEVICE_VENDOR := I-O DATA
961 DEVICE_MODEL := WN-AC1600DGR
962 IMAGE_SIZE := 14656k
963 IMAGES += factory.bin
964 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
965 append-rootfs | pad-rootfs | check-size | \
966 senao-header -r 0x30a -p 0x60 -t 2 -v 200
967 DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
968 endef
969 TARGET_DEVICES += iodata_wn-ac1600dgr
970
971 define Device/iodata_wn-ac1600dgr2
972 SOC := qca9557
973 DEVICE_VENDOR := I-O DATA
974 DEVICE_MODEL := WN-AC1600DGR2/DGR3
975 IMAGE_SIZE := 14656k
976 IMAGES += dgr2-dgr3-factory.bin
977 IMAGE/dgr2-dgr3-factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
978 append-rootfs | pad-rootfs | check-size | \
979 senao-header -r 0x30a -p 0x60 -t 2 -v 200
980 DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
981 endef
982 TARGET_DEVICES += iodata_wn-ac1600dgr2
983
984 define Device/iodata_wn-ag300dgr
985 SOC := ar1022
986 DEVICE_VENDOR := I-O DATA
987 DEVICE_MODEL := WN-AG300DGR
988 IMAGE_SIZE := 15424k
989 IMAGES += factory.bin
990 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
991 append-rootfs | pad-rootfs | check-size | \
992 senao-header -r 0x30a -p 0x47 -t 2
993 DEVICE_PACKAGES := kmod-usb2
994 endef
995 TARGET_DEVICES += iodata_wn-ag300dgr
996
997 define Device/jjplus_ja76pf2
998 SOC := ar7161
999 DEVICE_VENDOR := jjPlus
1000 DEVICE_MODEL := JA76PF2
1001 DEVICE_PACKAGES += -kmod-ath9k -swconfig -wpad-basic-wolfssl -uboot-envtools fconfig
1002 IMAGES := kernel.bin rootfs.bin
1003 IMAGE/kernel.bin := append-kernel
1004 IMAGE/rootfs.bin := append-rootfs | pad-rootfs
1005 KERNEL := kernel-bin | append-dtb | lzma | pad-to $$(BLOCKSIZE)
1006 KERNEL_INITRAMFS := kernel-bin | append-dtb
1007 IMAGE_SIZE := 16000k
1008 SUPPORTED_DEVICES += ja76pf2
1009 endef
1010 TARGET_DEVICES += jjplus_ja76pf2
1011
1012 define Device/librerouter_librerouter-v1
1013 SOC := qca9558
1014 DEVICE_VENDOR := Librerouter
1015 DEVICE_MODEL := LibreRouter
1016 DEVICE_VARIANT := v1
1017 IMAGE_SIZE := 7936k
1018 DEVICE_PACKAGES := kmod-usb2
1019 endef
1020 TARGET_DEVICES += librerouter_librerouter-v1
1021
1022 define Device/meraki_mr16
1023 SOC := ar7161
1024 DEVICE_VENDOR := Meraki
1025 DEVICE_MODEL := MR16
1026 IMAGE_SIZE := 15616k
1027 DEVICE_PACKAGES := kmod-owl-loader
1028 SUPPORTED_DEVICES += mr16
1029 DEVICE_COMPAT_VERSION := 2.0
1030 DEVICE_COMPAT_MESSAGE := Partitions differ from ar71xx version of MR16. Image format is incompatible. \
1031 To use sysupgrade, you must change /lib/update/common.sh::get_image to prepend 128K zeroes to this image, \
1032 and change the bootcmd in u-boot to "bootm 0xbf0a0000". After that, you can use "sysupgrade -F". \
1033 For more details, see the OpenWrt Wiki: https://openwrt.org/toh/meraki/mr16, \
1034 or the commit message of the MR16 ath79 port on git.openwrt.org.
1035 endef
1036 TARGET_DEVICES += meraki_mr16
1037
1038 define Device/nec_wg1200cr
1039 SOC := qca9563
1040 DEVICE_VENDOR := NEC
1041 DEVICE_MODEL := Aterm WG1200CR
1042 IMAGE_SIZE := 7616k
1043 SEAMA_MTDBLOCK := 6
1044 SEAMA_SIGNATURE := wrgac72_necpf.2016gui_wg1200cr
1045 IMAGES += factory.bin
1046 IMAGE/default := append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | append-rootfs
1047 IMAGE/sysupgrade.bin := $$(IMAGE/default) | seama | pad-rootfs | \
1048 append-metadata | check-size
1049 IMAGE/factory.bin := $$(IMAGE/default) | pad-rootfs -x 64 | seama | \
1050 seama-seal | nec-enc 9gsiy9nzep452pad | check-size
1051 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9888-ct
1052 endef
1053 TARGET_DEVICES += nec_wg1200cr
1054
1055 define Device/nec_wg800hp
1056 SOC := qca9563
1057 DEVICE_VENDOR := NEC
1058 DEVICE_MODEL := Aterm WG800HP
1059 IMAGE_SIZE := 7104k
1060 IMAGES += factory.bin
1061 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
1062 append-rootfs | pad-rootfs | check-size | \
1063 xor-image -p 6A57190601121E4C004C1E1201061957 -x | nec-fw LASER_ATERM
1064 DEVICE_PACKAGES := kmod-ath10k-ct-smallbuffers ath10k-firmware-qca9887-ct-full-htt
1065 endef
1066 TARGET_DEVICES += nec_wg800hp
1067
1068 define Device/netgear_ex6400_ex7300
1069 $(Device/netgear_generic)
1070 SOC := qca9558
1071 NETGEAR_KERNEL_MAGIC := 0x27051956
1072 NETGEAR_BOARD_ID := EX7300series
1073 NETGEAR_HW_ID := 29765104+16+0+128
1074 IMAGE_SIZE := 15552k
1075 IMAGE/default := append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | \
1076 netgear-rootfs | pad-rootfs
1077 IMAGE/sysupgrade.bin := $$(IMAGE/default) | append-metadata | \
1078 check-size
1079 IMAGE/factory.img := $$(IMAGE/default) | netgear-dni | \
1080 check-size
1081 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca99x0-ct
1082 endef
1083
1084 define Device/netgear_ex6400
1085 $(Device/netgear_ex6400_ex7300)
1086 DEVICE_MODEL := EX6400
1087 endef
1088 TARGET_DEVICES += netgear_ex6400
1089
1090 define Device/netgear_ex7300
1091 $(Device/netgear_ex6400_ex7300)
1092 DEVICE_MODEL := EX7300
1093 endef
1094 TARGET_DEVICES += netgear_ex7300
1095
1096 define Device/netgear_wndr3x00
1097 $(Device/netgear_generic)
1098 SOC := ar7161
1099 DEVICE_PACKAGES := kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport \
1100 kmod-leds-reset kmod-owl-loader
1101 endef
1102
1103 define Device/netgear_wndr3700
1104 $(Device/netgear_wndr3x00)
1105 DEVICE_MODEL := WNDR3700
1106 DEVICE_VARIANT := v1
1107 NETGEAR_KERNEL_MAGIC := 0x33373030
1108 NETGEAR_BOARD_ID := WNDR3700
1109 IMAGE_SIZE := 7680k
1110 IMAGES += factory-NA.img
1111 IMAGE/factory-NA.img := $$(IMAGE/default) | netgear-dni NA | \
1112 check-size
1113 SUPPORTED_DEVICES += wndr3700
1114 endef
1115 TARGET_DEVICES += netgear_wndr3700
1116
1117 define Device/netgear_wndr3700-v2
1118 $(Device/netgear_wndr3x00)
1119 DEVICE_MODEL := WNDR3700
1120 DEVICE_VARIANT := v2
1121 NETGEAR_KERNEL_MAGIC := 0x33373031
1122 NETGEAR_BOARD_ID := WNDR3700v2
1123 NETGEAR_HW_ID := 29763654+16+64
1124 IMAGE_SIZE := 15872k
1125 SUPPORTED_DEVICES += wndr3700 netgear,wndr3700v2
1126 endef
1127 TARGET_DEVICES += netgear_wndr3700-v2
1128
1129 define Device/netgear_wndr3800
1130 $(Device/netgear_wndr3x00)
1131 DEVICE_MODEL := WNDR3800
1132 NETGEAR_KERNEL_MAGIC := 0x33373031
1133 NETGEAR_BOARD_ID := WNDR3800
1134 NETGEAR_HW_ID := 29763654+16+128
1135 IMAGE_SIZE := 15872k
1136 SUPPORTED_DEVICES += wndr3700
1137 endef
1138 TARGET_DEVICES += netgear_wndr3800
1139
1140 define Device/netgear_wndr3800ch
1141 $(Device/netgear_wndr3x00)
1142 DEVICE_MODEL := WNDR3800CH
1143 NETGEAR_KERNEL_MAGIC := 0x33373031
1144 NETGEAR_BOARD_ID := WNDR3800CH
1145 NETGEAR_HW_ID := 29763654+16+128
1146 IMAGE_SIZE := 15872k
1147 SUPPORTED_DEVICES += wndr3700
1148 endef
1149 TARGET_DEVICES += netgear_wndr3800ch
1150
1151 define Device/netgear_wndrmac-v1
1152 $(Device/netgear_wndr3x00)
1153 DEVICE_MODEL := WNDRMAC
1154 DEVICE_VARIANT := v1
1155 NETGEAR_KERNEL_MAGIC := 0x33373031
1156 NETGEAR_BOARD_ID := WNDRMAC
1157 NETGEAR_HW_ID := 29763654+16+64
1158 IMAGE_SIZE := 15872k
1159 SUPPORTED_DEVICES += wndr3700
1160 endef
1161 TARGET_DEVICES += netgear_wndrmac-v1
1162
1163 define Device/netgear_wndrmac-v2
1164 $(Device/netgear_wndr3x00)
1165 DEVICE_MODEL := WNDRMAC
1166 DEVICE_VARIANT := v2
1167 NETGEAR_KERNEL_MAGIC := 0x33373031
1168 NETGEAR_BOARD_ID := WNDRMACv2
1169 NETGEAR_HW_ID := 29763654+16+128
1170 IMAGE_SIZE := 15872k
1171 SUPPORTED_DEVICES += wndr3700
1172 endef
1173 TARGET_DEVICES += netgear_wndrmac-v2
1174
1175 define Device/netgear_wnr2200_common
1176 $(Device/netgear_generic)
1177 SOC := ar7241
1178 DEVICE_MODEL := WNR2200
1179 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
1180 NETGEAR_KERNEL_MAGIC := 0x32323030
1181 NETGEAR_BOARD_ID := wnr2200
1182 endef
1183
1184 define Device/netgear_wnr2200-8m
1185 $(Device/netgear_wnr2200_common)
1186 DEVICE_VARIANT := 8M
1187 NETGEAR_HW_ID := 29763600+08+64
1188 IMAGE_SIZE := 7808k
1189 IMAGES += factory-NA.img
1190 IMAGE/factory-NA.img := $$(IMAGE/default) | netgear-dni NA | \
1191 check-size
1192 SUPPORTED_DEVICES += wnr2200
1193 endef
1194 TARGET_DEVICES += netgear_wnr2200-8m
1195
1196 define Device/netgear_wnr2200-16m
1197 $(Device/netgear_wnr2200_common)
1198 DEVICE_VARIANT := 16M
1199 DEVICE_ALT0_VENDOR := NETGEAR
1200 DEVICE_ALT0_MODEL := WNR2200
1201 DEVICE_ALT0_VARIANT := CN/RU
1202 NETGEAR_HW_ID :=
1203 IMAGE_SIZE := 16000k
1204 endef
1205 TARGET_DEVICES += netgear_wnr2200-16m
1206
1207 define Device/ocedo_koala
1208 SOC := qca9558
1209 DEVICE_VENDOR := Ocedo
1210 DEVICE_MODEL := Koala
1211 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
1212 SUPPORTED_DEVICES += koala
1213 IMAGE_SIZE := 7424k
1214 IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | \
1215 append-metadata | check-size
1216 endef
1217 TARGET_DEVICES += ocedo_koala
1218
1219 define Device/ocedo_raccoon
1220 SOC := ar9344
1221 DEVICE_VENDOR := Ocedo
1222 DEVICE_MODEL := Raccoon
1223 IMAGE_SIZE := 7424k
1224 IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | \
1225 append-metadata | check-size
1226 endef
1227 TARGET_DEVICES += ocedo_raccoon
1228
1229 define Device/ocedo_ursus
1230 SOC := qca9558
1231 DEVICE_VENDOR := Ocedo
1232 DEVICE_MODEL := Ursus
1233 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
1234 IMAGE_SIZE := 7424k
1235 IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | \
1236 append-metadata | check-size
1237 endef
1238 TARGET_DEVICES += ocedo_ursus
1239
1240 define Device/openmesh_om5p-ac-v2
1241 SOC := qca9558
1242 DEVICE_VENDOR := OpenMesh
1243 DEVICE_MODEL := OM5P-AC
1244 DEVICE_VARIANT := v2
1245 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct om-watchdog
1246 IMAGE_SIZE := 7808k
1247 SUPPORTED_DEVICES += om5p-acv2
1248 endef
1249 TARGET_DEVICES += openmesh_om5p-ac-v2
1250
1251 define Device/pcs_cap324
1252 SOC := ar9344
1253 DEVICE_VENDOR := PowerCloud Systems
1254 DEVICE_MODEL := CAP324
1255 IMAGE_SIZE := 16000k
1256 SUPPORTED_DEVICES += cap324
1257 endef
1258 TARGET_DEVICES += pcs_cap324
1259
1260 define Device/pcs_cr3000
1261 SOC := ar9341
1262 DEVICE_VENDOR := PowerCloud Systems
1263 DEVICE_MODEL := CR3000
1264 IMAGE_SIZE := 7808k
1265 SUPPORTED_DEVICES += cr3000
1266 endef
1267 TARGET_DEVICES += pcs_cr3000
1268
1269 define Device/pcs_cr5000
1270 SOC := ar9344
1271 DEVICE_VENDOR := PowerCloud Systems
1272 DEVICE_MODEL := CR5000
1273 DEVICE_PACKAGES := kmod-usb2
1274 IMAGE_SIZE := 7808k
1275 SUPPORTED_DEVICES += cr5000
1276 endef
1277 TARGET_DEVICES += pcs_cr5000
1278
1279 define Device/phicomm_k2t
1280 SOC := qca9563
1281 DEVICE_VENDOR := Phicomm
1282 DEVICE_MODEL := K2T
1283 IMAGE_SIZE := 15744k
1284 IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | \
1285 append-metadata | check-size
1286 DEVICE_PACKAGES := kmod-leds-reset kmod-ath10k-ct-smallbuffers ath10k-firmware-qca9888-ct
1287 endef
1288 TARGET_DEVICES += phicomm_k2t
1289
1290 define Device/pisen_ts-d084
1291 $(Device/tplink-8mlzma)
1292 SOC := ar9331
1293 DEVICE_VENDOR := PISEN
1294 DEVICE_MODEL := TS-D084
1295 DEVICE_PACKAGES := kmod-usb2 kmod-usb-chipidea2
1296 TPLINK_HWID := 0x07030101
1297 endef
1298 TARGET_DEVICES += pisen_ts-d084
1299
1300 define Device/pisen_wmb001n
1301 SOC := ar9341
1302 DEVICE_VENDOR := PISEN
1303 DEVICE_MODEL := WMB001N
1304 IMAGE_SIZE := 14080k
1305 DEVICE_PACKAGES := kmod-i2c-gpio kmod-usb2
1306 LOADER_TYPE := bin
1307 LOADER_FLASH_OFFS := 0x20000
1308 COMPILE := loader-$(1).bin loader-$(1).uImage
1309 COMPILE/loader-$(1).bin := loader-okli-compile
1310 COMPILE/loader-$(1).uImage := append-loader-okli $(1) | pad-to 64k | lzma | \
1311 uImage lzma
1312 KERNEL := kernel-bin | append-dtb | lzma | uImage lzma -M 0x4f4b4c49
1313 IMAGES += factory.bin
1314 IMAGE/factory.bin := $$(IMAGE/sysupgrade.bin) | pisen_wmb001n-factory $(1)
1315 endef
1316 TARGET_DEVICES += pisen_wmb001n
1317
1318 define Device/pisen_wmm003n
1319 $(Device/tplink-8mlzma)
1320 SOC := ar9331
1321 DEVICE_VENDOR := PISEN
1322 DEVICE_MODEL := Cloud Easy Power (WMM003N)
1323 DEVICE_PACKAGES := kmod-usb2 kmod-usb-chipidea2
1324 TPLINK_HWID := 0x07030101
1325 endef
1326 TARGET_DEVICES += pisen_wmm003n
1327
1328 define Device/qihoo_c301
1329 $(Device/seama)
1330 SOC := ar9344
1331 DEVICE_VENDOR := Qihoo
1332 DEVICE_MODEL := C301
1333 DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct \
1334 uboot-envtools
1335 IMAGE_SIZE := 15744k
1336 SEAMA_SIGNATURE := wrgac26_qihoo360_360rg
1337 SUPPORTED_DEVICES += qihoo-c301
1338 endef
1339 TARGET_DEVICES += qihoo_c301
1340
1341 define Device/rosinson_wr818
1342 SOC := qca9563
1343 DEVICE_VENDOR := Rosinson
1344 DEVICE_MODEL := WR818
1345 IMAGE_SIZE := 15872k
1346 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
1347 endef
1348 TARGET_DEVICES += rosinson_wr818
1349
1350 define Device/siemens_ws-ap3610
1351 SOC := ar7161
1352 DEVICE_VENDOR := Siemens
1353 DEVICE_MODEL := WS-AP3610
1354 IMAGE_SIZE := 14336k
1355 BLOCKSIZE := 256k
1356 LOADER_TYPE := bin
1357 LOADER_FLASH_OFFS := 0x82000
1358 COMPILE := loader-$(1).bin
1359 COMPILE/loader-$(1).bin := loader-okli-compile
1360 KERNEL := kernel-bin | append-dtb | lzma | uImage lzma -M 0x4f4b4c49 | loader-okli $(1) 8128 | uImage none
1361 KERNEL_INITRAMFS := kernel-bin | append-dtb | uImage none
1362 endef
1363 TARGET_DEVICES += siemens_ws-ap3610
1364
1365 define Device/sitecom_wlr-7100
1366 SOC := ar1022
1367 DEVICE_VENDOR := Sitecom
1368 DEVICE_MODEL := WLR-7100
1369 DEVICE_VARIANT := v1 002
1370 DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct-smallbuffers kmod-usb2
1371 IMAGES += factory.dlf
1372 IMAGE/factory.dlf := append-kernel | pad-to $$$$(BLOCKSIZE) | \
1373 append-rootfs | pad-rootfs | check-size | \
1374 senao-header -r 0x222 -p 0x53 -t 2
1375 IMAGE_SIZE := 7488k
1376 endef
1377 TARGET_DEVICES += sitecom_wlr-7100
1378
1379 define Device/sitecom_wlr-8100
1380 SOC := qca9558
1381 DEVICE_VENDOR := Sitecom
1382 DEVICE_MODEL := WLR-8100
1383 DEVICE_ALT0_VENDOR := Sitecom
1384 DEVICE_ALT0_MODEL := X8 AC1750
1385 DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct kmod-usb2 kmod-usb3
1386 SUPPORTED_DEVICES += wlr8100
1387 IMAGES += factory.dlf
1388 IMAGE/factory.dlf := append-kernel | pad-to $$$$(BLOCKSIZE) | \
1389 append-rootfs | pad-rootfs | check-size | \
1390 senao-header -r 0x222 -p 0x56 -t 2
1391 IMAGE_SIZE := 15424k
1392 endef
1393 TARGET_DEVICES += sitecom_wlr-8100
1394
1395 define Device/telco_t1
1396 SOC := qca9531
1397 DEVICE_VENDOR := Telco
1398 DEVICE_MODEL := T1
1399 DEVICE_PACKAGES := kmod-usb2 kmod-usb-net-qmi-wwan \
1400 kmod-usb-serial-option uqmi -swconfig -uboot-envtools
1401 IMAGE_SIZE := 16192k
1402 SUPPORTED_DEVICES += telco_electronics,tel-t1
1403 endef
1404 TARGET_DEVICES += telco_t1
1405
1406 define Device/teltonika_rut955
1407 SOC := ar9344
1408 DEVICE_VENDOR := Teltonika
1409 DEVICE_MODEL := RUT955
1410 DEVICE_PACKAGES := kmod-usb2 kmod-usb-acm kmod-usb-net-qmi-wwan \
1411 kmod-usb-serial-option kmod-hwmon-mcp3021 uqmi -uboot-envtools
1412 IMAGE_SIZE := 15552k
1413 TPLINK_HWID := 0x35000001
1414 TPLINK_HWREV := 0x1
1415 TPLINK_HEADER_VERSION := 1
1416 KERNEL := kernel-bin | append-dtb | lzma | tplink-v1-header
1417 KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma | uImage lzma
1418 IMAGES += factory.bin
1419 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs |\
1420 pad-rootfs | teltonika-fw-fake-checksum | append-string master |\
1421 append-md5sum-bin | check-size
1422 IMAGE/sysupgrade.bin := append-kernel | pad-to $$$$(BLOCKSIZE) |\
1423 append-rootfs | pad-rootfs | append-metadata |\
1424 check-size
1425 endef
1426 TARGET_DEVICES += teltonika_rut955
1427
1428 define Device/teltonika_rut955-h7v3c0
1429 $(Device/teltonika_rut955)
1430 DEVICE_VARIANT := H7V3C0
1431 endef
1432 TARGET_DEVICES += teltonika_rut955-h7v3c0
1433
1434 define Device/trendnet_tew-823dru
1435 SOC := qca9558
1436 DEVICE_VENDOR := Trendnet
1437 DEVICE_MODEL := TEW-823DRU
1438 DEVICE_VARIANT := v1.0R
1439 DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
1440 SUPPORTED_DEVICES += tew-823dru
1441 IMAGE_SIZE := 15296k
1442 IMAGES := factory.bin sysupgrade.bin
1443 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | \
1444 pad-rootfs
1445 IMAGE/factory.bin := $$(IMAGE/default) | pad-offset $$$$(IMAGE_SIZE) 26 | \
1446 append-string 00AP135AR9558-RT-131129-00 | check-size
1447 IMAGE/sysupgrade.bin := $$(IMAGE/default) | append-metadata | \
1448 check-size
1449 endef
1450 TARGET_DEVICES += trendnet_tew-823dru
1451
1452 define Device/wd_mynet-n750
1453 $(Device/seama)
1454 SOC := ar9344
1455 DEVICE_VENDOR := Western Digital
1456 DEVICE_MODEL := My Net N750
1457 IMAGE_SIZE := 15872k
1458 DEVICE_PACKAGES := kmod-usb2
1459 SEAMA_SIGNATURE := wrgnd13_wd_av
1460 SUPPORTED_DEVICES += mynet-n750
1461 endef
1462 TARGET_DEVICES += wd_mynet-n750
1463
1464 define Device/wd_mynet-wifi-rangeextender
1465 SOC := ar9344
1466 DEVICE_VENDOR := Western Digital
1467 DEVICE_MODEL := My Net Wi-Fi Range Extender
1468 DEVICE_PACKAGES := rssileds nvram -swconfig
1469 IMAGE_SIZE := 7808k
1470 ADDPATTERN_ID := mynet-rext
1471 ADDPATTERN_VERSION := 1.00.01
1472 IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | cybertan-trx | \
1473 addpattern | append-metadata
1474 SUPPORTED_DEVICES += mynet-rext
1475 endef
1476 TARGET_DEVICES += wd_mynet-wifi-rangeextender
1477
1478 define Device/winchannel_wb2000
1479 SOC := ar9344
1480 DEVICE_VENDOR := Winchannel
1481 DEVICE_MODEL := WB2000
1482 IMAGE_SIZE := 15872k
1483 DEVICE_PACKAGES := kmod-i2c-gpio kmod-rtc-ds1307 kmod-usb2 \
1484 kmod-usb-ledtrig-usbport
1485 endef
1486 TARGET_DEVICES += winchannel_wb2000
1487
1488 define Device/xiaomi_mi-router-4q
1489 SOC := qca9561
1490 DEVICE_VENDOR := Xiaomi
1491 DEVICE_MODEL := Mi Router 4Q
1492 IMAGE_SIZE := 14336k
1493 endef
1494 TARGET_DEVICES += xiaomi_mi-router-4q
1495
1496 define Device/yuncore_a770
1497 SOC := qca9531
1498 DEVICE_VENDOR := YunCore
1499 DEVICE_MODEL := A770
1500 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9887-ct
1501 IMAGE_SIZE := 16000k
1502 IMAGES += tftp.bin
1503 IMAGE/tftp.bin := $$(IMAGE/sysupgrade.bin) | yuncore-tftp-header-16m
1504 endef
1505 TARGET_DEVICES += yuncore_a770
1506
1507 define Device/yuncore_a782
1508 SOC := qca9563
1509 DEVICE_VENDOR := YunCore
1510 DEVICE_MODEL := A782
1511 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9888-ct
1512 IMAGE_SIZE := 16000k
1513 IMAGES += tftp.bin
1514 IMAGE/tftp.bin := $$(IMAGE/sysupgrade.bin) | yuncore-tftp-header-16m
1515 endef
1516 TARGET_DEVICES += yuncore_a782
1517
1518 define Device/yuncore_xd4200
1519 SOC := qca9563
1520 DEVICE_VENDOR := YunCore
1521 DEVICE_MODEL := XD4200
1522 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9888-ct
1523 IMAGE_SIZE := 16000k
1524 IMAGES += tftp.bin
1525 IMAGE/tftp.bin := $$(IMAGE/sysupgrade.bin) | yuncore-tftp-header-16m
1526 endef
1527 TARGET_DEVICES += yuncore_xd4200
1528
1529 define Device/zbtlink_zbt-wd323
1530 SOC := ar9344
1531 DEVICE_VENDOR := ZBT
1532 DEVICE_MODEL := WD323
1533 IMAGE_SIZE := 16000k
1534 DEVICE_PACKAGES := kmod-usb2 kmod-i2c-gpio kmod-rtc-pcf8563 \
1535 kmod-usb-serial kmod-usb-serial-cp210x uqmi
1536 endef
1537 TARGET_DEVICES += zbtlink_zbt-wd323
1538
1539 define Device/zyxel_nbg6616
1540 SOC := qca9557
1541 DEVICE_VENDOR := ZyXEL
1542 DEVICE_MODEL := NBG6616
1543 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport kmod-rtc-pcf8563 \
1544 kmod-ath10k-ct ath10k-firmware-qca988x-ct
1545 IMAGE_SIZE := 15232k
1546 RAS_BOARD := NBG6616
1547 RAS_ROOTFS_SIZE := 14464k
1548 RAS_VERSION := "OpenWrt Linux-$(LINUX_VERSION)"
1549 IMAGES += factory.bin
1550 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
1551 append-rootfs | pad-rootfs | pad-to 64k | check-size | zyxel-ras-image
1552 SUPPORTED_DEVICES += nbg6616
1553 endef
1554 TARGET_DEVICES += zyxel_nbg6616