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