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