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