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