ath79: add support for Teltonika RUT300
[openwrt/staging/dedeckeh.git] / target / linux / ath79 / image / generic.mk
1 include ./common-buffalo.mk
2 include ./common-netgear.mk
3 include ./common-senao.mk
4 include ./common-tp-link.mk
5 include ./common-yuncore.mk
6 include ./common-ubnt.mk
7
8 DEVICE_VARS += ADDPATTERN_ID ADDPATTERN_VERSION
9 DEVICE_VARS += SEAMA_SIGNATURE SEAMA_MTDBLOCK
10 DEVICE_VARS += KERNEL_INITRAMFS_PREFIX DAP_SIGNATURE
11 DEVICE_VARS += EDIMAX_HEADER_MAGIC EDIMAX_HEADER_MODEL
12 DEVICE_VARS += OPENMESH_CE_TYPE ZYXEL_MODEL_STRING
13 DEVICE_VARS += SUPPORTED_TELTONIKA_DEVICES
14
15 define Build/addpattern
16 -$(STAGING_DIR_HOST)/bin/addpattern -B $(ADDPATTERN_ID) \
17 -v v$(ADDPATTERN_VERSION) -i $@ -o $@.new
18 -mv "$@.new" "$@"
19 endef
20
21 define Build/append-md5sum-bin
22 $(MKHASH) md5 $@ | sed 's/../\\\\x&/g' |\
23 xargs echo -ne >> $@
24 endef
25
26 define Build/cybertan-trx
27 @echo -n '' > $@-empty.bin
28 -$(STAGING_DIR_HOST)/bin/trx -o $@.new \
29 -f $(IMAGE_KERNEL) -F $@-empty.bin \
30 -x 32 -a 0x10000 -x -32 -f $@
31 -mv "$@.new" "$@"
32 -rm $@-empty.bin
33 endef
34
35 define Build/edimax-headers
36 $(eval edimax_magic=$(word 1,$(1)))
37 $(eval edimax_model=$(word 2,$(1)))
38
39 $(STAGING_DIR_HOST)/bin/edimax_fw_header -M $(edimax_magic) -m $(edimax_model)\
40 -v $(VERSION_DIST)$(firstword $(subst +, , $(firstword $(subst -, ,$(REVISION))))) \
41 -n "uImage" \
42 -i $(KDIR)/loader-$(DEVICE_NAME).uImage \
43 -o $@.uImage
44 $(STAGING_DIR_HOST)/bin/edimax_fw_header -M $(edimax_magic) -m $(edimax_model)\
45 -v $(VERSION_DIST)$(firstword $(subst +, , $(firstword $(subst -, ,$(REVISION))))) \
46 -n "rootfs" \
47 -i $@ \
48 -o $@.rootfs
49 cat $@.uImage $@.rootfs > $@
50 rm -rf $@.uImage $@.rootfs
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 $@) - $(1)"; \
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/teltonika-v1-header
135 $(STAGING_DIR_HOST)/bin/mktplinkfw \
136 -c -H $(TPLINK_HWID) -W $(TPLINK_HWREV) -L $(KERNEL_LOADADDR) \
137 -E $(if $(KERNEL_ENTRY),$(KERNEL_ENTRY),$(KERNEL_LOADADDR)) \
138 -m $(TPLINK_HEADER_VERSION) -N "$(VERSION_DIST)" -V "RUT2xx " \
139 -k $@ -o $@.new $(1)
140 @mv $@.new $@
141 endef
142
143 metadata_json_teltonika = \
144 '{ $(if $(IMAGE_METADATA),$(IMAGE_METADATA)$(comma)) \
145 "metadata_version": "1.1", \
146 "compat_version": "$(call json_quote,$(compat_version))", \
147 "version":"$(call json_quote,$(VERSION_DIST))-$(call json_quote,$(VERSION_NUMBER))-$(call json_quote,$(REVISION))", \
148 "device_code": [".*"], \
149 "hwver": [".*"], \
150 "batch": [".*"], \
151 "serial": [".*"], \
152 $(if $(DEVICE_COMPAT_MESSAGE),"compat_message": "$(call json_quote,$(DEVICE_COMPAT_MESSAGE))"$(comma)) \
153 $(if $(filter-out 1.0,$(compat_version)),"new_supported_devices": \
154 [$(call metadata_devices,$(SUPPORTED_TELTONIKA_DEVICES))]$(comma) \
155 "supported_devices": ["$(call json_quote,$(legacy_supported_message))"]$(comma)) \
156 $(if $(filter 1.0,$(compat_version)),"supported_devices":[$(call metadata_devices,$(SUPPORTED_TELTONIKA_DEVICES))]$(comma)) \
157 "version_wrt": { \
158 "dist": "$(call json_quote,$(VERSION_DIST))", \
159 "version": "$(call json_quote,$(VERSION_NUMBER))", \
160 "revision": "$(call json_quote,$(REVISION))", \
161 "target": "$(call json_quote,$(TARGETID))", \
162 "board": "$(call json_quote,$(if $(BOARD_NAME),$(BOARD_NAME),$(DEVICE_NAME)))" \
163 }, \
164 "hw_support": {}, \
165 "hw_mods": {} \
166 }'
167
168 define Build/append-metadata-teltonika
169 echo $(call metadata_json_teltonika) | fwtool -I - $@
170 endef
171
172 define Build/wrgg-pad-rootfs
173 $(STAGING_DIR_HOST)/bin/padjffs2 $(IMAGE_ROOTFS) -c 64 >>$@
174 endef
175
176 define Build/zyxel-tar-bz2
177 mkdir -p $@.tmp
178 mv $@ $@.tmp/$(word 2,$(1))
179 cp $(KDIR)/loader-$(DEVICE_NAME).uImage $@.tmp/$(word 1,$(1)).lzma.uImage
180 $(TAR) -cjf $@ -C $@.tmp .
181 rm -rf $@.tmp
182 endef
183
184 define Device/seama
185 KERNEL := kernel-bin | append-dtb | relocate-kernel | lzma
186 KERNEL_INITRAMFS := $$(KERNEL) | seama
187 IMAGES += factory.bin
188 SEAMA_MTDBLOCK := 1
189
190 # 64 bytes offset:
191 # - 28 bytes seama_header
192 # - 36 bytes of META data (4-bytes aligned)
193 IMAGE/default := append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | append-rootfs
194 IMAGE/sysupgrade.bin := $$(IMAGE/default) | seama | pad-rootfs | \
195 check-size | append-metadata
196 IMAGE/factory.bin := $$(IMAGE/default) | pad-rootfs -x 64 | seama | \
197 seama-seal | check-size
198 SEAMA_SIGNATURE :=
199 endef
200
201
202 define Device/8dev_carambola2
203 SOC := ar9331
204 DEVICE_VENDOR := 8devices
205 DEVICE_MODEL := Carambola2
206 DEVICE_PACKAGES := kmod-usb-chipidea2
207 IMAGE_SIZE := 16000k
208 SUPPORTED_DEVICES += carambola2
209 endef
210 TARGET_DEVICES += 8dev_carambola2
211
212 define Device/8dev_lima
213 SOC := qca9531
214 DEVICE_VENDOR := 8devices
215 DEVICE_MODEL := Lima
216 DEVICE_PACKAGES := kmod-usb2
217 IMAGE_SIZE := 15616k
218 SUPPORTED_DEVICES += lima
219 endef
220 TARGET_DEVICES += 8dev_lima
221
222 define Device/adtran_bsap1880
223 SOC := ar7161
224 DEVICE_VENDOR := Adtran/Bluesocket
225 DEVICE_PACKAGES += -swconfig -uboot-envtools fconfig
226 KERNEL := kernel-bin | append-dtb | lzma | pad-to $$(BLOCKSIZE)
227 KERNEL_INITRAMFS := kernel-bin | append-dtb
228 IMAGE_SIZE := 11200k
229 IMAGES += kernel.bin rootfs.bin
230 IMAGE/kernel.bin := append-kernel
231 IMAGE/rootfs.bin := append-rootfs | pad-rootfs | pad-to $$(BLOCKSIZE)
232 IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | \
233 check-size | sysupgrade-tar rootfs=$$$$@ | append-metadata
234 endef
235
236 define Device/adtran_bsap1800-v2
237 $(Device/adtran_bsap1880)
238 DEVICE_MODEL := BSAP-1800
239 DEVICE_VARIANT := v2
240 endef
241 TARGET_DEVICES += adtran_bsap1800-v2
242
243 define Device/adtran_bsap1840
244 $(Device/adtran_bsap1880)
245 DEVICE_MODEL := BSAP-1840
246 endef
247 TARGET_DEVICES += adtran_bsap1840
248
249 define Device/airtight_c-75
250 SOC := qca9550
251 DEVICE_VENDOR := AirTight Networks
252 DEVICE_MODEL := C-75
253 DEVICE_ALT0_VENDOR := Mojo Networks
254 DEVICE_ALT0_MODEL := C-75
255 DEVICE_ALT1_VENDOR := WatchGuard
256 DEVICE_ALT1_MODEL := AP320
257 DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct kmod-usb2
258 IMAGE_SIZE := 32320k
259 KERNEL_SIZE := 15936k
260 endef
261 TARGET_DEVICES += airtight_c-75
262
263 define Device/alfa-network_ap121f
264 SOC := ar9331
265 DEVICE_VENDOR := ALFA Network
266 DEVICE_MODEL := AP121F
267 DEVICE_PACKAGES := kmod-usb-chipidea2 kmod-usb-storage -swconfig
268 IMAGE_SIZE := 16064k
269 SUPPORTED_DEVICES += ap121f
270 endef
271 TARGET_DEVICES += alfa-network_ap121f
272
273 define Device/alfa-network_ap121fe
274 SOC := ar9331
275 DEVICE_VENDOR := ALFA Network
276 DEVICE_MODEL := AP121FE
277 DEVICE_PACKAGES := kmod-usb-chipidea2 kmod-usb-gadget-eth -swconfig
278 IMAGE_SIZE := 16064k
279 endef
280 TARGET_DEVICES += alfa-network_ap121fe
281
282 define Device/alfa-network_n2q
283 SOC := qca9531
284 DEVICE_VENDOR := ALFA Network
285 DEVICE_MODEL := N2Q
286 DEVICE_PACKAGES := kmod-i2c-gpio kmod-gpio-pcf857x kmod-usb2 \
287 kmod-usb-ledtrig-usbport rssileds
288 IMAGE_SIZE := 15872k
289 endef
290 TARGET_DEVICES += alfa-network_n2q
291
292 define Device/alfa-network_n5q
293 SOC := ar9344
294 DEVICE_VENDOR := ALFA Network
295 DEVICE_MODEL := N5Q
296 DEVICE_PACKAGES := rssileds
297 IMAGE_SIZE := 15872k
298 SUPPORTED_DEVICES += n5q
299 endef
300 TARGET_DEVICES += alfa-network_n5q
301
302 define Device/alfa-network_pi-wifi4
303 SOC := qca9531
304 DEVICE_VENDOR := ALFA Network
305 DEVICE_MODEL := Pi-WiFi4
306 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport -swconfig
307 IMAGE_SIZE := 15872k
308 endef
309 TARGET_DEVICES += alfa-network_pi-wifi4
310
311 define Device/alfa-network_r36a
312 SOC := qca9531
313 DEVICE_VENDOR := ALFA Network
314 DEVICE_MODEL := R36A
315 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
316 IMAGE_SIZE := 15872k
317 SUPPORTED_DEVICES += r36a
318 endef
319 TARGET_DEVICES += alfa-network_r36a
320
321 define Device/alfa-network_tube-2hq
322 SOC := qca9531
323 DEVICE_VENDOR := ALFA Network
324 DEVICE_MODEL := Tube-2HQ
325 DEVICE_PACKAGES := rssileds -swconfig
326 IMAGE_SIZE := 15872k
327 SUPPORTED_DEVICES += tube-2hq
328 endef
329 TARGET_DEVICES += alfa-network_tube-2hq
330
331 define Device/allnet_all-wap02860ac
332 $(Device/senao_loader_okli)
333 SOC := qca9558
334 DEVICE_VENDOR := ALLNET
335 DEVICE_MODEL := ALL-WAP02860AC
336 DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct
337 IMAGE_SIZE := 11584k
338 LOADER_FLASH_OFFS := 0x220000
339 SENAO_IMGNAME := senao-allwap02860ac
340 endef
341 TARGET_DEVICES += allnet_all-wap02860ac
342
343 define Device/araknis_an-300-ap-i-n
344 $(Device/senao_loader_okli)
345 SOC := ar9344
346 DEVICE_VENDOR := Araknis
347 DEVICE_MODEL := AN-300-AP-I-N
348 IMAGE_SIZE := 12096k
349 LOADER_FLASH_OFFS := 0x220000
350 SENAO_IMGNAME := senao-an300
351 endef
352 TARGET_DEVICES += araknis_an-300-ap-i-n
353
354 define Device/araknis_an-500-ap-i-ac
355 $(Device/senao_loader_okli)
356 SOC := qca9557
357 DEVICE_VENDOR := Araknis
358 DEVICE_MODEL := AN-500-AP-I-AC
359 DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct
360 IMAGE_SIZE := 11584k
361 LOADER_FLASH_OFFS := 0x220000
362 SENAO_IMGNAME := senao-generic-v1-an500
363 endef
364 TARGET_DEVICES += araknis_an-500-ap-i-ac
365
366 define Device/araknis_an-700-ap-i-ac
367 $(Device/senao_loader_okli)
368 SOC := qca9558
369 DEVICE_VENDOR := Araknis
370 DEVICE_MODEL := AN-700-AP-I-AC
371 DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct
372 IMAGE_SIZE := 11584k
373 LOADER_FLASH_OFFS := 0x220000
374 SENAO_IMGNAME := senao-generic-v1-an700
375 endef
376 TARGET_DEVICES += araknis_an-700-ap-i-ac
377
378 define Device/arduino_yun
379 SOC := ar9331
380 DEVICE_VENDOR := Arduino
381 DEVICE_MODEL := Yun
382 DEVICE_PACKAGES := kmod-usb-chipidea2 kmod-usb-ledtrig-usbport \
383 kmod-usb-storage block-mount -swconfig
384 IMAGE_SIZE := 15936k
385 SUPPORTED_DEVICES += arduino-yun
386 endef
387 TARGET_DEVICES += arduino_yun
388
389 define Device/aruba_ap-105
390 SOC := ar7161
391 DEVICE_VENDOR := Aruba
392 DEVICE_MODEL := AP-105
393 IMAGE_SIZE := 16000k
394 DEVICE_PACKAGES := kmod-i2c-gpio kmod-tpm-i2c-atmel
395 endef
396 TARGET_DEVICES += aruba_ap-105
397
398 define Device/asus_pl-ac56
399 SOC := qca9563
400 DEVICE_VENDOR := ASUS
401 DEVICE_MODEL := PL-AC56
402 DEVICE_VARIANT := A1
403 IMAGE_SIZE := 15488k
404 IMAGES += factory.bin
405 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
406 append-rootfs | pad-rootfs
407 DEVICE_PACKAGES := kmod-ath10k-ct-smallbuffers ath10k-firmware-qca988x-ct
408 endef
409 TARGET_DEVICES += asus_pl-ac56
410
411 define Device/asus_rp-ac51
412 SOC := qca9531
413 DEVICE_VENDOR := ASUS
414 DEVICE_MODEL := RP-AC51
415 IMAGE_SIZE := 16000k
416 IMAGES += factory.bin
417 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
418 append-rootfs | pad-rootfs
419 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9888-ct \
420 -swconfig
421 endef
422 TARGET_DEVICES += asus_rp-ac51
423
424 define Device/asus_rp-ac66
425 SOC := qca9563
426 DEVICE_VENDOR := ASUS
427 DEVICE_MODEL := RP-AC66
428 IMAGE_SIZE := 16000k
429 IMAGES += factory.bin
430 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
431 append-rootfs | pad-rootfs
432 DEVICE_PACKAGES := kmod-ath10k-ct-smallbuffers ath10k-firmware-qca988x-ct \
433 rssileds -swconfig
434 endef
435 TARGET_DEVICES += asus_rp-ac66
436
437 define Device/atheros_db120
438 $(Device/loader-okli-uimage)
439 SOC := ar9344
440 DEVICE_VENDOR := Atheros
441 DEVICE_MODEL := DB120
442 DEVICE_PACKAGES := kmod-usb2
443 IMAGE_SIZE := 7808k
444 SUPPORTED_DEVICES += db120
445 LOADER_FLASH_OFFS := 0x50000
446 KERNEL := kernel-bin | append-dtb | lzma | uImage lzma -M 0x4f4b4c49
447 IMAGES += factory.bin
448 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
449 append-rootfs | pad-rootfs | check-size | pad-to 6336k | \
450 append-loader-okli-uimage $(1) | pad-to 64k
451 endef
452 TARGET_DEVICES += atheros_db120
453
454 define Device/avm
455 DEVICE_VENDOR := AVM
456 KERNEL := kernel-bin | append-dtb | lzma | eva-image
457 KERNEL_INITRAMFS := $$(KERNEL)
458 IMAGE/sysupgrade.bin := append-kernel | pad-to 64k | \
459 append-squashfs-fakeroot-be | pad-to 256 | append-rootfs | pad-rootfs | \
460 check-size | append-metadata
461 DEVICE_PACKAGES := fritz-tffs
462 endef
463
464 define Device/avm_fritz1750e
465 $(Device/avm)
466 SOC := qca9556
467 IMAGE_SIZE := 15232k
468 DEVICE_MODEL := FRITZ!WLAN Repeater 1750E
469 DEVICE_PACKAGES += rssileds kmod-ath10k-ct-smallbuffers \
470 ath10k-firmware-qca988x-ct -swconfig
471 endef
472 TARGET_DEVICES += avm_fritz1750e
473
474 define Device/avm_fritz300e
475 $(Device/avm)
476 SOC := ar7242
477 IMAGE_SIZE := 15232k
478 DEVICE_MODEL := FRITZ!WLAN Repeater 300E
479 DEVICE_PACKAGES += rssileds -swconfig
480 SUPPORTED_DEVICES += fritz300e
481 endef
482 TARGET_DEVICES += avm_fritz300e
483
484 define Device/avm_fritz4020
485 $(Device/avm)
486 SOC := qca9561
487 IMAGE_SIZE := 15232k
488 DEVICE_MODEL := FRITZ!Box 4020
489 SUPPORTED_DEVICES += fritz4020
490 endef
491 TARGET_DEVICES += avm_fritz4020
492
493 define Device/avm_fritz450e
494 $(Device/avm)
495 SOC := qca9556
496 IMAGE_SIZE := 15232k
497 DEVICE_MODEL := FRITZ!WLAN Repeater 450E
498 SUPPORTED_DEVICES += fritz450e
499 endef
500 TARGET_DEVICES += avm_fritz450e
501
502 define Device/avm_fritzdvbc
503 $(Device/avm)
504 SOC := qca9556
505 IMAGE_SIZE := 15232k
506 DEVICE_MODEL := FRITZ!WLAN Repeater DVB-C
507 DEVICE_PACKAGES += rssileds kmod-ath10k-ct-smallbuffers \
508 ath10k-firmware-qca988x-ct -swconfig
509 endef
510 TARGET_DEVICES += avm_fritzdvbc
511
512 define Device/belkin_f9x-v2
513 $(Device/loader-okli-uimage)
514 SOC := qca9558
515 DEVICE_VENDOR := Belkin
516 IMAGE_SIZE := 14464k
517 DEVICE_PACKAGES += kmod-ath10k-ct ath10k-firmware-qca988x-ct kmod-usb2 \
518 kmod-usb3 kmod-usb-ledtrig-usbport
519 LOADER_FLASH_OFFS := 0x50000
520 KERNEL := kernel-bin | append-dtb | lzma | uImage lzma -M 0x4f4b4c49
521 IMAGES += factory.bin
522 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
523 append-rootfs | pad-rootfs | check-size | \
524 edimax-headers $$$$(EDIMAX_HEADER_MAGIC) $$$$(EDIMAX_HEADER_MODEL) | \
525 pad-to $$$$(BLOCKSIZE)
526 endef
527
528 define Device/belkin_f9j1108-v2
529 $(Device/belkin_f9x-v2)
530 DEVICE_MODEL := F9J1108 v2 (AC1750 DB Wi-Fi)
531 EDIMAX_HEADER_MAGIC := F9J1108v1
532 EDIMAX_HEADER_MODEL := BR-6679BAC
533 endef
534 TARGET_DEVICES += belkin_f9j1108-v2
535
536 define Device/belkin_f9k1115-v2
537 $(Device/belkin_f9x-v2)
538 DEVICE_MODEL := F9K1115 v2 (AC1750 DB Wi-Fi)
539 EDIMAX_HEADER_MAGIC := eDiMaX
540 EDIMAX_HEADER_MODEL := F9K1115V2
541 endef
542 TARGET_DEVICES += belkin_f9k1115-v2
543
544 define Device/buffalo_bhr-4grv
545 $(Device/buffalo_common)
546 SOC := ar7242
547 DEVICE_MODEL := BHR-4GRV
548 BUFFALO_PRODUCT := BHR-4GRV
549 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
550 IMAGE_SIZE := 32256k
551 SUPPORTED_DEVICES += wzr-hp-g450h
552 endef
553 TARGET_DEVICES += buffalo_bhr-4grv
554
555 define Device/buffalo_bhr-4grv2
556 SOC := qca9557
557 DEVICE_VENDOR := Buffalo
558 DEVICE_MODEL := BHR-4GRV2
559 IMAGE_SIZE := 16000k
560 endef
561 TARGET_DEVICES += buffalo_bhr-4grv2
562
563 define Device/buffalo_wzr_ar7161
564 $(Device/buffalo_common)
565 SOC := ar7161
566 BUFFALO_PRODUCT := WZR-HP-AG300H
567 DEVICE_PACKAGES := kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport \
568 kmod-leds-reset kmod-owl-loader
569 IMAGE_SIZE := 32320k
570 SUPPORTED_DEVICES += wzr-hp-ag300h
571 endef
572
573 define Device/buffalo_wzr-600dhp
574 $(Device/buffalo_wzr_ar7161)
575 DEVICE_MODEL := WZR-600DHP
576 endef
577 TARGET_DEVICES += buffalo_wzr-600dhp
578
579 define Device/buffalo_wzr-hp-ag300h
580 $(Device/buffalo_wzr_ar7161)
581 DEVICE_MODEL := WZR-HP-AG300H
582 endef
583 TARGET_DEVICES += buffalo_wzr-hp-ag300h
584
585 define Device/buffalo_wzr-hp-g300nh
586 $(Device/buffalo_common)
587 SOC := ar9132
588 BUFFALO_PRODUCT := WZR-HP-G300NH
589 BUFFALO_HWVER := 1
590 DEVICE_PACKAGES := kmod-gpio-cascade kmod-mux-gpio kmod-usb2 kmod-usb-ledtrig-usbport
591 BLOCKSIZE := 128k
592 IMAGE_SIZE := 32128k
593 SUPPORTED_DEVICES += wzr-hp-g300nh
594 endef
595
596 define Device/buffalo_wzr-hp-g300nh-rb
597 $(Device/buffalo_wzr-hp-g300nh)
598 DEVICE_MODEL := WZR-HP-G300NH (RTL8366RB switch)
599 endef
600 TARGET_DEVICES += buffalo_wzr-hp-g300nh-rb
601
602 define Device/buffalo_wzr-hp-g300nh-s
603 $(Device/buffalo_wzr-hp-g300nh)
604 DEVICE_MODEL := WZR-HP-G300NH (RTL8366S switch)
605 DEVICE_PACKAGES += kmod-switch-rtl8366rb
606 endef
607 TARGET_DEVICES += buffalo_wzr-hp-g300nh-s
608
609 define Device/buffalo_wzr-hp-g302h-a1a0
610 $(Device/buffalo_common)
611 SOC := ar7242
612 DEVICE_MODEL := WZR-HP-G302H
613 DEVICE_VARIANT := A1A0
614 BUFFALO_PRODUCT := WZR-HP-G302H
615 BUFFALO_HWVER := 4
616 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
617 IMAGE_SIZE := 32128k
618 SUPPORTED_DEVICES += wzr-hp-g300nh2
619 endef
620 TARGET_DEVICES += buffalo_wzr-hp-g302h-a1a0
621
622 define Device/buffalo_wzr-hp-g450h
623 $(Device/buffalo_common)
624 SOC := ar7242
625 DEVICE_MODEL := WZR-HP-G450H/WZR-450HP
626 BUFFALO_PRODUCT := WZR-HP-G450H
627 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
628 IMAGE_SIZE := 32256k
629 SUPPORTED_DEVICES += wzr-hp-g450h
630 endef
631 TARGET_DEVICES += buffalo_wzr-hp-g450h
632
633 define Device/comfast_cf-e110n-v2
634 SOC := qca9533
635 DEVICE_VENDOR := COMFAST
636 DEVICE_MODEL := CF-E110N
637 DEVICE_VARIANT := v2
638 DEVICE_PACKAGES := rssileds -swconfig -uboot-envtools
639 IMAGE_SIZE := 16192k
640 endef
641 TARGET_DEVICES += comfast_cf-e110n-v2
642
643 define Device/comfast_cf-e120a-v3
644 SOC := ar9344
645 DEVICE_VENDOR := COMFAST
646 DEVICE_MODEL := CF-E120A
647 DEVICE_VARIANT := v3
648 DEVICE_PACKAGES := rssileds -uboot-envtools
649 IMAGE_SIZE := 8000k
650 endef
651 TARGET_DEVICES += comfast_cf-e120a-v3
652
653 define Device/comfast_cf-e130n-v2
654 SOC := qca9531
655 DEVICE_VENDOR := COMFAST
656 DEVICE_MODEL := CF-E130N
657 DEVICE_VARIANT := v2
658 DEVICE_PACKAGES := rssileds -swconfig -uboot-envtools
659 IMAGE_SIZE := 7936k
660 endef
661 TARGET_DEVICES += comfast_cf-e130n-v2
662
663 define Device/comfast_cf-e313ac
664 SOC := qca9531
665 DEVICE_VENDOR := COMFAST
666 DEVICE_MODEL := CF-E313AC
667 DEVICE_PACKAGES := rssileds kmod-ath10k-ct-smallbuffers \
668 ath10k-firmware-qca9888-ct -swconfig -uboot-envtools
669 IMAGE_SIZE := 7936k
670 endef
671 TARGET_DEVICES += comfast_cf-e313ac
672
673 define Device/comfast_cf-e314n-v2
674 SOC := qca9531
675 DEVICE_VENDOR := COMFAST
676 DEVICE_MODEL := CF-E314N
677 DEVICE_VARIANT := v2
678 DEVICE_PACKAGES := rssileds
679 IMAGE_SIZE := 7936k
680 endef
681 TARGET_DEVICES += comfast_cf-e314n-v2
682
683 define Device/comfast_cf-e375ac
684 SOC := qca9563
685 DEVICE_VENDOR := COMFAST
686 DEVICE_MODEL := CF-E375AC
687 DEVICE_PACKAGES := kmod-ath10k-ct \
688 ath10k-firmware-qca9888-ct -uboot-envtools
689 IMAGE_SIZE := 16000k
690 endef
691 TARGET_DEVICES += comfast_cf-e375ac
692
693 define Device/comfast_cf-e5
694 SOC := qca9531
695 DEVICE_VENDOR := COMFAST
696 DEVICE_MODEL := CF-E5/E7
697 DEVICE_PACKAGES := rssileds kmod-usb2 kmod-usb-net-qmi-wwan -swconfig \
698 -uboot-envtools
699 IMAGE_SIZE := 16192k
700 endef
701 TARGET_DEVICES += comfast_cf-e5
702
703 define Device/comfast_cf-e560ac
704 SOC := qca9531
705 DEVICE_VENDOR := COMFAST
706 DEVICE_MODEL := CF-E560AC
707 DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca9888-ct
708 IMAGE_SIZE := 16128k
709 endef
710 TARGET_DEVICES += comfast_cf-e560ac
711
712 define Device/comfast_cf-ew72
713 SOC := qca9531
714 DEVICE_VENDOR := COMFAST
715 DEVICE_MODEL := CF-EW72
716 DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca9888-ct \
717 -uboot-envtools -swconfig
718 IMAGE_SIZE := 16192k
719 endef
720 TARGET_DEVICES += comfast_cf-ew72
721
722 define Device/comfast_cf-wr650ac-v1
723 SOC := qca9558
724 DEVICE_VENDOR := COMFAST
725 DEVICE_MODEL := CF-WR650AC
726 DEVICE_VARIANT := v1
727 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
728 IMAGE_SIZE := 16128k
729 endef
730 TARGET_DEVICES += comfast_cf-wr650ac-v1
731
732 define Device/comfast_cf-wr650ac-v2
733 SOC := qca9558
734 DEVICE_VENDOR := COMFAST
735 DEVICE_MODEL := CF-WR650AC
736 DEVICE_VARIANT := v2
737 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
738 IMAGE_SIZE := 16000k
739 endef
740 TARGET_DEVICES += comfast_cf-wr650ac-v2
741
742 define Device/comfast_cf-wr752ac-v1
743 SOC := qca9531
744 DEVICE_VENDOR := COMFAST
745 DEVICE_MODEL := CF-WR752AC
746 DEVICE_VARIANT := v1
747 DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca9888-ct \
748 -uboot-envtools
749 IMAGE_SIZE := 16192k
750 endef
751 TARGET_DEVICES += comfast_cf-wr752ac-v1
752
753 define Device/compex_wpj344-16m
754 SOC := ar9344
755 DEVICE_PACKAGES := kmod-usb2
756 IMAGE_SIZE := 16128k
757 DEVICE_VENDOR := Compex
758 DEVICE_MODEL := WPJ344
759 DEVICE_VARIANT := 16M
760 SUPPORTED_DEVICES += wpj344
761 IMAGES += cpximg-6a08.bin
762 IMAGE/cpximg-6a08.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | mkmylofw_16m 0x690 3
763 endef
764 TARGET_DEVICES += compex_wpj344-16m
765
766 define Device/compex_wpj531-16m
767 SOC := qca9531
768 DEVICE_PACKAGES := kmod-usb2
769 IMAGE_SIZE := 16128k
770 DEVICE_VENDOR := Compex
771 DEVICE_MODEL := WPJ531
772 DEVICE_VARIANT := 16M
773 SUPPORTED_DEVICES += wpj531
774 IMAGES += cpximg-7a03.bin cpximg-7a04.bin cpximg-7a06.bin cpximg-7a07.bin
775 IMAGE/cpximg-7a03.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | mkmylofw_16m 0x68a 2
776 IMAGE/cpximg-7a04.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | mkmylofw_16m 0x693 3
777 IMAGE/cpximg-7a06.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | mkmylofw_16m 0x693 3
778 IMAGE/cpximg-7a07.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | mkmylofw_16m 0x693 3
779 endef
780 TARGET_DEVICES += compex_wpj531-16m
781
782 define Device/compex_wpj558-16m
783 SOC := qca9558
784 IMAGE_SIZE := 16128k
785 DEVICE_VENDOR := Compex
786 DEVICE_MODEL := WPJ558
787 DEVICE_VARIANT := 16M
788 SUPPORTED_DEVICES += wpj558
789 IMAGES += cpximg-6a07.bin
790 IMAGE/cpximg-6a07.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
791 append-rootfs | pad-rootfs | mkmylofw_16m 0x691 3
792 DEVICE_PACKAGES := kmod-gpio-beeper
793 endef
794 TARGET_DEVICES += compex_wpj558-16m
795
796 define Device/compex_wpj563
797 SOC := qca9563
798 DEVICE_PACKAGES := kmod-usb2 kmod-usb3
799 IMAGE_SIZE := 16128k
800 DEVICE_VENDOR := Compex
801 DEVICE_MODEL := WPJ563
802 SUPPORTED_DEVICES += wpj563
803 IMAGES += cpximg-7a02.bin
804 IMAGE/cpximg-7a02.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | mkmylofw_16m 0x694 2
805 endef
806 TARGET_DEVICES += compex_wpj563
807
808 define Device/devolo_dlan-pro-1200plus-ac
809 SOC := ar9344
810 DEVICE_VENDOR := Devolo
811 DEVICE_MODEL := dLAN pro 1200+ WiFi ac
812 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
813 IMAGE_SIZE := 15872k
814 endef
815 TARGET_DEVICES += devolo_dlan-pro-1200plus-ac
816
817 define Device/devolo_dvl1200e
818 SOC := qca9558
819 DEVICE_VENDOR := devolo
820 DEVICE_MODEL := WiFi pro 1200e
821 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
822 IMAGE_SIZE := 15936k
823 endef
824 TARGET_DEVICES += devolo_dvl1200e
825
826 define Device/devolo_dvl1200i
827 SOC := qca9558
828 DEVICE_VENDOR := devolo
829 DEVICE_MODEL := WiFi pro 1200i
830 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
831 IMAGE_SIZE := 15936k
832 endef
833 TARGET_DEVICES += devolo_dvl1200i
834
835 define Device/devolo_dvl1750c
836 SOC := qca9558
837 DEVICE_VENDOR := devolo
838 DEVICE_MODEL := WiFi pro 1750c
839 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
840 IMAGE_SIZE := 15936k
841 endef
842 TARGET_DEVICES += devolo_dvl1750c
843
844 define Device/devolo_dvl1750e
845 SOC := qca9558
846 DEVICE_VENDOR := devolo
847 DEVICE_MODEL := WiFi pro 1750e
848 DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
849 IMAGE_SIZE := 15936k
850 endef
851 TARGET_DEVICES += devolo_dvl1750e
852
853 define Device/devolo_dvl1750i
854 SOC := qca9558
855 DEVICE_VENDOR := devolo
856 DEVICE_MODEL := WiFi pro 1750i
857 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
858 IMAGE_SIZE := 15936k
859 endef
860 TARGET_DEVICES += devolo_dvl1750i
861
862 define Device/devolo_dvl1750x
863 SOC := qca9558
864 DEVICE_VENDOR := devolo
865 DEVICE_MODEL := WiFi pro 1750x
866 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
867 IMAGE_SIZE := 15936k
868 endef
869 TARGET_DEVICES += devolo_dvl1750x
870
871 define Device/devolo_magic-2-wifi
872 SOC := ar9344
873 DEVICE_VENDOR := Devolo
874 DEVICE_MODEL := Magic 2 WiFi
875 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
876 IMAGE_SIZE := 15872k
877 endef
878 TARGET_DEVICES += devolo_magic-2-wifi
879
880 define Device/dlink_dap-13xx
881 SOC := qca9533
882 DEVICE_VENDOR := D-Link
883 DEVICE_PACKAGES += rssileds
884 IMAGE_SIZE := 7936k
885 IMAGES += factory.bin
886 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
887 append-rootfs | pad-rootfs | check-size | mkdapimg2 0xE0000
888 endef
889
890 define Device/dlink_dap-1330-a1
891 $(Device/dlink_dap-13xx)
892 DEVICE_MODEL := DAP-1330
893 DEVICE_VARIANT := A1
894 DAP_SIGNATURE := HONEYBEE-FIRMWARE-DAP-1330
895 SUPPORTED_DEVICES += dap-1330-a1
896 endef
897 TARGET_DEVICES += dlink_dap-1330-a1
898
899 define Device/dlink_dap-1365-a1
900 $(Device/dlink_dap-13xx)
901 DEVICE_MODEL := DAP-1365
902 DEVICE_VARIANT := A1
903 DAP_SIGNATURE := HONEYBEE-FIRMWARE-DAP-1365
904 endef
905 TARGET_DEVICES += dlink_dap-1365-a1
906
907 define Device/dlink_dap-2xxx
908 IMAGES += factory.img
909 IMAGE/factory.img := append-kernel | pad-offset 6144k 160 | \
910 append-rootfs | wrgg-pad-rootfs | mkwrggimg | check-size
911 IMAGE/sysupgrade.bin := append-kernel | mkwrggimg | \
912 pad-to $$$$(BLOCKSIZE) | append-rootfs | wrgg-pad-rootfs | \
913 check-size | append-metadata
914 KERNEL := kernel-bin | append-dtb | relocate-kernel | lzma
915 KERNEL_INITRAMFS := $$(KERNEL) | mkwrggimg
916 endef
917
918 define Device/dlink_dap-2230-a1
919 $(Device/dlink_dap-2xxx)
920 SOC := qca9533
921 DEVICE_VENDOR := D-Link
922 DEVICE_MODEL := DAP-2230
923 DEVICE_VARIANT := A1
924 IMAGE_SIZE := 15232k
925 DAP_SIGNATURE := wapn31_dkbs_dap2230
926 endef
927 TARGET_DEVICES += dlink_dap-2230-a1
928
929 define Device/dlink_dap-2660-a1
930 $(Device/dlink_dap-2xxx)
931 SOC := qca9557
932 DEVICE_VENDOR := D-Link
933 DEVICE_MODEL := DAP-2660
934 DEVICE_VARIANT := A1
935 DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct
936 IMAGE_SIZE := 15232k
937 DAP_SIGNATURE := wapac09_dkbs_dap2660
938 endef
939 TARGET_DEVICES += dlink_dap-2660-a1
940
941 define Device/dlink_dap-2680-a1
942 $(Device/dlink_dap-2xxx)
943 SOC := qca9558
944 DEVICE_VENDOR := D-Link
945 DEVICE_MODEL := DAP-2680
946 DEVICE_VARIANT := A1
947 DEVICE_PACKAGES := ath10k-firmware-qca9984-ct kmod-ath10k-ct
948 IMAGE_SIZE := 15232k
949 DAP_SIGNATURE := wapac36_dkbs_dap2680
950 endef
951 TARGET_DEVICES += dlink_dap-2680-a1
952
953 define Device/dlink_dap-2695-a1
954 $(Device/dlink_dap-2xxx)
955 SOC := qca9558
956 DEVICE_VENDOR := D-Link
957 DEVICE_MODEL := DAP-2695
958 DEVICE_VARIANT := A1
959 DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct
960 IMAGE_SIZE := 15360k
961 DAP_SIGNATURE := wapac02_dkbs_dap2695
962 SUPPORTED_DEVICES += dap-2695-a1
963 endef
964 TARGET_DEVICES += dlink_dap-2695-a1
965
966 define Device/dlink_dap-3320-a1
967 $(Device/dlink_dap-2xxx)
968 SOC := qca9533
969 DEVICE_VENDOR := D-Link
970 DEVICE_MODEL := DAP-3320
971 DEVICE_VARIANT := A1
972 IMAGE_SIZE := 15296k
973 DAP_SIGNATURE := wapn29_dkbs_dap3320
974 endef
975 TARGET_DEVICES += dlink_dap-3320-a1
976
977 define Device/dlink_dap-3662-a1
978 $(Device/dlink_dap-2xxx)
979 SOC := qca9558
980 DEVICE_VENDOR := D-Link
981 DEVICE_MODEL := DAP-3662
982 DEVICE_VARIANT := A1
983 DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct
984 IMAGE_SIZE := 15296k
985 DAP_SIGNATURE := wapac11_dkbs_dap3662
986 endef
987 TARGET_DEVICES += dlink_dap-3662-a1
988
989 define Device/dlink_dch-g020-a1
990 SOC := qca9531
991 DEVICE_VENDOR := D-Link
992 DEVICE_MODEL := DCH-G020
993 DEVICE_VARIANT := A1
994 DEVICE_PACKAGES := kmod-gpio-pca953x kmod-i2c-gpio kmod-usb2 kmod-usb-acm
995 IMAGES += factory.bin
996 IMAGE_SIZE := 14784k
997 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
998 append-rootfs | pad-rootfs | check-size | mkdapimg2 0x20000
999 DAP_SIGNATURE := HONEYBEE-FIRMWARE-DCH-G020
1000 endef
1001 TARGET_DEVICES += dlink_dch-g020-a1
1002
1003 define Device/dlink_dir-505
1004 SOC := ar9330
1005 DEVICE_VENDOR := D-Link
1006 DEVICE_MODEL := DIR-505
1007 IMAGE_SIZE := 7680k
1008 DEVICE_PACKAGES := kmod-usb-chipidea2
1009 SUPPORTED_DEVICES += dir-505-a1
1010 endef
1011 TARGET_DEVICES += dlink_dir-505
1012
1013 define Device/dlink_dir-825-b1
1014 SOC := ar7161
1015 DEVICE_VENDOR := D-Link
1016 DEVICE_MODEL := DIR-825
1017 DEVICE_VARIANT := B1
1018 IMAGE_SIZE := 6208k
1019 IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | \
1020 check-size | append-metadata
1021 DEVICE_PACKAGES := kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport \
1022 kmod-leds-reset kmod-owl-loader kmod-switch-rtl8366s
1023 SUPPORTED_DEVICES += dir-825-b1
1024 endef
1025 TARGET_DEVICES += dlink_dir-825-b1
1026
1027 define Device/dlink_dir-825-c1
1028 SOC := ar9344
1029 DEVICE_VENDOR := D-Link
1030 DEVICE_MODEL := DIR-825
1031 DEVICE_VARIANT := C1
1032 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport kmod-leds-reset \
1033 kmod-owl-loader
1034 SUPPORTED_DEVICES += dir-825-c1
1035 IMAGE_SIZE := 15936k
1036 IMAGES := factory.bin sysupgrade.bin
1037 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | \
1038 pad-rootfs
1039 IMAGE/factory.bin := $$(IMAGE/default) | pad-offset $$$$(IMAGE_SIZE) 26 | \
1040 append-string 00DB120AR9344-RT-101214-00 | check-size
1041 IMAGE/sysupgrade.bin := $$(IMAGE/default) | check-size | append-metadata
1042 endef
1043 TARGET_DEVICES += dlink_dir-825-c1
1044
1045 define Device/dlink_dir-835-a1
1046 SOC := ar9344
1047 DEVICE_VENDOR := D-Link
1048 DEVICE_MODEL := DIR-835
1049 DEVICE_VARIANT := A1
1050 DEVICE_PACKAGES := kmod-usb2 kmod-leds-reset kmod-owl-loader
1051 SUPPORTED_DEVICES += dir-835-a1
1052 IMAGE_SIZE := 15936k
1053 IMAGES := factory.bin sysupgrade.bin
1054 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | \
1055 pad-rootfs
1056 IMAGE/factory.bin := $$(IMAGE/default) | pad-offset $$$$(IMAGE_SIZE) 26 | \
1057 append-string 00DB120AR9344-RT-101214-00 | check-size
1058 IMAGE/sysupgrade.bin := $$(IMAGE/default) | check-size | append-metadata
1059 endef
1060 TARGET_DEVICES += dlink_dir-835-a1
1061
1062 define Device/dlink_dir-842-c
1063 SOC := qca9563
1064 DEVICE_VENDOR := D-Link
1065 DEVICE_MODEL := DIR-842
1066 KERNEL := kernel-bin | append-dtb | relocate-kernel | lzma
1067 KERNEL_INITRAMFS := $$(KERNEL) | seama
1068 IMAGES += factory.bin
1069 SEAMA_MTDBLOCK := 5
1070 SEAMA_SIGNATURE := wrgac65_dlink.2015_dir842
1071 # 64 bytes offset:
1072 # - 28 bytes seama_header
1073 # - 36 bytes of META data (4-bytes aligned)
1074 IMAGE/default := append-kernel | uImage lzma | \
1075 pad-offset $$$$(BLOCKSIZE) 64 | append-rootfs
1076 IMAGE/sysupgrade.bin := $$(IMAGE/default) | seama | pad-rootfs | \
1077 check-size | append-metadata
1078 IMAGE/factory.bin := $$(IMAGE/default) | pad-rootfs -x 64 | seama | \
1079 seama-seal | check-size
1080 IMAGE_SIZE := 15680k
1081 endef
1082
1083 define Device/dlink_dir-842-c1
1084 $(Device/dlink_dir-842-c)
1085 DEVICE_VARIANT := C1
1086 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9888-ct
1087 endef
1088 TARGET_DEVICES += dlink_dir-842-c1
1089
1090 define Device/dlink_dir-842-c2
1091 $(Device/dlink_dir-842-c)
1092 DEVICE_VARIANT := C2
1093 DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca9888-ct
1094 endef
1095 TARGET_DEVICES += dlink_dir-842-c2
1096
1097 define Device/dlink_dir-842-c3
1098 $(Device/dlink_dir-842-c)
1099 DEVICE_VARIANT := C3
1100 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9888-ct
1101 endef
1102 TARGET_DEVICES += dlink_dir-842-c3
1103
1104 define Device/dlink_dir-859-a1
1105 $(Device/seama)
1106 SOC := qca9563
1107 DEVICE_VENDOR := D-Link
1108 DEVICE_MODEL := DIR-859
1109 DEVICE_VARIANT := A1
1110 IMAGE_SIZE := 15872k
1111 DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct-smallbuffers ath10k-firmware-qca988x-ct
1112 SEAMA_SIGNATURE := wrgac37_dlink.2013gui_dir859
1113 endef
1114 TARGET_DEVICES += dlink_dir-859-a1
1115
1116 define Device/elecom_wrc-1750ghbk2-i
1117 SOC := qca9563
1118 DEVICE_VENDOR := ELECOM
1119 DEVICE_MODEL := WRC-1750GHBK2-I/C
1120 IMAGE_SIZE := 15808k
1121 ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
1122 ARTIFACTS := initramfs-factory.bin
1123 ARTIFACT/initramfs-factory.bin := append-image initramfs-kernel.bin | \
1124 pad-to 2 | edimax-header -b -s CSYS -m RN68 -f 0x70000 -S 0x01100000 | \
1125 elecom-product-header WRC-1750GHBK2 | check-size
1126 endif
1127 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
1128 endef
1129 TARGET_DEVICES += elecom_wrc-1750ghbk2-i
1130
1131 define Device/elecom_wrc-300ghbk2-i
1132 SOC := qca9563
1133 DEVICE_VENDOR := ELECOM
1134 DEVICE_MODEL := WRC-300GHBK2-I
1135 IMAGE_SIZE := 7616k
1136 ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
1137 ARTIFACTS := initramfs-factory.bin
1138 ARTIFACT/initramfs-factory.bin := append-image initramfs-kernel.bin | \
1139 pad-to 2 | edimax-header -b -s CSYS -m RN51 -f 0x70000 -S 0x01100000 | \
1140 elecom-product-header WRC-300GHBK2-I | check-size
1141 endif
1142 endef
1143 TARGET_DEVICES += elecom_wrc-300ghbk2-i
1144
1145 define Device/embeddedwireless_balin
1146 SOC := ar9344
1147 DEVICE_VENDOR := Embedded Wireless
1148 DEVICE_MODEL := Balin
1149 DEVICE_PACKAGES := kmod-usb-chipidea2
1150 IMAGE_SIZE := 16000k
1151 endef
1152 TARGET_DEVICES += embeddedwireless_balin
1153
1154 define Device/embeddedwireless_dorin
1155 SOC := ar9331
1156 DEVICE_VENDOR := Embedded Wireless
1157 DEVICE_MODEL := Dorin
1158 DEVICE_PACKAGES := kmod-usb-chipidea2
1159 IMAGE_SIZE := 16000k
1160 endef
1161 TARGET_DEVICES += embeddedwireless_dorin
1162
1163 define Device/engenius_eap1200h
1164 $(Device/senao_loader_okli)
1165 SOC := qca9557
1166 DEVICE_VENDOR := EnGenius
1167 DEVICE_MODEL := EAP1200H
1168 DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct
1169 IMAGE_SIZE := 11584k
1170 LOADER_FLASH_OFFS := 0x220000
1171 SENAO_IMGNAME := ar71xx-generic-eap1200h
1172 endef
1173 TARGET_DEVICES += engenius_eap1200h
1174
1175 define Device/engenius_eap300-v2
1176 $(Device/senao_loader_okli)
1177 SOC := ar9341
1178 DEVICE_VENDOR := EnGenius
1179 DEVICE_MODEL := EAP300
1180 DEVICE_VARIANT := v2
1181 IMAGE_SIZE := 12096k
1182 LOADER_FLASH_OFFS := 0x220000
1183 SENAO_IMGNAME := senao-eap300v2
1184 endef
1185 TARGET_DEVICES += engenius_eap300-v2
1186
1187 define Device/engenius_eap600
1188 $(Device/senao_loader_okli)
1189 SOC := ar9344
1190 DEVICE_VENDOR := EnGenius
1191 DEVICE_MODEL := EAP600
1192 IMAGE_SIZE := 12096k
1193 LOADER_FLASH_OFFS := 0x220000
1194 SENAO_IMGNAME := senao-eap600
1195 endef
1196 TARGET_DEVICES += engenius_eap600
1197
1198 define Device/engenius_ecb1200
1199 SOC := qca9557
1200 DEVICE_VENDOR := EnGenius
1201 DEVICE_MODEL := ECB1200
1202 DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct
1203 IMAGE_SIZE := 15680k
1204 IMAGES += factory.bin
1205 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
1206 append-rootfs | pad-rootfs | check-size | \
1207 senao-header -r 0x101 -p 0x6e -t 2
1208 endef
1209 TARGET_DEVICES += engenius_ecb1200
1210
1211 define Device/engenius_ecb1750
1212 SOC := qca9558
1213 DEVICE_VENDOR := EnGenius
1214 DEVICE_MODEL := ECB1750
1215 DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct
1216 IMAGE_SIZE := 15680k
1217 IMAGES += factory.bin
1218 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
1219 append-rootfs | pad-rootfs | check-size | \
1220 senao-header -r 0x101 -p 0x6d -t 2
1221 endef
1222 TARGET_DEVICES += engenius_ecb1750
1223
1224 define Device/engenius_ecb600
1225 $(Device/senao_loader_okli)
1226 SOC := ar9344
1227 DEVICE_VENDOR := EnGenius
1228 DEVICE_MODEL := ECB600
1229 IMAGE_SIZE := 12096k
1230 LOADER_FLASH_OFFS := 0x220000
1231 SENAO_IMGNAME := senao-ecb600
1232 endef
1233 TARGET_DEVICES += engenius_ecb600
1234
1235 define Device/engenius_ens202ext-v1
1236 $(Device/senao_loader_okli)
1237 SOC := ar9341
1238 DEVICE_VENDOR := EnGenius
1239 DEVICE_MODEL := ENS202EXT
1240 DEVICE_VARIANT := v1
1241 DEVICE_PACKAGES := rssileds
1242 IMAGE_SIZE := 12096k
1243 LOADER_FLASH_OFFS := 0x220000
1244 SENAO_IMGNAME := senao-ens202ext
1245 endef
1246 TARGET_DEVICES += engenius_ens202ext-v1
1247
1248 define Device/engenius_enstationac-v1
1249 $(Device/senao_loader_okli)
1250 SOC := qca9557
1251 DEVICE_VENDOR := EnGenius
1252 DEVICE_MODEL := EnStationAC
1253 DEVICE_VARIANT := v1
1254 DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct rssileds
1255 IMAGE_SIZE := 11584k
1256 LOADER_FLASH_OFFS := 0x220000
1257 SENAO_IMGNAME := ar71xx-generic-enstationac
1258 endef
1259 TARGET_DEVICES += engenius_enstationac-v1
1260
1261 define Device/engenius_epg5000
1262 SOC := qca9558
1263 DEVICE_VENDOR := EnGenius
1264 DEVICE_MODEL := EPG5000
1265 DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct kmod-usb2
1266 IMAGE_SIZE := 14656k
1267 IMAGES += factory.dlf
1268 IMAGE/factory.dlf := append-kernel | pad-to $$$$(BLOCKSIZE) | \
1269 append-rootfs | pad-rootfs | check-size | \
1270 senao-header -r 0x101 -p 0x71 -t 2
1271 SUPPORTED_DEVICES += epg5000
1272 endef
1273 TARGET_DEVICES += engenius_epg5000
1274
1275 define Device/engenius_ews511ap
1276 SOC := qca9531
1277 DEVICE_VENDOR := EnGenius
1278 DEVICE_MODEL := EWS511AP
1279 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9887-ct
1280 IMAGE_SIZE := 16000k
1281 endef
1282 TARGET_DEVICES += engenius_ews511ap
1283
1284 define Device/enterasys_ws-ap3705i
1285 SOC := ar9344
1286 DEVICE_VENDOR := Enterasys
1287 DEVICE_MODEL := WS-AP3705i
1288 IMAGE_SIZE := 30528k
1289 endef
1290 TARGET_DEVICES += enterasys_ws-ap3705i
1291
1292 define Device/etactica_eg200
1293 SOC := ar9331
1294 DEVICE_VENDOR := eTactica
1295 DEVICE_MODEL := EG200
1296 DEVICE_PACKAGES := kmod-usb-chipidea2 kmod-ledtrig-oneshot \
1297 kmod-usb-serial-ftdi kmod-usb-storage kmod-fs-ext4
1298 IMAGE_SIZE := 16000k
1299 SUPPORTED_DEVICES += rme-eg200
1300 endef
1301 TARGET_DEVICES += etactica_eg200
1302
1303 define Device/extreme-networks_ws-ap3805i
1304 SOC := qca9557
1305 BLOCKSIZE := 256k
1306 DEVICE_VENDOR := Extreme Networks
1307 DEVICE_MODEL := WS-AP3805i
1308 DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct
1309 IMAGE_SIZE := 29440k
1310 endef
1311 TARGET_DEVICES += extreme-networks_ws-ap3805i
1312
1313 define Device/glinet_6408
1314 $(Device/tplink-8mlzma)
1315 SOC := ar9331
1316 DEVICE_VENDOR := GL.iNet
1317 DEVICE_MODEL := 6408
1318 DEVICE_PACKAGES := kmod-usb-chipidea2
1319 IMAGE_SIZE := 8000k
1320 TPLINK_HWID := 0x08000001
1321 IMAGES := sysupgrade.bin
1322 SUPPORTED_DEVICES += gl-inet
1323 endef
1324 TARGET_DEVICES += glinet_6408
1325
1326 define Device/glinet_6416
1327 $(Device/tplink-16mlzma)
1328 SOC := ar9331
1329 DEVICE_VENDOR := GL.iNet
1330 DEVICE_MODEL := 6416
1331 DEVICE_PACKAGES := kmod-usb-chipidea2
1332 IMAGE_SIZE := 16192k
1333 TPLINK_HWID := 0x08000001
1334 IMAGES := sysupgrade.bin
1335 SUPPORTED_DEVICES += gl-inet
1336 endef
1337 TARGET_DEVICES += glinet_6416
1338
1339 define Device/glinet_gl-ar150
1340 SOC := ar9330
1341 DEVICE_VENDOR := GL.iNet
1342 DEVICE_MODEL := GL-AR150
1343 DEVICE_PACKAGES := kmod-usb-chipidea2
1344 IMAGE_SIZE := 16000k
1345 SUPPORTED_DEVICES += gl-ar150
1346 endef
1347 TARGET_DEVICES += glinet_gl-ar150
1348
1349 define Device/glinet_gl-ar300m-common-nor
1350 SOC := qca9531
1351 DEVICE_VENDOR := GL.iNet
1352 DEVICE_PACKAGES := kmod-usb2
1353 IMAGE_SIZE := 16000k
1354 SUPPORTED_DEVICES += gl-ar300m
1355 endef
1356
1357 define Device/glinet_gl-ar300m-lite
1358 $(Device/glinet_gl-ar300m-common-nor)
1359 DEVICE_MODEL := GL-AR300M
1360 DEVICE_VARIANT := Lite
1361 endef
1362 TARGET_DEVICES += glinet_gl-ar300m-lite
1363
1364 define Device/glinet_gl-ar300m16
1365 $(Device/glinet_gl-ar300m-common-nor)
1366 DEVICE_MODEL := GL-AR300M16
1367 endef
1368 TARGET_DEVICES += glinet_gl-ar300m16
1369
1370 define Device/glinet_gl-ar750
1371 SOC := qca9531
1372 DEVICE_VENDOR := GL.iNet
1373 DEVICE_MODEL := GL-AR750
1374 DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca9887-ct
1375 IMAGE_SIZE := 16000k
1376 SUPPORTED_DEVICES += gl-ar750
1377 endef
1378 TARGET_DEVICES += glinet_gl-ar750
1379
1380 define Device/glinet_gl-mifi
1381 SOC := ar9331
1382 DEVICE_VENDOR := GL.iNET
1383 DEVICE_MODEL := GL-MiFi
1384 DEVICE_PACKAGES := kmod-usb-chipidea2
1385 IMAGE_SIZE := 16000k
1386 SUPPORTED_DEVICES += gl-mifi
1387 endef
1388 TARGET_DEVICES += glinet_gl-mifi
1389
1390 define Device/glinet_gl-usb150
1391 SOC := ar9331
1392 DEVICE_VENDOR := GL.iNET
1393 DEVICE_MODEL := GL-USB150
1394 IMAGE_SIZE := 16000k
1395 SUPPORTED_DEVICES += gl-usb150
1396 endef
1397 TARGET_DEVICES += glinet_gl-usb150
1398
1399 define Device/glinet_gl-x300b
1400 SOC := qca9531
1401 DEVICE_VENDOR := GL.iNet
1402 DEVICE_MODEL := GL-X300B
1403 DEVICE_PACKAGES := kmod-usb2
1404 IMAGE_SIZE := 16000k
1405 endef
1406 TARGET_DEVICES += glinet_gl-x300b
1407
1408 define Device/glinet_gl-x750
1409 SOC := qca9531
1410 DEVICE_VENDOR := GL.iNet
1411 DEVICE_MODEL := GL-X750
1412 DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca9887-ct
1413 IMAGE_SIZE := 16000k
1414 endef
1415 TARGET_DEVICES += glinet_gl-x750
1416
1417 define Device/hak5_lan-turtle
1418 $(Device/tplink-16mlzma)
1419 SOC := ar9331
1420 DEVICE_VENDOR := Hak5
1421 DEVICE_MODEL := LAN Turtle
1422 TPLINK_HWID := 0x5348334c
1423 IMAGES := sysupgrade.bin
1424 DEVICE_PACKAGES := kmod-usb-chipidea2 -iwinfo -kmod-ath9k -swconfig \
1425 -uboot-envtools -wpad-basic-wolfssl
1426 SUPPORTED_DEVICES += lan-turtle
1427 endef
1428 TARGET_DEVICES += hak5_lan-turtle
1429
1430 define Device/hak5_packet-squirrel
1431 $(Device/tplink-16mlzma)
1432 SOC := ar9331
1433 DEVICE_VENDOR := Hak5
1434 DEVICE_MODEL := Packet Squirrel
1435 TPLINK_HWID := 0x5351524c
1436 IMAGES := sysupgrade.bin
1437 DEVICE_PACKAGES := kmod-usb-chipidea2 -iwinfo -kmod-ath9k -swconfig \
1438 -uboot-envtools -wpad-basic-wolfssl
1439 SUPPORTED_DEVICES += packet-squirrel
1440 endef
1441 TARGET_DEVICES += hak5_packet-squirrel
1442
1443 define Device/hak5_wifi-pineapple-nano
1444 $(Device/tplink-16mlzma)
1445 SOC := ar9331
1446 DEVICE_VENDOR := Hak5
1447 DEVICE_MODEL := WiFi Pineapple NANO
1448 TPLINK_HWID := 0x4e414e4f
1449 IMAGES := sysupgrade.bin
1450 DEVICE_PACKAGES := kmod-ath9k-htc kmod-usb-chipidea2 kmod-usb-storage \
1451 -swconfig -uboot-envtools
1452 SUPPORTED_DEVICES += wifi-pineapple-nano
1453 endef
1454 TARGET_DEVICES += hak5_wifi-pineapple-nano
1455
1456 define Device/hiwifi_hc6361
1457 SOC := ar9331
1458 DEVICE_VENDOR := HiWiFi
1459 DEVICE_MODEL := HC6361
1460 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-chipidea2 kmod-usb-storage \
1461 kmod-fs-ext4 kmod-nls-iso8859-1 e2fsprogs
1462 BOARDNAME := HiWiFi-HC6361
1463 KERNEL := kernel-bin | append-dtb | lzma | uImage lzma | pad-to $$(BLOCKSIZE)
1464 IMAGE_SIZE := 16128k
1465 endef
1466 TARGET_DEVICES += hiwifi_hc6361
1467
1468 define Device/iodata_etg3-r
1469 SOC := ar9342
1470 DEVICE_VENDOR := I-O DATA
1471 DEVICE_MODEL := ETG3-R
1472 IMAGE_SIZE := 7680k
1473 DEVICE_PACKAGES := -iwinfo -kmod-ath9k -wpad-basic-wolfssl
1474 endef
1475 TARGET_DEVICES += iodata_etg3-r
1476
1477 define Device/iodata_wn-ac1167dgr
1478 SOC := qca9557
1479 DEVICE_VENDOR := I-O DATA
1480 DEVICE_MODEL := WN-AC1167DGR
1481 IMAGE_SIZE := 14656k
1482 IMAGES += factory.bin
1483 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
1484 append-rootfs | pad-rootfs | check-size | \
1485 senao-header -r 0x30a -p 0x61 -t 2
1486 DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
1487 endef
1488 TARGET_DEVICES += iodata_wn-ac1167dgr
1489
1490 define Device/iodata_wn-ac1600dgr
1491 SOC := qca9557
1492 DEVICE_VENDOR := I-O DATA
1493 DEVICE_MODEL := WN-AC1600DGR
1494 IMAGE_SIZE := 14656k
1495 IMAGES += factory.bin
1496 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
1497 append-rootfs | pad-rootfs | check-size | \
1498 senao-header -r 0x30a -p 0x60 -t 2 -v 200
1499 DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
1500 endef
1501 TARGET_DEVICES += iodata_wn-ac1600dgr
1502
1503 define Device/iodata_wn-ac1600dgr2
1504 SOC := qca9557
1505 DEVICE_VENDOR := I-O DATA
1506 DEVICE_MODEL := WN-AC1600DGR2/DGR3
1507 IMAGE_SIZE := 14656k
1508 IMAGES += dgr2-dgr3-factory.bin
1509 IMAGE/dgr2-dgr3-factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
1510 append-rootfs | pad-rootfs | check-size | \
1511 senao-header -r 0x30a -p 0x60 -t 2 -v 200
1512 DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
1513 endef
1514 TARGET_DEVICES += iodata_wn-ac1600dgr2
1515
1516 define Device/iodata_wn-ag300dgr
1517 SOC := ar1022
1518 DEVICE_VENDOR := I-O DATA
1519 DEVICE_MODEL := WN-AG300DGR
1520 IMAGE_SIZE := 15424k
1521 IMAGES += factory.bin
1522 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
1523 append-rootfs | pad-rootfs | check-size | \
1524 senao-header -r 0x30a -p 0x47 -t 2
1525 DEVICE_PACKAGES := kmod-usb2
1526 endef
1527 TARGET_DEVICES += iodata_wn-ag300dgr
1528
1529 define Device/jjplus_ja76pf2
1530 SOC := ar7161
1531 DEVICE_VENDOR := jjPlus
1532 DEVICE_MODEL := JA76PF2
1533 DEVICE_PACKAGES += -kmod-ath9k -swconfig -wpad-basic-wolfssl -uboot-envtools fconfig kmod-hwmon-lm75
1534 LOADER_TYPE := bin
1535 LOADER_FLASH_OFFS := 0x60000
1536 COMPILE := loader-$(1).bin
1537 COMPILE/loader-$(1).bin := loader-okli-compile | lzma | pad-to 128k
1538 ARTIFACTS := loader.bin
1539 ARTIFACT/loader.bin := append-loader-okli $(1)
1540 IMAGES += firmware.bin
1541 IMAGE/firmware.bin := append-kernel | uImage lzma -M 0x4f4b4c49 | pad-to $$$$(BLOCKSIZE) | \
1542 append-rootfs | pad-rootfs | pad-to $$$$(BLOCKSIZE) | check-size
1543 IMAGE/sysupgrade.bin := $$(IMAGE/firmware.bin) | \
1544 sysupgrade-tar kernel=$$$$(KDIR)/loader-$(1).bin rootfs=$$$$@ | append-metadata
1545 KERNEL := kernel-bin | append-dtb | lzma
1546 KERNEL_INITRAMFS := kernel-bin | append-dtb
1547 IMAGE_SIZE := 15872k
1548 DEVICE_COMPAT_VERSION := 2.0
1549 DEVICE_COMPAT_MESSAGE := Partition design has changed compared to older versions (19.07 and 21.02) \
1550 due to kernel drivers restrictions. Upgrade via sysupgrade mechanism is one way operation. \
1551 Downgrading OpenWrt version will involve usage of bootloader command line interface.
1552 endef
1553 TARGET_DEVICES += jjplus_ja76pf2
1554
1555 define Device/jjplus_jwap230
1556 SOC := qca9558
1557 DEVICE_VENDOR := jjPlus
1558 DEVICE_MODEL := JWAP230
1559 IMAGE_SIZE := 16000k
1560 endef
1561 TARGET_DEVICES += jjplus_jwap230
1562
1563 define Device/joyit_jt-or750i
1564 SOC := qca9531
1565 DEVICE_VENDOR := Joy-IT
1566 DEVICE_MODEL := JT-OR750i
1567 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9887-ct
1568 IMAGE_SIZE := 16000k
1569 endef
1570 TARGET_DEVICES += joyit_jt-or750i
1571
1572 define Device/letv_lba-047-ch
1573 $(Device/loader-okli-uimage)
1574 SOC := qca9531
1575 DEVICE_VENDOR := Letv
1576 DEVICE_MODEL := LBA-047-CH
1577 IMAGE_SIZE := 15936k
1578 LOADER_FLASH_OFFS := 0x50000
1579 KERNEL := kernel-bin | append-dtb | lzma | uImage lzma -M 0x4f4b4c49
1580 IMAGES += factory.bin
1581 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
1582 append-rootfs | pad-rootfs | check-size | pad-to 14528k | \
1583 append-loader-okli-uimage $(1) | pad-to 64k
1584 endef
1585 TARGET_DEVICES += letv_lba-047-ch
1586
1587 define Device/librerouter_librerouter-v1
1588 SOC := qca9558
1589 DEVICE_VENDOR := Librerouter
1590 DEVICE_MODEL := LibreRouter
1591 DEVICE_VARIANT := v1
1592 IMAGE_SIZE := 7936k
1593 DEVICE_PACKAGES := kmod-usb2
1594 endef
1595 TARGET_DEVICES += librerouter_librerouter-v1
1596
1597 define Device/meraki_mr12
1598 SOC := ar7242
1599 DEVICE_VENDOR := Meraki
1600 DEVICE_MODEL := MR12
1601 IMAGE_SIZE := 15616k
1602 DEVICE_PACKAGES := kmod-owl-loader rssileds
1603 SUPPORTED_DEVICES += mr12
1604 DEVICE_COMPAT_VERSION := 2.0
1605 DEVICE_COMPAT_MESSAGE := Partitions differ from ar71xx version of MR12. Image format is incompatible. \
1606 To use sysupgrade, you must change /lib/update/common.sh::get_image to prepend 128K zeroes to this image, \
1607 and change the bootcmd in u-boot to "bootm 0xbf0a0000". After that, you can use "sysupgrade -F -n". \
1608 Make sure you do not keep your old config, as ethernet setup is not compatible either. \
1609 For more details, see the OpenWrt Wiki: https://openwrt.org/toh/meraki/MR12, \
1610 or the commit message of the MR12 ath79 port on git.openwrt.org.
1611 endef
1612 TARGET_DEVICES += meraki_mr12
1613
1614 define Device/meraki_mr16
1615 SOC := ar7161
1616 DEVICE_VENDOR := Meraki
1617 DEVICE_MODEL := MR16
1618 IMAGE_SIZE := 15616k
1619 DEVICE_PACKAGES := kmod-owl-loader
1620 SUPPORTED_DEVICES += mr16
1621 DEVICE_COMPAT_VERSION := 2.0
1622 DEVICE_COMPAT_MESSAGE := Partitions differ from ar71xx version of MR16. Image format is incompatible. \
1623 To use sysupgrade, you must change /lib/update/common.sh::get_image to prepend 128K zeroes to this image, \
1624 and change the bootcmd in u-boot to "bootm 0xbf0a0000". After that, you can use "sysupgrade -F". \
1625 For more details, see the OpenWrt Wiki: https://openwrt.org/toh/meraki/mr16, \
1626 or the commit message of the MR16 ath79 port on git.openwrt.org.
1627 endef
1628 TARGET_DEVICES += meraki_mr16
1629
1630 define Device/mercury_mw4530r-v1
1631 $(Device/tplink-8mlzma)
1632 SOC := ar9344
1633 DEVICE_VENDOR := Mercury
1634 DEVICE_MODEL := MW4530R
1635 DEVICE_VARIANT := v1
1636 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
1637 TPLINK_HWID := 0x45300001
1638 SUPPORTED_DEVICES += tl-wdr4300
1639 endef
1640 TARGET_DEVICES += mercury_mw4530r-v1
1641
1642 define Device/nec_wx1200cr
1643 DEVICE_VENDOR := NEC
1644 IMAGE/default := append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | append-rootfs
1645 IMAGE/sysupgrade.bin := $$(IMAGE/default) | seama | pad-rootfs | \
1646 check-size | append-metadata
1647 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9888-ct
1648 endef
1649
1650 define Device/nec_wf1200cr
1651 $(Device/nec_wx1200cr)
1652 SOC := qca9561
1653 DEVICE_MODEL := Aterm WF1200CR
1654 IMAGE_SIZE := 7680k
1655 SEAMA_MTDBLOCK := 5
1656 SEAMA_SIGNATURE := wrgac62_necpf.2016gui_wf1200cr
1657 IMAGES += factory.bin
1658 IMAGE/factory.bin := $$(IMAGE/default) | pad-rootfs -x 64 | seama | \
1659 seama-seal | nec-enc ryztfyutcrqqo69d | check-size
1660 endef
1661 TARGET_DEVICES += nec_wf1200cr
1662
1663 define Device/nec_wg1200cr
1664 $(Device/nec_wx1200cr)
1665 SOC := qca9563
1666 DEVICE_MODEL := Aterm WG1200CR
1667 IMAGE_SIZE := 7616k
1668 SEAMA_MTDBLOCK := 6
1669 SEAMA_SIGNATURE := wrgac72_necpf.2016gui_wg1200cr
1670 IMAGES += factory.bin
1671 IMAGE/factory.bin := $$(IMAGE/default) | pad-rootfs -x 64 | seama | \
1672 seama-seal | nec-enc 9gsiy9nzep452pad | check-size
1673 endef
1674 TARGET_DEVICES += nec_wg1200cr
1675
1676 define Device/nec_wg800hp
1677 SOC := qca9563
1678 DEVICE_VENDOR := NEC
1679 DEVICE_MODEL := Aterm WG800HP
1680 IMAGE_SIZE := 7104k
1681 IMAGES += factory.bin
1682 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
1683 append-rootfs | pad-rootfs | check-size | \
1684 xor-image -p 6A57190601121E4C004C1E1201061957 -x | nec-fw LASER_ATERM
1685 DEVICE_PACKAGES := kmod-ath10k-ct-smallbuffers ath10k-firmware-qca9887-ct-full-htt
1686 endef
1687 TARGET_DEVICES += nec_wg800hp
1688
1689 define Device/netgear_ex6400_ex7300
1690 $(Device/netgear_generic)
1691 SOC := qca9558
1692 UIMAGE_MAGIC := 0x27051956
1693 NETGEAR_BOARD_ID := EX7300series
1694 NETGEAR_HW_ID := 29765104+16+0+128
1695 IMAGE_SIZE := 15552k
1696 IMAGE/default := append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | \
1697 netgear-rootfs | pad-rootfs
1698 IMAGE/sysupgrade.bin := $$(IMAGE/default) | check-size | append-metadata
1699 IMAGE/factory.img := $$(IMAGE/default) | netgear-dni | check-size
1700 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca99x0-ct
1701 endef
1702
1703 define Device/netgear_ex6400
1704 $(Device/netgear_ex6400_ex7300)
1705 DEVICE_MODEL := EX6400
1706 endef
1707 TARGET_DEVICES += netgear_ex6400
1708
1709 define Device/netgear_ex7300
1710 $(Device/netgear_ex6400_ex7300)
1711 DEVICE_MODEL := EX7300
1712 endef
1713 TARGET_DEVICES += netgear_ex7300
1714
1715 define Device/netgear_ex7300-v2
1716 $(Device/netgear_generic)
1717 SOC := qcn5502
1718 DEVICE_MODEL := EX7300
1719 DEVICE_VARIANT := v2
1720 UIMAGE_MAGIC := 0x27051956
1721 NETGEAR_BOARD_ID := EX7300v2series
1722 NETGEAR_HW_ID := 29765907+16+0+128
1723 IMAGE_SIZE := 14528k
1724 IMAGE/default := append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | \
1725 netgear-rootfs | pad-rootfs
1726 IMAGE/sysupgrade.bin := $$(IMAGE/default) | check-size | append-metadata
1727 IMAGE/factory.img := $$(IMAGE/default) | check-size | netgear-dni
1728 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9984-ct
1729 endef
1730 TARGET_DEVICES += netgear_ex7300-v2
1731
1732 define Device/netgear_wndap360
1733 $(Device/netgear_generic)
1734 SOC := ar7161
1735 DEVICE_MODEL := WNDAP360
1736 DEVICE_PACKAGES := kmod-leds-reset kmod-owl-loader
1737 IMAGE_SIZE := 7744k
1738 BLOCKSIZE := 256k
1739 KERNEL := kernel-bin | append-dtb | gzip | uImage gzip
1740 KERNEL_INITRAMFS := kernel-bin | append-dtb | uImage none
1741 IMAGES := sysupgrade.bin
1742 IMAGE/sysupgrade.bin := append-kernel | pad-to 64k | append-rootfs | pad-rootfs | \
1743 check-size | append-metadata
1744 endef
1745 TARGET_DEVICES += netgear_wndap360
1746
1747 define Device/netgear_wndr3x00
1748 $(Device/netgear_generic)
1749 SOC := ar7161
1750 DEVICE_PACKAGES := kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport \
1751 kmod-leds-reset kmod-owl-loader kmod-switch-rtl8366s
1752 endef
1753
1754 define Device/netgear_wndr3700
1755 $(Device/netgear_wndr3x00)
1756 DEVICE_MODEL := WNDR3700
1757 DEVICE_VARIANT := v1
1758 UIMAGE_MAGIC := 0x33373030
1759 NETGEAR_BOARD_ID := WNDR3700
1760 IMAGE_SIZE := 7680k
1761 IMAGES += factory-NA.img
1762 IMAGE/factory-NA.img := $$(IMAGE/default) | netgear-dni NA | \
1763 check-size
1764 SUPPORTED_DEVICES += wndr3700
1765 endef
1766 TARGET_DEVICES += netgear_wndr3700
1767
1768 define Device/netgear_wndr3700-v2
1769 $(Device/netgear_wndr3x00)
1770 DEVICE_MODEL := WNDR3700
1771 DEVICE_VARIANT := v2
1772 UIMAGE_MAGIC := 0x33373031
1773 NETGEAR_BOARD_ID := WNDR3700v2
1774 NETGEAR_HW_ID := 29763654+16+64
1775 IMAGE_SIZE := 15872k
1776 SUPPORTED_DEVICES += wndr3700 netgear,wndr3700v2
1777 endef
1778 TARGET_DEVICES += netgear_wndr3700-v2
1779
1780 define Device/netgear_wndr3800
1781 $(Device/netgear_wndr3x00)
1782 DEVICE_MODEL := WNDR3800
1783 UIMAGE_MAGIC := 0x33373031
1784 NETGEAR_BOARD_ID := WNDR3800
1785 NETGEAR_HW_ID := 29763654+16+128
1786 IMAGE_SIZE := 15872k
1787 SUPPORTED_DEVICES += wndr3700
1788 endef
1789 TARGET_DEVICES += netgear_wndr3800
1790
1791 define Device/netgear_wndr3800ch
1792 $(Device/netgear_wndr3x00)
1793 DEVICE_MODEL := WNDR3800CH
1794 UIMAGE_MAGIC := 0x33373031
1795 NETGEAR_BOARD_ID := WNDR3800CH
1796 NETGEAR_HW_ID := 29763654+16+128
1797 IMAGE_SIZE := 15872k
1798 SUPPORTED_DEVICES += wndr3700
1799 endef
1800 TARGET_DEVICES += netgear_wndr3800ch
1801
1802 define Device/netgear_wndrmac-v1
1803 $(Device/netgear_wndr3x00)
1804 DEVICE_MODEL := WNDRMAC
1805 DEVICE_VARIANT := v1
1806 UIMAGE_MAGIC := 0x33373031
1807 NETGEAR_BOARD_ID := WNDRMAC
1808 NETGEAR_HW_ID := 29763654+16+64
1809 IMAGE_SIZE := 15872k
1810 SUPPORTED_DEVICES += wndr3700
1811 endef
1812 TARGET_DEVICES += netgear_wndrmac-v1
1813
1814 define Device/netgear_wndrmac-v2
1815 $(Device/netgear_wndr3x00)
1816 DEVICE_MODEL := WNDRMAC
1817 DEVICE_VARIANT := v2
1818 UIMAGE_MAGIC := 0x33373031
1819 NETGEAR_BOARD_ID := WNDRMACv2
1820 NETGEAR_HW_ID := 29763654+16+128
1821 IMAGE_SIZE := 15872k
1822 SUPPORTED_DEVICES += wndr3700
1823 endef
1824 TARGET_DEVICES += netgear_wndrmac-v2
1825
1826 define Device/netgear_wnr2200_common
1827 $(Device/netgear_generic)
1828 SOC := ar7241
1829 DEVICE_MODEL := WNR2200
1830 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
1831 UIMAGE_MAGIC := 0x32323030
1832 NETGEAR_BOARD_ID := wnr2200
1833 endef
1834
1835 define Device/netgear_wnr2200-8m
1836 $(Device/netgear_wnr2200_common)
1837 DEVICE_VARIANT := 8M
1838 NETGEAR_HW_ID := 29763600+08+64
1839 IMAGE_SIZE := 7808k
1840 IMAGES += factory-NA.img
1841 IMAGE/factory-NA.img := $$(IMAGE/default) | netgear-dni NA | \
1842 check-size
1843 SUPPORTED_DEVICES += wnr2200
1844 endef
1845 TARGET_DEVICES += netgear_wnr2200-8m
1846
1847 define Device/netgear_wnr2200-16m
1848 $(Device/netgear_wnr2200_common)
1849 DEVICE_VARIANT := 16M
1850 DEVICE_ALT0_VENDOR := NETGEAR
1851 DEVICE_ALT0_MODEL := WNR2200
1852 DEVICE_ALT0_VARIANT := CN/RU
1853 NETGEAR_HW_ID :=
1854 IMAGE_SIZE := 16000k
1855 endef
1856 TARGET_DEVICES += netgear_wnr2200-16m
1857
1858 define Device/ocedo_koala
1859 SOC := qca9558
1860 DEVICE_VENDOR := Ocedo
1861 DEVICE_MODEL := Koala
1862 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
1863 SUPPORTED_DEVICES += koala
1864 IMAGE_SIZE := 7424k
1865 endef
1866 TARGET_DEVICES += ocedo_koala
1867
1868 define Device/ocedo_raccoon
1869 SOC := ar9344
1870 DEVICE_VENDOR := Ocedo
1871 DEVICE_MODEL := Raccoon
1872 IMAGE_SIZE := 7424k
1873 endef
1874 TARGET_DEVICES += ocedo_raccoon
1875
1876 define Device/ocedo_ursus
1877 SOC := qca9558
1878 DEVICE_VENDOR := Ocedo
1879 DEVICE_MODEL := Ursus
1880 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
1881 IMAGE_SIZE := 7424k
1882 endef
1883 TARGET_DEVICES += ocedo_ursus
1884
1885 define Device/onion_omega
1886 $(Device/tplink-16mlzma)
1887 SOC := ar9331
1888 DEVICE_VENDOR := Onion
1889 DEVICE_MODEL := Omega
1890 DEVICE_PACKAGES := kmod-usb-chipidea2
1891 SUPPORTED_DEVICES += onion-omega
1892 KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma | uImage lzma
1893 IMAGE_SIZE := 16192k
1894 TPLINK_HWID := 0x04700001
1895 endef
1896 TARGET_DEVICES += onion_omega
1897
1898 define Device/openmesh_common_64k
1899 DEVICE_VENDOR := OpenMesh
1900 DEVICE_PACKAGES := uboot-envtools
1901 IMAGE_SIZE := 7808k
1902 OPENMESH_CE_TYPE :=
1903 KERNEL := kernel-bin | append-dtb | lzma | uImage lzma | \
1904 pad-to $$(BLOCKSIZE)
1905 IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | \
1906 openmesh-image ce_type=$$$$(OPENMESH_CE_TYPE) | append-metadata
1907 endef
1908
1909 define Device/openmesh_common_256k
1910 DEVICE_VENDOR := OpenMesh
1911 DEVICE_PACKAGES := uboot-envtools
1912 IMAGE_SIZE := 7168k
1913 BLOCKSIZE := 256k
1914 OPENMESH_CE_TYPE :=
1915 KERNEL := kernel-bin | append-dtb | lzma | uImage lzma | \
1916 pad-to $$(BLOCKSIZE)
1917 IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | \
1918 openmesh-image ce_type=$$$$(OPENMESH_CE_TYPE) | append-metadata
1919 endef
1920
1921 define Device/openmesh_a40
1922 $(Device/openmesh_common_64k)
1923 SOC := qca9558
1924 DEVICE_MODEL := A40
1925 DEVICE_PACKAGES += kmod-ath10k-ct ath10k-firmware-qca988x-ct kmod-usb2
1926 OPENMESH_CE_TYPE := A60
1927 SUPPORTED_DEVICES += a40
1928 endef
1929 TARGET_DEVICES += openmesh_a40
1930
1931 define Device/openmesh_a60
1932 $(Device/openmesh_common_64k)
1933 SOC := qca9558
1934 DEVICE_MODEL := A60
1935 DEVICE_PACKAGES += kmod-ath10k-ct ath10k-firmware-qca988x-ct kmod-usb2
1936 OPENMESH_CE_TYPE := A60
1937 SUPPORTED_DEVICES += a60
1938 endef
1939 TARGET_DEVICES += openmesh_a60
1940
1941 define Device/openmesh_mr600-v1
1942 $(Device/openmesh_common_64k)
1943 SOC := ar9344
1944 DEVICE_MODEL := MR600
1945 DEVICE_VARIANT := v1
1946 OPENMESH_CE_TYPE := MR600
1947 SUPPORTED_DEVICES += mr600
1948 endef
1949 TARGET_DEVICES += openmesh_mr600-v1
1950
1951 define Device/openmesh_mr600-v2
1952 $(Device/openmesh_common_64k)
1953 SOC := ar9344
1954 DEVICE_MODEL := MR600
1955 DEVICE_VARIANT := v2
1956 OPENMESH_CE_TYPE := MR600
1957 SUPPORTED_DEVICES += mr600v2
1958 endef
1959 TARGET_DEVICES += openmesh_mr600-v2
1960
1961 define Device/openmesh_mr900-v1
1962 $(Device/openmesh_common_64k)
1963 SOC := qca9558
1964 DEVICE_MODEL := MR900
1965 DEVICE_VARIANT := v1
1966 OPENMESH_CE_TYPE := MR900
1967 SUPPORTED_DEVICES += mr900
1968 endef
1969 TARGET_DEVICES += openmesh_mr900-v1
1970
1971 define Device/openmesh_mr900-v2
1972 $(Device/openmesh_common_64k)
1973 SOC := qca9558
1974 DEVICE_MODEL := MR900
1975 DEVICE_VARIANT := v2
1976 OPENMESH_CE_TYPE := MR900
1977 SUPPORTED_DEVICES += mr900v2
1978 endef
1979 TARGET_DEVICES += openmesh_mr900-v2
1980
1981 define Device/openmesh_mr1750-v1
1982 $(Device/openmesh_common_64k)
1983 SOC := qca9558
1984 DEVICE_MODEL := MR1750
1985 DEVICE_VARIANT := v1
1986 DEVICE_PACKAGES += kmod-ath10k-ct ath10k-firmware-qca988x-ct
1987 OPENMESH_CE_TYPE := MR1750
1988 SUPPORTED_DEVICES += mr1750
1989 endef
1990 TARGET_DEVICES += openmesh_mr1750-v1
1991
1992 define Device/openmesh_mr1750-v2
1993 $(Device/openmesh_common_64k)
1994 SOC := qca9558
1995 DEVICE_MODEL := MR1750
1996 DEVICE_VARIANT := v2
1997 DEVICE_PACKAGES += kmod-ath10k-ct ath10k-firmware-qca988x-ct
1998 OPENMESH_CE_TYPE := MR1750
1999 SUPPORTED_DEVICES += mr1750v2
2000 endef
2001 TARGET_DEVICES += openmesh_mr1750-v2
2002
2003 define Device/openmesh_om2p-v1
2004 $(Device/openmesh_common_256k)
2005 SOC := ar7240
2006 DEVICE_MODEL := OM2P
2007 DEVICE_VARIANT := v1
2008 OPENMESH_CE_TYPE := OM2P
2009 SUPPORTED_DEVICES += om2p
2010 endef
2011 TARGET_DEVICES += openmesh_om2p-v1
2012
2013 define Device/openmesh_om2p-v2
2014 $(Device/openmesh_common_256k)
2015 SOC := ar9330
2016 DEVICE_MODEL := OM2P
2017 DEVICE_VARIANT := v2
2018 OPENMESH_CE_TYPE := OM2P
2019 SUPPORTED_DEVICES += om2pv2
2020 endef
2021 TARGET_DEVICES += openmesh_om2p-v2
2022
2023 define Device/openmesh_om2p-v4
2024 $(Device/openmesh_common_256k)
2025 SOC := qca9533
2026 DEVICE_MODEL := OM2P
2027 DEVICE_VARIANT := v4
2028 OPENMESH_CE_TYPE := OM2P
2029 SUPPORTED_DEVICES += om2pv4
2030 endef
2031 TARGET_DEVICES += openmesh_om2p-v4
2032
2033 define Device/openmesh_om2p-hs-v1
2034 $(Device/openmesh_common_256k)
2035 SOC := ar9341
2036 DEVICE_MODEL := OM2P-HS
2037 DEVICE_VARIANT := v1
2038 OPENMESH_CE_TYPE := OM2P
2039 SUPPORTED_DEVICES += om2p-hs
2040 endef
2041 TARGET_DEVICES += openmesh_om2p-hs-v1
2042
2043 define Device/openmesh_om2p-hs-v2
2044 $(Device/openmesh_common_256k)
2045 SOC := ar9341
2046 DEVICE_MODEL := OM2P-HS
2047 DEVICE_VARIANT := v2
2048 OPENMESH_CE_TYPE := OM2P
2049 SUPPORTED_DEVICES += om2p-hsv2
2050 endef
2051 TARGET_DEVICES += openmesh_om2p-hs-v2
2052
2053 define Device/openmesh_om2p-hs-v3
2054 $(Device/openmesh_common_256k)
2055 SOC := ar9341
2056 DEVICE_MODEL := OM2P-HS
2057 DEVICE_VARIANT := v3
2058 OPENMESH_CE_TYPE := OM2P
2059 SUPPORTED_DEVICES += om2p-hsv3
2060 endef
2061 TARGET_DEVICES += openmesh_om2p-hs-v3
2062
2063 define Device/openmesh_om2p-hs-v4
2064 $(Device/openmesh_common_256k)
2065 SOC := qca9533
2066 DEVICE_MODEL := OM2P-HS
2067 DEVICE_VARIANT := v4
2068 OPENMESH_CE_TYPE := OM2P
2069 SUPPORTED_DEVICES += om2p-hsv4
2070 endef
2071 TARGET_DEVICES += openmesh_om2p-hs-v4
2072
2073 define Device/openmesh_om2p-lc
2074 $(Device/openmesh_common_256k)
2075 SOC := ar9330
2076 DEVICE_MODEL := OM2P-LC
2077 OPENMESH_CE_TYPE := OM2P
2078 SUPPORTED_DEVICES += om2p-lc
2079 endef
2080 TARGET_DEVICES += openmesh_om2p-lc
2081
2082 define Device/openmesh_om5p
2083 $(Device/openmesh_common_64k)
2084 SOC := ar9344
2085 DEVICE_MODEL := OM5P
2086 OPENMESH_CE_TYPE := OM5P
2087 SUPPORTED_DEVICES += om5p
2088 endef
2089 TARGET_DEVICES += openmesh_om5p
2090
2091 define Device/openmesh_om5p-ac-v1
2092 $(Device/openmesh_common_64k)
2093 SOC := qca9558
2094 DEVICE_MODEL := OM5P-AC
2095 DEVICE_VARIANT := v1
2096 DEVICE_PACKAGES += kmod-ath10k-ct ath10k-firmware-qca988x-ct
2097 OPENMESH_CE_TYPE := OM5PAC
2098 SUPPORTED_DEVICES += om5p-ac
2099 endef
2100 TARGET_DEVICES += openmesh_om5p-ac-v1
2101
2102 define Device/openmesh_om5p-ac-v2
2103 $(Device/openmesh_common_64k)
2104 SOC := qca9558
2105 DEVICE_MODEL := OM5P-AC
2106 DEVICE_VARIANT := v2
2107 DEVICE_PACKAGES += kmod-ath10k-ct ath10k-firmware-qca988x-ct
2108 OPENMESH_CE_TYPE := OM5PAC
2109 SUPPORTED_DEVICES += om5p-acv2
2110 endef
2111 TARGET_DEVICES += openmesh_om5p-ac-v2
2112
2113 define Device/openmesh_om5p-an
2114 $(Device/openmesh_common_64k)
2115 SOC := ar9344
2116 DEVICE_MODEL := OM5P-AN
2117 OPENMESH_CE_TYPE := OM5P
2118 SUPPORTED_DEVICES += om5p-an
2119 endef
2120 TARGET_DEVICES += openmesh_om5p-an
2121
2122 define Device/pcs_cap324
2123 SOC := ar9344
2124 DEVICE_VENDOR := PowerCloud Systems
2125 DEVICE_MODEL := CAP324
2126 IMAGE_SIZE := 16000k
2127 SUPPORTED_DEVICES += cap324
2128 endef
2129 TARGET_DEVICES += pcs_cap324
2130
2131 define Device/pcs_cr3000
2132 SOC := ar9341
2133 DEVICE_VENDOR := PowerCloud Systems
2134 DEVICE_MODEL := CR3000
2135 IMAGE_SIZE := 7808k
2136 SUPPORTED_DEVICES += cr3000
2137 endef
2138 TARGET_DEVICES += pcs_cr3000
2139
2140 define Device/pcs_cr5000
2141 SOC := ar9344
2142 DEVICE_VENDOR := PowerCloud Systems
2143 DEVICE_MODEL := CR5000
2144 DEVICE_PACKAGES := kmod-usb2
2145 IMAGE_SIZE := 7808k
2146 SUPPORTED_DEVICES += cr5000
2147 endef
2148 TARGET_DEVICES += pcs_cr5000
2149
2150 define Device/phicomm_k2t
2151 SOC := qca9563
2152 DEVICE_VENDOR := Phicomm
2153 DEVICE_MODEL := K2T
2154 IMAGE_SIZE := 15744k
2155 IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | \
2156 check-size | append-metadata
2157 DEVICE_PACKAGES := kmod-leds-reset kmod-ath10k-ct-smallbuffers ath10k-firmware-qca9888-ct
2158 endef
2159 TARGET_DEVICES += phicomm_k2t
2160
2161 define Device/pisen_ts-d084
2162 $(Device/tplink-8mlzma)
2163 SOC := ar9331
2164 DEVICE_VENDOR := PISEN
2165 DEVICE_MODEL := TS-D084
2166 DEVICE_PACKAGES := kmod-usb-chipidea2
2167 TPLINK_HWID := 0x07030101
2168 endef
2169 TARGET_DEVICES += pisen_ts-d084
2170
2171 define Device/pisen_wmb001n
2172 $(Device/loader-okli-uimage)
2173 SOC := ar9341
2174 DEVICE_VENDOR := PISEN
2175 DEVICE_MODEL := WMB001N
2176 IMAGE_SIZE := 14080k
2177 DEVICE_PACKAGES := kmod-i2c-gpio kmod-usb2
2178 LOADER_FLASH_OFFS := 0x20000
2179 KERNEL := kernel-bin | append-dtb | lzma | uImage lzma -M 0x4f4b4c49
2180 IMAGES += factory.bin
2181 IMAGE/factory.bin := $$(IMAGE/sysupgrade.bin) | pisen_wmb001n-factory $(1)
2182 endef
2183 TARGET_DEVICES += pisen_wmb001n
2184
2185 define Device/pisen_wmm003n
2186 $(Device/tplink-8mlzma)
2187 SOC := ar9331
2188 DEVICE_VENDOR := PISEN
2189 DEVICE_MODEL := Cloud Easy Power (WMM003N)
2190 DEVICE_PACKAGES := kmod-usb-chipidea2
2191 TPLINK_HWID := 0x07030101
2192 endef
2193 TARGET_DEVICES += pisen_wmm003n
2194
2195 define Device/plasmacloud_pa300-common
2196 SOC := qca9533
2197 DEVICE_VENDOR := Plasma Cloud
2198 DEVICE_PACKAGES := uboot-envtools
2199 IMAGE_SIZE := 7168k
2200 IMAGES += factory.bin
2201 KERNEL := kernel-bin | append-dtb | lzma | uImage lzma | pad-to $$(BLOCKSIZE)
2202 IMAGE/factory.bin := append-rootfs | pad-rootfs | openmesh-image ce_type=PA300
2203 IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | sysupgrade-tar rootfs=$$$$@ | append-metadata
2204 endef
2205
2206 define Device/plasmacloud_pa300
2207 $(Device/plasmacloud_pa300-common)
2208 DEVICE_MODEL := PA300
2209 endef
2210 TARGET_DEVICES += plasmacloud_pa300
2211
2212 define Device/plasmacloud_pa300e
2213 $(Device/plasmacloud_pa300-common)
2214 DEVICE_MODEL := PA300E
2215 endef
2216 TARGET_DEVICES += plasmacloud_pa300e
2217
2218 define Device/qca_ap143
2219 $(Device/loader-okli-uimage)
2220 SOC := qca9533
2221 DEVICE_VENDOR := Qualcomm Atheros
2222 DEVICE_MODEL := AP143
2223 DEVICE_PACKAGES := kmod-usb2
2224 SUPPORTED_DEVICES += ap143
2225 LOADER_FLASH_OFFS := 0x50000
2226 KERNEL := kernel-bin | append-dtb | lzma | uImage lzma -M 0x4f4b4c49
2227 endef
2228
2229 define Device/qca_ap143-8m
2230 $(Device/qca_ap143)
2231 DEVICE_VARIANT := (8M)
2232 IMAGE_SIZE := 7744k
2233 IMAGES += factory.bin
2234 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
2235 append-rootfs | pad-rootfs | check-size | pad-to 6336k | \
2236 append-loader-okli-uimage $(1) | pad-to 64k
2237 endef
2238 TARGET_DEVICES += qca_ap143-8m
2239
2240 define Device/qca_ap143-16m
2241 $(Device/qca_ap143)
2242 DEVICE_VARIANT := (16M)
2243 IMAGE_SIZE := 15936k
2244 IMAGES += factory.bin
2245 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
2246 append-rootfs | pad-rootfs | check-size | pad-to 14528k | \
2247 append-loader-okli-uimage $(1) | pad-to 64k
2248 endef
2249 TARGET_DEVICES += qca_ap143-16m
2250
2251 define Device/qihoo_c301
2252 $(Device/seama)
2253 SOC := ar9344
2254 DEVICE_VENDOR := Qihoo
2255 DEVICE_MODEL := C301
2256 DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct \
2257 uboot-envtools
2258 IMAGE_SIZE := 15744k
2259 SEAMA_SIGNATURE := wrgac26_qihoo360_360rg
2260 SUPPORTED_DEVICES += qihoo-c301
2261 endef
2262 TARGET_DEVICES += qihoo_c301
2263
2264 define Device/qxwlan_e1700ac-v2
2265 SOC := qca9563
2266 DEVICE_VENDOR := Qxwlan
2267 DEVICE_MODEL := E1700AC
2268 DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
2269 SUPPORTED_DEVICES += e1700ac-v2
2270 endef
2271
2272 define Device/qxwlan_e1700ac-v2-16m
2273 $(Device/qxwlan_e1700ac-v2)
2274 DEVICE_VARIANT := v2 (16M)
2275 IMAGE_SIZE := 15936k
2276 endef
2277 TARGET_DEVICES += qxwlan_e1700ac-v2-16m
2278
2279 define Device/qxwlan_e1700ac-v2-8m
2280 $(Device/qxwlan_e1700ac-v2)
2281 DEVICE_VARIANT := v2 (8M)
2282 IMAGE_SIZE := 7744k
2283 endef
2284 TARGET_DEVICES += qxwlan_e1700ac-v2-8m
2285
2286 define Device/qxwlan_e558-v2
2287 SOC := qca9558
2288 DEVICE_VENDOR := Qxwlan
2289 DEVICE_MODEL := E558
2290 DEVICE_PACKAGES := kmod-usb2
2291 SUPPORTED_DEVICES += e558-v2
2292 endef
2293
2294 define Device/qxwlan_e558-v2-16m
2295 $(Device/qxwlan_e558-v2)
2296 DEVICE_VARIANT := v2 (16M)
2297 IMAGE_SIZE := 15936k
2298 endef
2299 TARGET_DEVICES += qxwlan_e558-v2-16m
2300
2301 define Device/qxwlan_e558-v2-8m
2302 $(Device/qxwlan_e558-v2)
2303 DEVICE_VARIANT := v2 (8M)
2304 IMAGE_SIZE := 7744k
2305 endef
2306 TARGET_DEVICES += qxwlan_e558-v2-8m
2307
2308 define Device/qxwlan_e600g-v2
2309 SOC := qca9531
2310 DEVICE_VENDOR := Qxwlan
2311 DEVICE_MODEL := E600G
2312 DEVICE_PACKAGES := kmod-usb2
2313 SUPPORTED_DEVICES += e600g-v2
2314 endef
2315
2316 define Device/qxwlan_e600g-v2-16m
2317 $(Device/qxwlan_e600g-v2)
2318 DEVICE_VARIANT := v2 (16M)
2319 IMAGE_SIZE := 15936k
2320 endef
2321 TARGET_DEVICES += qxwlan_e600g-v2-16m
2322
2323 define Device/qxwlan_e600g-v2-8m
2324 $(Device/qxwlan_e600g-v2)
2325 DEVICE_VARIANT := v2 (8M)
2326 IMAGE_SIZE := 7744k
2327 endef
2328 TARGET_DEVICES += qxwlan_e600g-v2-8m
2329
2330 define Device/qxwlan_e600gac-v2
2331 SOC := qca9531
2332 DEVICE_VENDOR := Qxwlan
2333 DEVICE_MODEL := E600GAC
2334 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9887-ct
2335 SUPPORTED_DEVICES += e600gac-v2
2336 endef
2337
2338 define Device/qxwlan_e600gac-v2-16m
2339 $(Device/qxwlan_e600gac-v2)
2340 DEVICE_VARIANT := v2 (16M)
2341 IMAGE_SIZE := 15936k
2342 endef
2343 TARGET_DEVICES += qxwlan_e600gac-v2-16m
2344
2345 define Device/qxwlan_e600gac-v2-8m
2346 $(Device/qxwlan_e600gac-v2)
2347 DEVICE_VARIANT := v2 (8M)
2348 IMAGE_SIZE := 7744k
2349 endef
2350 TARGET_DEVICES += qxwlan_e600gac-v2-8m
2351
2352 define Device/qxwlan_e750a-v4
2353 SOC := ar9344
2354 DEVICE_VENDOR := Qxwlan
2355 DEVICE_MODEL := E750A
2356 DEVICE_PACKAGES := kmod-usb2
2357 SUPPORTED_DEVICES += e750a-v4
2358 endef
2359
2360 define Device/qxwlan_e750a-v4-16m
2361 $(Device/qxwlan_e750a-v4)
2362 DEVICE_VARIANT := v4 (16M)
2363 IMAGE_SIZE := 15936k
2364 endef
2365 TARGET_DEVICES += qxwlan_e750a-v4-16m
2366
2367 define Device/qxwlan_e750a-v4-8m
2368 $(Device/qxwlan_e750a-v4)
2369 DEVICE_VARIANT := v4 (8M)
2370 IMAGE_SIZE := 7744k
2371 endef
2372 TARGET_DEVICES += qxwlan_e750a-v4-8m
2373
2374 define Device/qxwlan_e750g-v8
2375 SOC := ar9344
2376 DEVICE_VENDOR := Qxwlan
2377 DEVICE_MODEL := E750G
2378 DEVICE_PACKAGES := kmod-usb2
2379 SUPPORTED_DEVICES += e750g-v8
2380 endef
2381
2382 define Device/qxwlan_e750g-v8-16m
2383 $(Device/qxwlan_e750g-v8)
2384 DEVICE_VARIANT := v8 (16M)
2385 IMAGE_SIZE := 15936k
2386 endef
2387 TARGET_DEVICES += qxwlan_e750g-v8-16m
2388
2389 define Device/qxwlan_e750g-v8-8m
2390 $(Device/qxwlan_e750g-v8)
2391 DEVICE_VARIANT := v8 (8M)
2392 IMAGE_SIZE := 7744k
2393 endef
2394 TARGET_DEVICES += qxwlan_e750g-v8-8m
2395
2396 define Device/rosinson_wr818
2397 SOC := qca9563
2398 DEVICE_VENDOR := Rosinson
2399 DEVICE_MODEL := WR818
2400 IMAGE_SIZE := 15872k
2401 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
2402 endef
2403 TARGET_DEVICES += rosinson_wr818
2404
2405 define Device/ruckus_zf73xx_common
2406 DEVICE_VENDOR := Ruckus
2407 DEVICE_PACKAGES := -swconfig kmod-usb2 kmod-usb-chipidea2
2408 IMAGE_SIZE := 31744k
2409 LOADER_TYPE := bin
2410 KERNEL := kernel-bin | append-dtb | lzma | loader-kernel | uImage none
2411 KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma | loader-kernel | uImage none
2412 endef
2413
2414 define Device/ruckus_zf7321
2415 $(Device/ruckus_zf73xx_common)
2416 SOC := ar9342
2417 DEVICE_MODEL := ZoneFlex 7321[-U]
2418 endef
2419 TARGET_DEVICES += ruckus_zf7321
2420
2421 define Device/ruckus_zf7372
2422 $(Device/ruckus_zf73xx_common)
2423 SOC := ar9344
2424 DEVICE_MODEL := ZoneFlex 7352/7372[-E/-U]
2425 endef
2426 TARGET_DEVICES += ruckus_zf7372
2427
2428 define Device/samsung_wam250
2429 SOC := ar9344
2430 DEVICE_VENDOR := Samsung
2431 DEVICE_MODEL := WAM250
2432 IMAGE_SIZE := 15872k
2433 DEVICE_PACKAGES := kmod-usb2
2434 SUPPORTED_DEVICES += wam250
2435 endef
2436 TARGET_DEVICES += samsung_wam250
2437
2438 define Device/siemens_ws-ap3610
2439 SOC := ar7161
2440 DEVICE_VENDOR := Siemens
2441 DEVICE_MODEL := WS-AP3610
2442 IMAGE_SIZE := 14336k
2443 BLOCKSIZE := 256k
2444 LOADER_TYPE := bin
2445 LOADER_FLASH_OFFS := 0x82000
2446 COMPILE := loader-$(1).bin
2447 COMPILE/loader-$(1).bin := loader-okli-compile
2448 KERNEL := kernel-bin | append-dtb | lzma | uImage lzma -M 0x4f4b4c49 | loader-okli $(1) 8128 | uImage none
2449 KERNEL_INITRAMFS := kernel-bin | append-dtb | uImage none
2450 endef
2451 TARGET_DEVICES += siemens_ws-ap3610
2452
2453 define Device/sitecom_wlr-7100
2454 SOC := ar1022
2455 DEVICE_VENDOR := Sitecom
2456 DEVICE_MODEL := WLR-7100
2457 DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct-smallbuffers kmod-usb2
2458 IMAGES += factory.dlf
2459 IMAGE/factory.dlf := append-kernel | pad-to $$$$(BLOCKSIZE) | \
2460 append-rootfs | pad-rootfs | check-size | \
2461 senao-header -r 0x222 -p 0x53 -t 2
2462 IMAGE_SIZE := 7488k
2463 endef
2464 TARGET_DEVICES += sitecom_wlr-7100
2465
2466 define Device/sitecom_wlr-8100
2467 SOC := qca9558
2468 DEVICE_VENDOR := Sitecom
2469 DEVICE_MODEL := WLR-8100
2470 DEVICE_ALT0_VENDOR := Sitecom
2471 DEVICE_ALT0_MODEL := X8 AC1750
2472 DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct kmod-usb2 kmod-usb3
2473 SUPPORTED_DEVICES += wlr8100
2474 IMAGES += factory.dlf
2475 IMAGE/factory.dlf := append-kernel | pad-to $$$$(BLOCKSIZE) | \
2476 append-rootfs | pad-rootfs | check-size | \
2477 senao-header -r 0x222 -p 0x56 -t 2
2478 IMAGE_SIZE := 15424k
2479 endef
2480 TARGET_DEVICES += sitecom_wlr-8100
2481
2482 define Device/sophos_ap15
2483 SOC := qca9558
2484 DEVICE_VENDOR := Sophos
2485 DEVICE_MODEL := AP15
2486 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
2487 IMAGE_SIZE := 15936k
2488 endef
2489 TARGET_DEVICES += sophos_ap15
2490
2491 define Device/sophos_ap55
2492 SOC := qca9558
2493 DEVICE_VENDOR := Sophos
2494 DEVICE_MODEL := AP55
2495 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct kmod-usb2
2496 IMAGE_SIZE := 15936k
2497 endef
2498 TARGET_DEVICES += sophos_ap55
2499
2500 define Device/sophos_ap55c
2501 SOC := qca9558
2502 DEVICE_VENDOR := Sophos
2503 DEVICE_MODEL := AP55C
2504 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
2505 IMAGE_SIZE := 15936k
2506 endef
2507 TARGET_DEVICES += sophos_ap55c
2508
2509 define Device/sophos_ap100
2510 SOC := qca9558
2511 DEVICE_VENDOR := Sophos
2512 DEVICE_MODEL := AP100
2513 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct kmod-usb2
2514 IMAGE_SIZE := 15936k
2515 endef
2516 TARGET_DEVICES += sophos_ap100
2517
2518 define Device/sophos_ap100c
2519 SOC := qca9558
2520 DEVICE_VENDOR := Sophos
2521 DEVICE_MODEL := AP100C
2522 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
2523 IMAGE_SIZE := 15936k
2524 endef
2525 TARGET_DEVICES += sophos_ap100c
2526
2527 define Device/telco_t1
2528 SOC := qca9531
2529 DEVICE_VENDOR := Telco
2530 DEVICE_MODEL := T1
2531 DEVICE_PACKAGES := kmod-usb2 kmod-usb-net-qmi-wwan \
2532 kmod-usb-serial-option uqmi -swconfig -uboot-envtools
2533 IMAGE_SIZE := 16192k
2534 SUPPORTED_DEVICES += telco_electronics,tel-t1
2535 endef
2536 TARGET_DEVICES += telco_t1
2537
2538 define Device/teltonika_rut230-v1
2539 SOC := ar9331
2540 DEVICE_VENDOR := Teltonika
2541 DEVICE_MODEL := RUT230
2542 DEVICE_VARIANT := v1
2543 DEVICE_PACKAGES := kmod-usb-chipidea2 kmod-usb-acm kmod-usb-net-qmi-wwan \
2544 uqmi -uboot-envtools
2545 IMAGE_SIZE := 15552k
2546 TPLINK_HWID := 0x32200002
2547 TPLINK_HWREV := 0x1
2548 TPLINK_HEADER_VERSION := 1
2549 KERNEL := kernel-bin | append-dtb | lzma | teltonika-v1-header
2550 KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma | uImage lzma
2551 IMAGES += factory.bin
2552 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs |\
2553 pad-rootfs | pad-extra 64 | teltonika-fw-fake-checksum 54 | check-size
2554 IMAGE/sysupgrade.bin := append-kernel | pad-to $$$$(BLOCKSIZE) |\
2555 append-rootfs | pad-rootfs | append-metadata |\
2556 check-size
2557 endef
2558 TARGET_DEVICES += teltonika_rut230-v1
2559
2560 define Device/teltonika_rut300
2561 SOC := qca9531
2562 DEVICE_VENDOR := Teltonika
2563 DEVICE_MODEL := RUT300
2564 SUPPORTED_TELTONIKA_DEVICES := teltonika,rut30x
2565 DEVICE_PACKAGES := -kmod-ath9k -uboot-envtools -wpad-basic-wolfssl kmod-usb2
2566 IMAGE_SIZE := 15552k
2567 IMAGES += factory.bin
2568 IMAGE/factory.bin = append-kernel | pad-to $$$$(BLOCKSIZE) | \
2569 append-rootfs | pad-rootfs | append-metadata-teltonika | \
2570 check-size $$$$(IMAGE_SIZE)
2571 IMAGE/sysupgrade.bin = append-kernel | pad-to $$$$(BLOCKSIZE) | \
2572 append-rootfs | pad-rootfs | append-metadata | \
2573 check-size $$$$(IMAGE_SIZE)
2574 endef
2575 TARGET_DEVICES += teltonika_rut300
2576
2577 define Device/teltonika_rut955
2578 SOC := ar9344
2579 DEVICE_VENDOR := Teltonika
2580 DEVICE_MODEL := RUT955
2581 DEVICE_PACKAGES := kmod-usb2 kmod-usb-acm kmod-usb-net-qmi-wwan \
2582 kmod-usb-serial-option kmod-hwmon-mcp3021 uqmi -uboot-envtools
2583 IMAGE_SIZE := 15552k
2584 TPLINK_HWID := 0x35000001
2585 TPLINK_HWREV := 0x1
2586 TPLINK_HEADER_VERSION := 1
2587 KERNEL := kernel-bin | append-dtb | lzma | tplink-v1-header
2588 KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma | uImage lzma
2589 IMAGES += factory.bin
2590 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs |\
2591 pad-rootfs | teltonika-fw-fake-checksum 20 | append-string master |\
2592 append-md5sum-bin | check-size
2593 IMAGE/sysupgrade.bin := append-kernel | pad-to $$$$(BLOCKSIZE) |\
2594 append-rootfs | pad-rootfs | check-size | append-metadata
2595 endef
2596 TARGET_DEVICES += teltonika_rut955
2597
2598 define Device/teltonika_rut955-h7v3c0
2599 $(Device/teltonika_rut955)
2600 DEVICE_VARIANT := H7V3C0
2601 endef
2602 TARGET_DEVICES += teltonika_rut955-h7v3c0
2603
2604 define Device/trendnet_tew-673gru
2605 SOC := ar7161
2606 DEVICE_VENDOR := Trendnet
2607 DEVICE_MODEL := TEW-673GRU
2608 DEVICE_VARIANT := v1.0R
2609 DEVICE_PACKAGES := -uboot-envtools kmod-usb-ohci kmod-usb2 \
2610 kmod-owl-loader kmod-switch-rtl8366s
2611 IMAGE_SIZE := 7808k
2612 FACTORY_SIZE := 6144k
2613 IMAGES += factory.bin
2614 IMAGE/factory.bin = append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | \
2615 pad-rootfs | check-size $$$$(FACTORY_SIZE) | pad-to $$$$(FACTORY_SIZE) | \
2616 append-string AP94-AR7161-RT-080619-01
2617 endef
2618 TARGET_DEVICES += trendnet_tew-673gru
2619
2620 define Device/trendnet_tew-823dru
2621 SOC := qca9558
2622 DEVICE_VENDOR := Trendnet
2623 DEVICE_MODEL := TEW-823DRU
2624 DEVICE_VARIANT := v1.0R
2625 DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
2626 SUPPORTED_DEVICES += tew-823dru
2627 IMAGE_SIZE := 15296k
2628 IMAGES := factory.bin sysupgrade.bin
2629 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | \
2630 pad-rootfs
2631 IMAGE/factory.bin := $$(IMAGE/default) | pad-offset $$$$(IMAGE_SIZE) 26 | \
2632 append-string 00AP135AR9558-RT-131129-00 | check-size
2633 IMAGE/sysupgrade.bin := $$(IMAGE/default) | check-size | append-metadata
2634 endef
2635 TARGET_DEVICES += trendnet_tew-823dru
2636
2637 define Device/wallys_dr531
2638 SOC := qca9531
2639 DEVICE_VENDOR := Wallys
2640 DEVICE_MODEL := DR531
2641 DEVICE_PACKAGES := kmod-usb2 rssileds
2642 IMAGE_SIZE := 7808k
2643 SUPPORTED_DEVICES += dr531
2644 endef
2645 TARGET_DEVICES += wallys_dr531
2646
2647 define Device/watchguard_ap100
2648 $(Device/senao_loader_okli)
2649 SOC := ar9344
2650 DEVICE_VENDOR := WatchGuard
2651 DEVICE_MODEL := AP100
2652 IMAGE_SIZE := 12096k
2653 LOADER_FLASH_OFFS := 0x220000
2654 SENAO_IMGNAME := senao-ap100
2655 WATCHGUARD_MAGIC := 82kdlzk2
2656 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | \
2657 check-size | senao-tar-gz $$$$(SENAO_IMGNAME) | watchguard-cksum $$$$(WATCHGUARD_MAGIC)
2658 endef
2659 TARGET_DEVICES += watchguard_ap100
2660
2661 define Device/watchguard_ap200
2662 $(Device/senao_loader_okli)
2663 SOC := ar9344
2664 DEVICE_VENDOR := WatchGuard
2665 DEVICE_MODEL := AP200
2666 IMAGE_SIZE := 12096k
2667 LOADER_FLASH_OFFS := 0x220000
2668 SENAO_IMGNAME := senao-ap200
2669 WATCHGUARD_MAGIC := 82kdlzk2
2670 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | \
2671 check-size | senao-tar-gz $$$$(SENAO_IMGNAME) | watchguard-cksum $$$$(WATCHGUARD_MAGIC)
2672 endef
2673 TARGET_DEVICES += watchguard_ap200
2674
2675 define Device/watchguard_ap300
2676 $(Device/senao_loader_okli)
2677 SOC := qca9558
2678 DEVICE_VENDOR := WatchGuard
2679 DEVICE_MODEL := AP300
2680 DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct
2681 IMAGE_SIZE := 11584k
2682 LOADER_FLASH_OFFS := 0x220000
2683 SENAO_IMGNAME := senao-ap300
2684 WATCHGUARD_MAGIC := 82kdlzk2
2685 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | \
2686 check-size | senao-tar-gz $$$$(SENAO_IMGNAME) | watchguard-cksum $$$$(WATCHGUARD_MAGIC)
2687 endef
2688 TARGET_DEVICES += watchguard_ap300
2689
2690 define Device/wd_mynet-n600
2691 $(Device/seama)
2692 SOC := ar9344
2693 DEVICE_VENDOR := Western Digital
2694 DEVICE_MODEL := My Net N600
2695 IMAGE_SIZE := 15872k
2696 DEVICE_PACKAGES := kmod-usb2
2697 SEAMA_SIGNATURE := wrgnd16_wd_db600
2698 SUPPORTED_DEVICES += mynet-n600
2699 endef
2700 TARGET_DEVICES += wd_mynet-n600
2701
2702 define Device/wd_mynet-n750
2703 $(Device/seama)
2704 SOC := ar9344
2705 DEVICE_VENDOR := Western Digital
2706 DEVICE_MODEL := My Net N750
2707 IMAGE_SIZE := 15872k
2708 DEVICE_PACKAGES := kmod-usb2
2709 SEAMA_SIGNATURE := wrgnd13_wd_av
2710 SUPPORTED_DEVICES += mynet-n750
2711 endef
2712 TARGET_DEVICES += wd_mynet-n750
2713
2714 define Device/wd_mynet-wifi-rangeextender
2715 SOC := ar9344
2716 DEVICE_VENDOR := Western Digital
2717 DEVICE_MODEL := My Net Wi-Fi Range Extender
2718 DEVICE_PACKAGES := rssileds nvram -swconfig
2719 IMAGE_SIZE := 7808k
2720 ADDPATTERN_ID := mynet-rext
2721 ADDPATTERN_VERSION := 1.00.01
2722 IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | cybertan-trx | \
2723 addpattern | append-metadata
2724 SUPPORTED_DEVICES += mynet-rext
2725 endef
2726 TARGET_DEVICES += wd_mynet-wifi-rangeextender
2727
2728 define Device/winchannel_wb2000
2729 SOC := ar9344
2730 DEVICE_VENDOR := Winchannel
2731 DEVICE_MODEL := WB2000
2732 IMAGE_SIZE := 15872k
2733 DEVICE_PACKAGES := kmod-i2c-gpio kmod-rtc-ds1307 kmod-usb2 \
2734 kmod-usb-ledtrig-usbport
2735 endef
2736 TARGET_DEVICES += winchannel_wb2000
2737
2738 define Device/xiaomi_aiot-ac2350
2739 SOC := qca9563
2740 DEVICE_VENDOR := Xiaomi
2741 DEVICE_MODEL := AIoT AC2350
2742 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9984-ct
2743 IMAGE_SIZE := 14336k
2744 endef
2745 TARGET_DEVICES += xiaomi_aiot-ac2350
2746
2747 define Device/xiaomi_mi-router-4q
2748 SOC := qca9561
2749 DEVICE_VENDOR := Xiaomi
2750 DEVICE_MODEL := Mi Router 4Q
2751 IMAGE_SIZE := 14336k
2752 endef
2753 TARGET_DEVICES += xiaomi_mi-router-4q
2754
2755 define Device/yuncore_a770
2756 SOC := qca9531
2757 DEVICE_VENDOR := YunCore
2758 DEVICE_MODEL := A770
2759 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9887-ct
2760 IMAGE_SIZE := 16000k
2761 IMAGES += tftp.bin
2762 IMAGE/tftp.bin := $$(IMAGE/sysupgrade.bin) | yuncore-tftp-header-16m
2763 endef
2764 TARGET_DEVICES += yuncore_a770
2765
2766 define Device/yuncore_a782
2767 SOC := qca9563
2768 DEVICE_VENDOR := YunCore
2769 DEVICE_MODEL := A782
2770 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9888-ct
2771 IMAGE_SIZE := 16000k
2772 IMAGES += tftp.bin
2773 IMAGE/tftp.bin := $$(IMAGE/sysupgrade.bin) | yuncore-tftp-header-16m
2774 endef
2775 TARGET_DEVICES += yuncore_a782
2776
2777 define Device/yuncore_a930
2778 SOC := qca9533
2779 DEVICE_VENDOR := YunCore
2780 DEVICE_MODEL := A930
2781 IMAGE_SIZE := 16000k
2782 IMAGES += tftp.bin
2783 IMAGE/tftp.bin := $$(IMAGE/sysupgrade.bin) | yuncore-tftp-header-16m
2784 endef
2785 TARGET_DEVICES += yuncore_a930
2786
2787 define Device/yuncore_xd3200
2788 SOC := qca9563
2789 DEVICE_VENDOR := YunCore
2790 DEVICE_MODEL := XD3200
2791 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
2792 IMAGE_SIZE := 16000k
2793 IMAGES += tftp.bin
2794 IMAGE/tftp.bin := $$(IMAGE/sysupgrade.bin) | yuncore-tftp-header-16m
2795 endef
2796 TARGET_DEVICES += yuncore_xd3200
2797
2798 define Device/yuncore_xd4200
2799 SOC := qca9563
2800 DEVICE_VENDOR := YunCore
2801 DEVICE_MODEL := XD4200
2802 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9888-ct
2803 IMAGE_SIZE := 16000k
2804 IMAGES += tftp.bin
2805 IMAGE/tftp.bin := $$(IMAGE/sysupgrade.bin) | yuncore-tftp-header-16m
2806 endef
2807 TARGET_DEVICES += yuncore_xd4200
2808
2809 define Device/ziking_cpe46b
2810 SOC := ar9330
2811 DEVICE_VENDOR := ZiKing
2812 DEVICE_MODEL := CPE46B
2813 IMAGE_SIZE := 8000k
2814 DEVICE_PACKAGES := kmod-i2c-gpio
2815 endef
2816 TARGET_DEVICES += ziking_cpe46b
2817
2818 define Device/zbtlink_zbt-wd323
2819 SOC := ar9344
2820 DEVICE_VENDOR := ZBT
2821 DEVICE_MODEL := WD323
2822 IMAGE_SIZE := 16000k
2823 DEVICE_PACKAGES := kmod-usb2 kmod-i2c-gpio kmod-rtc-pcf8563 \
2824 kmod-usb-serial-cp210x uqmi
2825 endef
2826 TARGET_DEVICES += zbtlink_zbt-wd323
2827
2828 define Device/zyxel_nwa11xx
2829 $(Device/loader-okli-uimage)
2830 SOC := ar9342
2831 DEVICE_VENDOR := ZyXEL
2832 LOADER_FLASH_OFFS := 0x050000
2833 KERNEL := kernel-bin | append-dtb | lzma | uImage lzma -M 0x4f4b4c49
2834 IMAGE_SIZE := 8192k
2835 IMAGES += factory-$$$$(ZYXEL_MODEL_STRING).bin
2836 IMAGE/factory-$$$$(ZYXEL_MODEL_STRING).bin := \
2837 append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | \
2838 pad-rootfs | pad-to 8192k | check-size | zyxel-tar-bz2 \
2839 vmlinux_mi124_f1e mi124_f1e-jffs2 | append-md5sum-bin
2840 endef
2841
2842 define Device/zyxel_nwa1100-nh
2843 $(Device/zyxel_nwa11xx)
2844 DEVICE_MODEL := NWA1100
2845 DEVICE_VARIANT := NH
2846 ZYXEL_MODEL_STRING := AASI
2847 endef
2848 TARGET_DEVICES += zyxel_nwa1100-nh
2849
2850 define Device/zyxel_nwa1121-ni
2851 $(Device/zyxel_nwa11xx)
2852 DEVICE_MODEL := NWA1121
2853 DEVICE_VARIANT := NI
2854 ZYXEL_MODEL_STRING := AABJ
2855 endef
2856 TARGET_DEVICES += zyxel_nwa1121-ni
2857
2858 define Device/zyxel_nwa1123-ac
2859 $(Device/zyxel_nwa11xx)
2860 DEVICE_MODEL := NWA1123
2861 DEVICE_VARIANT := AC
2862 ZYXEL_MODEL_STRING := AAOX
2863 DEVICE_PACKAGES := kmod-ath10k-ct-smallbuffers \
2864 ath10k-firmware-qca988x-ct
2865 endef
2866 TARGET_DEVICES += zyxel_nwa1123-ac
2867
2868 define Device/zyxel_nwa1123-ni
2869 $(Device/zyxel_nwa11xx)
2870 DEVICE_MODEL := NWA1123
2871 DEVICE_VARIANT := NI
2872 ZYXEL_MODEL_STRING := AAEO
2873 endef
2874 TARGET_DEVICES += zyxel_nwa1123-ni
2875
2876 define Device/zyxel_nbg6616
2877 SOC := qca9557
2878 DEVICE_VENDOR := ZyXEL
2879 DEVICE_MODEL := NBG6616
2880 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport kmod-rtc-pcf8563 \
2881 kmod-ath10k-ct ath10k-firmware-qca988x-ct
2882 IMAGE_SIZE := 15232k
2883 RAS_BOARD := NBG6616
2884 RAS_ROOTFS_SIZE := 14464k
2885 RAS_VERSION := "OpenWrt Linux-$(LINUX_VERSION)"
2886 IMAGES += factory.bin
2887 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
2888 append-rootfs | pad-rootfs | pad-to 64k | check-size | zyxel-ras-image
2889 SUPPORTED_DEVICES += nbg6616
2890 endef
2891 TARGET_DEVICES += zyxel_nbg6616