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