011bb41262069f3351c6ada5ce740061c536eb05
[oweals/openwrt.git] / target / linux / ath79 / image / generic.mk
1 include ./common-buffalo.mk
2 include ./common-netgear.mk
3 include ./common-tp-link.mk
4
5 DEVICE_VARS += ADDPATTERN_ID ADDPATTERN_VERSION
6 DEVICE_VARS += SEAMA_SIGNATURE SEAMA_MTDBLOCK
7 DEVICE_VARS += KERNEL_INITRAMFS_PREFIX
8
9 define Build/add-elecom-factory-initramfs
10   $(eval edimax_model=$(word 1,$(1)))
11   $(eval product=$(word 2,$(1)))
12
13   $(STAGING_DIR_HOST)/bin/mkedimaximg \
14         -b -s CSYS -m $(edimax_model) \
15         -f 0x70000 -S 0x01100000 \
16         -i $@ -o $@.factory
17
18   ( \
19         echo -n -e "ELECOM\x00\x00$(product)" | dd bs=40 count=1 conv=sync; \
20         echo -n "0.00" | dd bs=16 count=1 conv=sync; \
21         dd if=$@.factory; \
22   ) > $@.factory.new
23
24   if [ "$$(stat -c%s $@.factory.new)" -le $$(($(subst k,* 1024,$(subst m, * 1024k,$(IMAGE_SIZE))))) ]; then \
25         mv $@.factory.new $(BIN_DIR)/$(KERNEL_INITRAMFS_PREFIX)-factory.bin; \
26   else \
27         echo "WARNING: initramfs kernel image too big, cannot generate factory image" >&2; \
28   fi
29 endef
30
31 define Build/addpattern
32         -$(STAGING_DIR_HOST)/bin/addpattern -B $(ADDPATTERN_ID) \
33                 -v v$(ADDPATTERN_VERSION) -i $@ -o $@.new
34         -mv "$@.new" "$@"
35 endef
36
37 define Build/cybertan-trx
38         @echo -n '' > $@-empty.bin
39         -$(STAGING_DIR_HOST)/bin/trx -o $@.new \
40                 -f $(IMAGE_KERNEL) -F $@-empty.bin \
41                 -x 32 -a 0x10000 -x -32 -f $@
42         -mv "$@.new" "$@"
43         -rm $@-empty.bin
44 endef
45
46 define Build/nec-enc
47   $(STAGING_DIR_HOST)/bin/nec-enc \
48     -i $@ -o $@.new -k $(1)
49   mv $@.new $@
50 endef
51
52 define Build/nec-fw
53   ( stat -c%s $@ | tr -d "\n" | dd bs=16 count=1 conv=sync; ) >> $@
54   ( \
55     echo -n -e "$(1)" | dd bs=16 count=1 conv=sync; \
56     echo -n "0.0.00" | dd bs=16 count=1 conv=sync; \
57     dd if=$@; \
58   ) > $@.new
59   mv $@.new $@
60 endef
61
62 define Build/pisen_wmb001n-factory
63   -[ -f "$@" ] && \
64   mkdir -p "$@.tmp" && \
65   cp "$(KDIR)/loader-$(word 1,$(1)).uImage" "$@.tmp/uImage" && \
66   mv "$@" "$@.tmp/rootfs" && \
67   cp "bin/pisen_wmb001n_factory-header.bin" "$@" && \
68   $(TAR) -cp --numeric-owner --owner=0 --group=0 --mode=a-s --sort=name \
69     $(if $(SOURCE_DATE_EPOCH),--mtime="@$(SOURCE_DATE_EPOCH)") \
70     -C "$@.tmp" . | gzip -9n >> "$@" && \
71   rm -rf "$@.tmp"
72 endef
73
74 define Device/seama
75   KERNEL := kernel-bin | append-dtb | relocate-kernel | lzma
76   KERNEL_INITRAMFS := $$(KERNEL) | seama
77   IMAGES += factory.bin
78   SEAMA_MTDBLOCK := 1
79
80   # 64 bytes offset:
81   # - 28 bytes seama_header
82   # - 36 bytes of META data (4-bytes aligned)
83   IMAGE/default := append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | append-rootfs
84   IMAGE/sysupgrade.bin := \
85         $$(IMAGE/default) | seama | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
86   IMAGE/factory.bin := \
87         $$(IMAGE/default) | pad-rootfs -x 64 | seama | seama-seal | check-size $$$$(IMAGE_SIZE)
88   SEAMA_SIGNATURE :=
89 endef
90
91
92 define Device/8dev_carambola2
93   ATH_SOC := ar9331
94   DEVICE_VENDOR := 8devices
95   DEVICE_MODEL := Carambola2
96   DEVICE_PACKAGES := kmod-usb2 kmod-usb-chipidea2
97   IMAGE_SIZE := 16000k
98   SUPPORTED_DEVICES += carambola2
99 endef
100 TARGET_DEVICES += 8dev_carambola2
101
102 define Device/adtran_bsap1880
103   ATH_SOC := ar7161
104   DEVICE_VENDOR := Adtran/Bluesocket
105   DEVICE_PACKAGES += -swconfig -uboot-envtools fconfig
106   KERNEL := kernel-bin | append-dtb | lzma | pad-to $$(BLOCKSIZE)
107   KERNEL_INITRAMFS := kernel-bin | append-dtb
108   IMAGE_SIZE := 11200k
109   IMAGES += kernel.bin rootfs.bin
110   IMAGE/kernel.bin := append-kernel
111   IMAGE/rootfs.bin := append-rootfs | pad-rootfs
112   IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) | sysupgrade-tar rootfs=$$$$@ | append-metadata
113 endef
114
115 define Device/adtran_bsap1800-v2
116   $(Device/adtran_bsap1880)
117   DEVICE_MODEL := BSAP-1800
118   DEVICE_VARIANT := v2
119 endef
120 TARGET_DEVICES += adtran_bsap1800-v2
121
122 define Device/adtran_bsap1840
123   $(Device/adtran_bsap1880)
124   DEVICE_MODEL := BSAP-1840
125 endef
126 TARGET_DEVICES += adtran_bsap1840
127
128 define Device/alfa-network_ap121f
129   ATH_SOC := ar9331
130   DEVICE_VENDOR := ALFA Network
131   DEVICE_MODEL := AP121F
132   DEVICE_PACKAGES := kmod-usb2 kmod-usb-chipidea2 kmod-usb-storage -swconfig
133   IMAGE_SIZE := 16064k
134   SUPPORTED_DEVICES += ap121f
135 endef
136 TARGET_DEVICES += alfa-network_ap121f
137
138 define Device/aruba_ap-105
139   ATH_SOC := ar7161
140   DEVICE_VENDOR := Aruba
141   DEVICE_MODEL := AP-105
142   IMAGE_SIZE := 16000k
143   DEVICE_PACKAGES := kmod-i2c-core kmod-i2c-gpio kmod-tpm-i2c-atmel
144 endef
145 TARGET_DEVICES += aruba_ap-105
146
147 define Device/avm_fritz300e
148   ATH_SOC := ar7242
149   DEVICE_VENDOR := AVM
150   DEVICE_MODEL := FRITZ!WLAN Repeater 300E
151   KERNEL := kernel-bin | append-dtb | lzma | eva-image
152   KERNEL_INITRAMFS := $$(KERNEL)
153   IMAGE_SIZE := 15232k
154   IMAGE/sysupgrade.bin := append-kernel | pad-to 64k | \
155         append-squashfs-fakeroot-be | pad-to 256 | \
156         append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
157   DEVICE_PACKAGES := fritz-tffs rssileds -swconfig
158 endef
159 TARGET_DEVICES += avm_fritz300e
160
161 define Device/avm_fritz4020
162   ATH_SOC := qca9561
163   DEVICE_VENDOR := AVM
164   DEVICE_MODEL := FRITZ!Box 4020
165   IMAGE_SIZE := 15232k
166   KERNEL := kernel-bin | append-dtb | lzma | eva-image
167   KERNEL_INITRAMFS := $$(KERNEL)
168   IMAGE/sysupgrade.bin := append-kernel | pad-to 64k | \
169       append-squashfs-fakeroot-be | pad-to 256 | \
170       append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
171   DEVICE_PACKAGES := fritz-tffs
172   SUPPORTED_DEVICES += fritz4020
173 endef
174 TARGET_DEVICES += avm_fritz4020
175
176 define Device/buffalo_bhr-4grv
177   ATH_SOC := ar7242
178   DEVICE_VENDOR := Buffalo
179   DEVICE_MODEL := BHR-4GRV
180   DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
181   IMAGE_SIZE := 32256k
182   IMAGES += factory.bin tftp.bin
183   IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
184   IMAGE/factory.bin := $$(IMAGE/default) | buffalo-enc BHR-4GRV 1.99 | buffalo-tag BHR-4GRV 3
185   IMAGE/tftp.bin := $$(IMAGE/default) | buffalo-tftp-header
186   SUPPORTED_DEVICES += wzr-hp-g450h
187 endef
188 TARGET_DEVICES += buffalo_bhr-4grv
189
190 define Device/buffalo_bhr-4grv2
191   ATH_SOC := qca9557
192   DEVICE_VENDOR := Buffalo
193   DEVICE_MODEL := BHR-4GRV2
194   IMAGE_SIZE := 16000k
195 endef
196 TARGET_DEVICES += buffalo_bhr-4grv2
197
198 define Device/buffalo_wzr-hp-ag300h
199   ATH_SOC := ar7161
200   DEVICE_VENDOR := Buffalo
201   DEVICE_MODEL := WZR-HP-AG300H
202   IMAGE_SIZE := 32320k
203   IMAGES += factory.bin tftp.bin
204   IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
205   IMAGE/factory.bin := $$(IMAGE/default) | buffalo-enc WZR-HP-AG300H 1.99 | buffalo-tag WZR-HP-AG300H 3
206   IMAGE/tftp.bin := $$(IMAGE/default) | buffalo-tftp-header
207   DEVICE_PACKAGES := kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport kmod-leds-reset kmod-owl-loader
208   SUPPORTED_DEVICES += wzr-hp-ag300h
209 endef
210 TARGET_DEVICES += buffalo_wzr-hp-ag300h
211
212 define Device/buffalo_wzr-hp-g302h-a1a0
213   ATH_SOC := ar7242
214   DEVICE_VENDOR := Buffalo
215   DEVICE_MODEL := WZR-HP-G302H
216   DEVICE_VARIANT := A1A0
217   DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
218   IMAGE_SIZE := 32128k
219   IMAGES += factory.bin tftp.bin
220   IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
221   IMAGE/factory.bin := $$(IMAGE/default) | buffalo-enc WZR-HP-G302H 1.99 | buffalo-tag WZR-HP-G302H 4
222   IMAGE/tftp.bin := $$(IMAGE/default) | buffalo-tftp-header
223   SUPPORTED_DEVICES += wzr-hp-g300nh2
224 endef
225 TARGET_DEVICES += buffalo_wzr-hp-g302h-a1a0
226
227 define Device/buffalo_wzr-hp-g450h
228   ATH_SOC := ar7242
229   DEVICE_VENDOR := Buffalo
230   DEVICE_MODEL := WZR-HP-G450H/WZR-450HP
231   DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
232   IMAGE_SIZE := 32256k
233   IMAGES += factory.bin tftp.bin
234   IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
235   IMAGE/factory.bin := $$(IMAGE/default) | buffalo-enc WZR-HP-G450H 1.99 | buffalo-tag WZR-HP-G450H 3
236   IMAGE/tftp.bin := $$(IMAGE/default) | buffalo-tftp-header
237   SUPPORTED_DEVICES += wzr-hp-g450h
238 endef
239 TARGET_DEVICES += buffalo_wzr-hp-g450h
240
241 define Device/comfast_cf-e110n-v2
242   ATH_SOC := qca9533
243   DEVICE_VENDOR := COMFAST
244   DEVICE_MODEL := CF-E110N
245   DEVICE_VARIANT := v2
246   DEVICE_PACKAGES := rssileds kmod-leds-gpio -swconfig -uboot-envtools
247   IMAGE_SIZE := 16192k
248 endef
249 TARGET_DEVICES += comfast_cf-e110n-v2
250
251 define Device/comfast_cf-e120a-v3
252   ATH_SOC := ar9344
253   DEVICE_VENDOR := COMFAST
254   DEVICE_MODEL := CF-E120A
255   DEVICE_VARIANT := v3
256   DEVICE_PACKAGES := rssileds kmod-leds-gpio -uboot-envtools
257   IMAGE_SIZE := 8000k
258 endef
259 TARGET_DEVICES += comfast_cf-e120a-v3
260
261 define Device/comfast_cf-e313ac
262   ATH_SOC := qca9531
263   DEVICE_VENDOR := COMFAST
264   DEVICE_MODEL := CF-E313AC
265   DEVICE_PACKAGES := rssileds kmod-leds-gpio kmod-ath10k-ct ath10k-firmware-qca9888-ct \
266         -swconfig -uboot-envtools
267   IMAGE_SIZE := 7936k
268 endef
269 TARGET_DEVICES += comfast_cf-e313ac
270
271 define Device/comfast_cf-e314n-v2
272   ATH_SOC := qca9531
273   DEVICE_VENDOR := COMFAST
274   DEVICE_MODEL := CF-E314N
275   DEVICE_VARIANT := v2
276   DEVICE_PACKAGES := rssileds
277   IMAGE_SIZE := 7936k
278 endef
279 TARGET_DEVICES += comfast_cf-e314n-v2
280
281 define Device/comfast_cf-e5
282   ATH_SOC := qca9531
283   DEVICE_VENDOR := COMFAST
284   DEVICE_MODEL := CF-E5/E7
285   DEVICE_PACKAGES := rssileds kmod-leds-gpio kmod-usb2 kmod-usb-net \
286         kmod-usb-net-qmi-wwan -swconfig -uboot-envtools
287   IMAGE_SIZE := 16192k
288 endef
289 TARGET_DEVICES += comfast_cf-e5
290
291 define Device/comfast_cf-wr650ac-v1
292   ATH_SOC := qca9558
293   DEVICE_VENDOR := COMFAST
294   DEVICE_MODEL := CF-WR650AC
295   DEVICE_VARIANT := v1
296   DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
297   IMAGE_SIZE := 16128k
298 endef
299 TARGET_DEVICES += comfast_cf-wr650ac-v1
300
301 define Device/comfast_cf-wr650ac-v2
302   ATH_SOC := qca9558
303   DEVICE_VENDOR := COMFAST
304   DEVICE_MODEL := CF-WR650AC
305   DEVICE_VARIANT := v2
306   DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
307   IMAGE_SIZE := 16000k
308 endef
309 TARGET_DEVICES += comfast_cf-wr650ac-v2
310
311 define Device/devolo_dvl1200e
312   ATH_SOC := qca9558
313   DEVICE_VENDOR := devolo
314   DEVICE_MODEL := WiFi pro 1200e
315   DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
316   IMAGE_SIZE := 15936k
317 endef
318 TARGET_DEVICES += devolo_dvl1200e
319
320 define Device/devolo_dvl1200i
321   ATH_SOC := qca9558
322   DEVICE_VENDOR := devolo
323   DEVICE_MODEL := WiFi pro 1200i
324   DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
325   IMAGE_SIZE := 15936k
326 endef
327 TARGET_DEVICES += devolo_dvl1200i
328
329 define Device/devolo_dvl1750c
330   ATH_SOC := qca9558
331   DEVICE_VENDOR := devolo
332   DEVICE_MODEL := WiFi pro 1750c
333   DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
334   IMAGE_SIZE := 15936k
335 endef
336 TARGET_DEVICES += devolo_dvl1750c
337
338 define Device/devolo_dvl1750e
339   ATH_SOC := qca9558
340   DEVICE_VENDOR := devolo
341   DEVICE_MODEL := WiFi pro 1750e
342   DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
343   IMAGE_SIZE := 15936k
344 endef
345 TARGET_DEVICES += devolo_dvl1750e
346
347 define Device/devolo_dvl1750i
348   ATH_SOC := qca9558
349   DEVICE_VENDOR := devolo
350   DEVICE_MODEL := WiFi pro 1750i
351   DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
352   IMAGE_SIZE := 15936k
353 endef
354 TARGET_DEVICES += devolo_dvl1750i
355
356 define Device/devolo_dvl1750x
357   ATH_SOC := qca9558
358   DEVICE_VENDOR := devolo
359   DEVICE_MODEL := WiFi pro 1750x
360   DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
361   IMAGE_SIZE := 15936k
362 endef
363 TARGET_DEVICES += devolo_dvl1750x
364
365 define Device/dlink_dir-825-b1
366   ATH_SOC := ar7161
367   DEVICE_VENDOR := D-Link
368   DEVICE_MODEL := DIR-825
369   DEVICE_VARIANT := B1
370   IMAGE_SIZE := 6208k
371   IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
372   DEVICE_PACKAGES := kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport kmod-leds-reset kmod-owl-loader
373   SUPPORTED_DEVICES += dir-825-b1
374 endef
375 TARGET_DEVICES += dlink_dir-825-b1
376
377 define Device/dlink_dir-825-c1
378   ATH_SOC := ar9344
379   DEVICE_VENDOR := D-Link
380   DEVICE_MODEL := DIR-825
381   DEVICE_VARIANT := C1
382   DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport kmod-leds-reset kmod-owl-loader
383   SUPPORTED_DEVICES += dir-825-c1
384   IMAGE_SIZE := 15936k
385   IMAGES := factory.bin sysupgrade.bin
386   IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs
387   IMAGE/factory.bin := $$(IMAGE/default) | pad-offset $$$$(IMAGE_SIZE) 26 | \
388         append-string 00DB120AR9344-RT-101214-00 | check-size $$$$(IMAGE_SIZE)
389   IMAGE/sysupgrade.bin := $$(IMAGE/default) | append-metadata | check-size $$$$(IMAGE_SIZE)
390 endef
391 TARGET_DEVICES += dlink_dir-825-c1
392
393 define Device/dlink_dir-835-a1
394   ATH_SOC := ar9344
395   DEVICE_VENDOR := D-Link
396   DEVICE_MODEL := DIR-835
397   DEVICE_VARIANT := A1
398   DEVICE_PACKAGES := kmod-usb2 kmod-leds-reset kmod-owl-loader
399   SUPPORTED_DEVICES += dir-835-a1
400   IMAGE_SIZE := 15936k
401   IMAGES := factory.bin sysupgrade.bin
402   IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs
403   IMAGE/factory.bin := $$(IMAGE/default) | pad-offset $$$$(IMAGE_SIZE) 26 | \
404         append-string 00DB120AR9344-RT-101214-00 | check-size $$$$(IMAGE_SIZE)
405   IMAGE/sysupgrade.bin := $$(IMAGE/default) | append-metadata | check-size $$$$(IMAGE_SIZE)
406 endef
407 TARGET_DEVICES += dlink_dir-835-a1
408
409 define Device/dlink_dir-842-c
410   ATH_SOC := qca9563
411   DEVICE_VENDOR := D-Link
412   DEVICE_MODEL := DIR-842
413   KERNEL := kernel-bin | append-dtb | relocate-kernel | lzma
414   KERNEL_INITRAMFS := $$(KERNEL) | seama
415   IMAGES += factory.bin
416   SEAMA_MTDBLOCK := 5
417   SEAMA_SIGNATURE := wrgac65_dlink.2015_dir842
418   # 64 bytes offset:
419   # - 28 bytes seama_header
420   # - 36 bytes of META data (4-bytes aligned)
421   IMAGE/default := append-kernel | uImage lzma | pad-offset $$$$(BLOCKSIZE) 64 | append-rootfs
422   IMAGE/sysupgrade.bin := \
423         $$(IMAGE/default) | seama | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
424   IMAGE/factory.bin := \
425         $$(IMAGE/default) | pad-rootfs -x 64 | seama | seama-seal | check-size $$$$(IMAGE_SIZE)
426   IMAGE_SIZE := 15680k
427 endef
428
429 define Device/dlink_dir-842-c1
430   $(Device/dlink_dir-842-c)
431   DEVICE_VARIANT := C1
432   DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9888-ct
433 endef
434 TARGET_DEVICES += dlink_dir-842-c1
435
436 define Device/dlink_dir-842-c2
437   $(Device/dlink_dir-842-c)
438   DEVICE_VARIANT := C2
439   DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca9888-ct
440 endef
441 TARGET_DEVICES += dlink_dir-842-c2
442
443 define Device/dlink_dir-842-c3
444   $(Device/dlink_dir-842-c)
445   DEVICE_VARIANT := C3
446   DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9888-ct
447 endef
448 TARGET_DEVICES += dlink_dir-842-c3
449
450 define Device/dlink_dir-859-a1
451   $(Device/seama)
452   ATH_SOC := qca9563
453   DEVICE_VENDOR := D-Link
454   DEVICE_MODEL := DIR-859
455   DEVICE_VARIANT := A1
456   IMAGE_SIZE := 15872k
457   DEVICE_PACKAGES :=  kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
458   SEAMA_SIGNATURE := wrgac37_dlink.2013gui_dir859
459   SUPPORTED_DEVICES += dir-859-a1
460 endef
461 TARGET_DEVICES += dlink_dir-859-a1
462
463 define Device/elecom_wrc-1750ghbk2-i
464   ATH_SOC := qca9563
465   DEVICE_VENDOR := ELECOM
466   DEVICE_MODEL := WRC-1750GHBK2-I/C
467   IMAGE_SIZE := 15808k
468   KERNEL_INITRAMFS := $$(KERNEL) | pad-to 2 | \
469         add-elecom-factory-initramfs RN68 WRC-1750GHBK2
470   DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
471 endef
472 TARGET_DEVICES += elecom_wrc-1750ghbk2-i
473
474 define Device/elecom_wrc-300ghbk2-i
475   ATH_SOC := qca9563
476   DEVICE_VENDOR := ELECOM
477   DEVICE_MODEL := WRC-300GHBK2-I
478   IMAGE_SIZE := 7616k
479   KERNEL_INITRAMFS := $$(KERNEL) | pad-to 2 | \
480         add-elecom-factory-initramfs RN51 WRC-300GHBK2-I
481 endef
482 TARGET_DEVICES += elecom_wrc-300ghbk2-i
483
484 define Device/embeddedwireless_dorin
485   ATH_SOC := ar9331
486   DEVICE_VENDOR := Embedded Wireless
487   DEVICE_MODEL := Dorin
488   DEVICE_PACKAGES := kmod-usb-chipidea2
489   IMAGE_SIZE := 16000k
490 endef
491 TARGET_DEVICES += embeddedwireless_dorin
492
493 define Device/engenius_ecb1750
494   ATH_SOC := qca9558
495   DEVICE_VENDOR := EnGenius
496   DEVICE_MODEL := ECB1750
497   DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
498   IMAGE_SIZE := 15680k
499   IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
500     append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) | \
501     senao-header -r 0x101 -p 0x6d -t 2
502   IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
503 endef
504 TARGET_DEVICES += engenius_ecb1750
505
506 define Device/engenius_epg5000
507   ATH_SOC := qca9558
508   DEVICE_VENDOR := EnGenius
509   DEVICE_MODEL := EPG5000
510   DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct kmod-usb2
511   IMAGE_SIZE := 14656k
512   IMAGES += factory.dlf
513   IMAGE/factory.dlf := append-kernel | pad-to $$$$(BLOCKSIZE) | \
514         append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) | \
515         senao-header -r 0x101 -p 0x71 -t 2
516   SUPPORTED_DEVICES += epg5000
517 endef
518 TARGET_DEVICES += engenius_epg5000
519
520 define Device/engenius_ews511ap
521   ATH_SOC := qca9531
522   DEVICE_VENDOR := EnGenius
523   DEVICE_MODEL := EWS511AP
524   DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9887-ct
525   IMAGE_SIZE := 16000k
526 endef
527 TARGET_DEVICES += engenius_ews511ap
528
529 define Device/etactica_eg200
530   ATH_SOC := ar9331
531   DEVICE_VENDOR := eTactica
532   DEVICE_MODEL := EG200
533   DEVICE_PACKAGES := kmod-usb-chipidea2 kmod-ledtrig-oneshot \
534         kmod-usb-serial kmod-usb-serial-ftdi kmod-usb-storage  kmod-fs-ext4
535   IMAGE_SIZE := 16000k
536   SUPPORTED_DEVICES += rme-eg200
537 endef
538 TARGET_DEVICES += etactica_eg200
539
540 define Device/glinet_gl-ar150
541   ATH_SOC := ar9330
542   DEVICE_VENDOR := GL.iNet
543   DEVICE_MODEL := GL-AR150
544   DEVICE_PACKAGES := kmod-usb-chipidea2
545   IMAGE_SIZE := 16000k
546   SUPPORTED_DEVICES += gl-ar150
547 endef
548 TARGET_DEVICES += glinet_gl-ar150
549
550 define Device/glinet_gl-ar300m-common-nor
551   ATH_SOC := qca9531
552   DEVICE_VENDOR := GL.iNet
553   DEVICE_PACKAGES := kmod-usb2
554   IMAGE_SIZE := 16000k
555   SUPPORTED_DEVICES += gl-ar300m
556 endef
557
558 define Device/glinet_gl-ar300m-lite
559   $(Device/glinet_gl-ar300m-common-nor)
560   DEVICE_MODEL := GL-AR300M
561   DEVICE_VARIANT := Lite
562 endef
563 TARGET_DEVICES += glinet_gl-ar300m-lite
564
565 define Device/glinet_gl-ar750
566   ATH_SOC := qca9531
567   DEVICE_VENDOR := GL.iNet
568   DEVICE_MODEL := GL-AR750
569   DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca9887-ct
570   IMAGE_SIZE := 16000k
571   SUPPORTED_DEVICES += gl-ar750
572 endef
573 TARGET_DEVICES += glinet_gl-ar750
574
575 define Device/glinet_gl-ar750s
576   ATH_SOC := qca9563
577   DEVICE_VENDOR := GL.iNet
578   DEVICE_MODEL := GL-AR750S
579   DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca9887-ct block-mount
580   IMAGE_SIZE := 16000k
581   SUPPORTED_DEVICES += gl-ar750s
582 endef
583 TARGET_DEVICES += glinet_gl-ar750s
584
585 define Device/glinet_gl-x750
586   ATH_SOC := qca9531
587   DEVICE_VENDOR := GL.iNet
588   DEVICE_MODEL := GL-X750
589   DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca9887-ct
590   IMAGE_SIZE := 16000k
591 endef
592 TARGET_DEVICES += glinet_gl-x750
593
594 define Device/iodata_etg3-r
595   ATH_SOC := ar9342
596   DEVICE_VENDOR := I-O DATA
597   DEVICE_MODEL := ETG3-R
598   IMAGE_SIZE := 7680k
599   DEVICE_PACKAGES := -iwinfo -kmod-ath9k -wpad-basic
600 endef
601 TARGET_DEVICES += iodata_etg3-r
602
603 define Device/iodata_wn-ac1167dgr
604   ATH_SOC := qca9557
605   DEVICE_VENDOR := I-O DATA
606   DEVICE_MODEL := WN-AC1167DGR
607   IMAGE_SIZE := 14656k
608   IMAGES += factory.bin
609   IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
610     append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) | \
611     senao-header -r 0x30a -p 0x61 -t 2
612   DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
613 endef
614 TARGET_DEVICES += iodata_wn-ac1167dgr
615
616 define Device/iodata_wn-ac1600dgr
617   ATH_SOC := qca9557
618   DEVICE_VENDOR := I-O DATA
619   DEVICE_MODEL := WN-AC1600DGR
620   IMAGE_SIZE := 14656k
621   IMAGES += factory.bin
622   IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
623     append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) | \
624     senao-header -r 0x30a -p 0x60 -t 2 -v 200
625   DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
626 endef
627 TARGET_DEVICES += iodata_wn-ac1600dgr
628
629 define Device/iodata_wn-ac1600dgr2
630   ATH_SOC := qca9557
631   DEVICE_VENDOR := I-O DATA
632   DEVICE_MODEL := WN-AC1600DGR2/DGR3
633   IMAGE_SIZE := 14656k
634   IMAGES += dgr2-dgr3-factory.bin
635   IMAGE/dgr2-dgr3-factory.bin := \
636     append-kernel | pad-to $$$$(BLOCKSIZE) | \
637     append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) | \
638     senao-header -r 0x30a -p 0x60 -t 2 -v 200
639   DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
640 endef
641 TARGET_DEVICES += iodata_wn-ac1600dgr2
642
643 define Device/iodata_wn-ag300dgr
644   ATH_SOC := ar1022
645   DEVICE_VENDOR := I-O DATA
646   DEVICE_MODEL := WN-AG300DGR
647   IMAGE_SIZE := 15424k
648   IMAGES += factory.bin
649   IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
650     append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) | \
651     senao-header -r 0x30a -p 0x47 -t 2
652   DEVICE_PACKAGES := kmod-usb2
653 endef
654 TARGET_DEVICES += iodata_wn-ag300dgr
655
656 define Device/jjplus_ja76pf2
657   ATH_SOC := ar7161
658   DEVICE_VENDOR := jjPlus
659   DEVICE_MODEL := JA76PF2
660   DEVICE_PACKAGES += -kmod-ath9k -swconfig -wpad-mini -uboot-envtools fconfig
661   IMAGES := kernel.bin rootfs.bin
662   IMAGE/kernel.bin := append-kernel
663   IMAGE/rootfs.bin := append-rootfs | pad-rootfs
664   KERNEL := kernel-bin | append-dtb | lzma | pad-to $$(BLOCKSIZE)
665   KERNEL_INITRAMFS := kernel-bin | append-dtb
666   IMAGE_SIZE := 16000k
667   SUPPORTED_DEVICES += ja76pf2
668 endef
669 TARGET_DEVICES += jjplus_ja76pf2
670
671 define Device/librerouter_librerouter-v1
672   ATH_SOC := qca9558
673   DEVICE_VENDOR := Librerouter
674   DEVICE_MODEL := LibreRouter
675   DEVICE_VARIANT := v1
676   IMAGE_SIZE := 7936k
677   DEVICE_PACKAGES := kmod-usb2
678 endef
679 TARGET_DEVICES += librerouter_librerouter-v1
680
681 define Device/nec_wg1200cr
682   ATH_SOC := qca9563
683   DEVICE_VENDOR := NEC
684   DEVICE_MODEL := Aterm WG1200CR
685   IMAGE_SIZE := 7616k
686   SEAMA_MTDBLOCK := 6
687   SEAMA_SIGNATURE := wrgac72_necpf.2016gui_wg1200cr
688   IMAGES += factory.bin
689   IMAGE/default := \
690     append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | append-rootfs
691   IMAGE/sysupgrade.bin := \
692     $$(IMAGE/default) | seama | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
693   IMAGE/factory.bin := \
694     $$(IMAGE/default) | pad-rootfs -x 64 | seama | seama-seal | nec-enc 9gsiy9nzep452pad | \
695     check-size $$$$(IMAGE_SIZE)
696   DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9888-ct
697 endef
698 TARGET_DEVICES += nec_wg1200cr
699
700 define Device/nec_wg800hp
701   ATH_SOC := qca9563
702   DEVICE_VENDOR := NEC
703   DEVICE_MODEL := Aterm WG800HP
704   IMAGE_SIZE := 7104k
705   IMAGES += factory.bin
706   IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
707     append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) | \
708     xor-image -p 6A57190601121E4C004C1E1201061957 -x | \
709     nec-fw LASER_ATERM
710   DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9887-ct-htt
711 endef
712 TARGET_DEVICES += nec_wg800hp
713
714 define Device/netgear_ex6400_ex7300
715   ATH_SOC := qca9558
716   NETGEAR_KERNEL_MAGIC := 0x27051956
717   NETGEAR_BOARD_ID := EX7300series
718   NETGEAR_HW_ID := 29765104+16+0+128
719   IMAGE_SIZE := 15552k
720   IMAGE/default := append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | netgear-rootfs | pad-rootfs
721   DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca99x0-ct
722   $(Device/netgear_ath79)
723 endef
724
725 define Device/netgear_ex6400
726   $(Device/netgear_ex6400_ex7300)
727   DEVICE_MODEL := EX6400
728 endef
729 TARGET_DEVICES += netgear_ex6400
730
731 define Device/netgear_ex7300
732   $(Device/netgear_ex6400_ex7300)
733   DEVICE_MODEL := EX7300
734 endef
735 TARGET_DEVICES += netgear_ex7300
736
737 define Device/netgear_wndr3x00
738   ATH_SOC := ar7161
739   IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | netgear-squashfs | append-rootfs | pad-rootfs
740   DEVICE_PACKAGES := kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport kmod-leds-reset kmod-owl-loader
741   $(Device/netgear_ath79)
742 endef
743
744 define Device/netgear_wndr3700
745   $(Device/netgear_wndr3x00)
746   DEVICE_MODEL := WNDR3700
747   DEVICE_VARIANT := v1
748   NETGEAR_KERNEL_MAGIC := 0x33373030
749   NETGEAR_BOARD_ID := WNDR3700
750   IMAGE_SIZE := 7680k
751   IMAGES += factory-NA.img
752   IMAGE/factory-NA.img := $$(IMAGE/default) | netgear-dni NA | check-size $$$$(IMAGE_SIZE)
753   SUPPORTED_DEVICES += wndr3700
754 endef
755 TARGET_DEVICES += netgear_wndr3700
756
757 define Device/netgear_wndr3700v2
758   $(Device/netgear_wndr3x00)
759   DEVICE_MODEL := WNDR3700
760   DEVICE_VARIANT := v2
761   NETGEAR_KERNEL_MAGIC := 0x33373031
762   NETGEAR_BOARD_ID := WNDR3700v2
763   NETGEAR_HW_ID := 29763654+16+64
764   IMAGE_SIZE := 15872k
765   SUPPORTED_DEVICES += wndr3700v2
766 endef
767 TARGET_DEVICES += netgear_wndr3700v2
768
769 define Device/netgear_wndr3800
770   $(Device/netgear_wndr3x00)
771   DEVICE_MODEL := WNDR3800
772   NETGEAR_KERNEL_MAGIC := 0x33373031
773   NETGEAR_BOARD_ID := WNDR3800
774   NETGEAR_HW_ID := 29763654+16+128
775   IMAGE_SIZE := 15872k
776   SUPPORTED_DEVICES += wndr3800
777 endef
778 TARGET_DEVICES += netgear_wndr3800
779
780 define Device/netgear_wndr3800ch
781   $(Device/netgear_wndr3x00)
782   DEVICE_MODEL := WNDR3800CH
783   NETGEAR_KERNEL_MAGIC := 0x33373031
784   NETGEAR_BOARD_ID := WNDR3800CH
785   NETGEAR_HW_ID := 29763654+16+128
786   IMAGE_SIZE := 15872k
787   SUPPORTED_DEVICES += wndr3800ch
788 endef
789 TARGET_DEVICES += netgear_wndr3800ch
790
791 define Device/netgear_wnr2200_common
792   ATH_SOC := ar7241
793   DEVICE_MODEL := WNR2200
794   DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
795   NETGEAR_KERNEL_MAGIC := 0x32323030
796   NETGEAR_BOARD_ID := wnr2200
797   IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | netgear-squashfs | \
798         append-rootfs | pad-rootfs
799   $(Device/netgear_ath79)
800 endef
801
802 define Device/netgear_wnr2200-8m
803   $(Device/netgear_wnr2200_common)
804   DEVICE_VARIANT := 8M
805   NETGEAR_HW_ID := 29763600+08+64
806   IMAGE_SIZE := 7808k
807   IMAGES += factory-NA.img
808   IMAGE/factory-NA.img := $$(IMAGE/default) | netgear-dni NA | \
809         check-size $$$$(IMAGE_SIZE)
810   SUPPORTED_DEVICES += wnr2200
811 endef
812 TARGET_DEVICES += netgear_wnr2200-8m
813
814 define Device/netgear_wnr2200-16m
815   $(Device/netgear_wnr2200_common)
816   DEVICE_VARIANT := 16M
817   DEVICE_ALT0_VENDOR := NETGEAR
818   DEVICE_ALT0_MODEL := WNR2200
819   DEVICE_ALT0_VARIANT := CN/RU
820   NETGEAR_HW_ID :=
821   IMAGE_SIZE := 16000k
822 endef
823 TARGET_DEVICES += netgear_wnr2200-16m
824
825 define Device/ocedo_koala
826   ATH_SOC := qca9558
827   DEVICE_VENDOR := Ocedo
828   DEVICE_MODEL := Koala
829   DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
830   SUPPORTED_DEVICES += koala
831   IMAGE_SIZE := 7424k
832   IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
833 endef
834 TARGET_DEVICES += ocedo_koala
835
836 define Device/ocedo_raccoon
837   ATH_SOC := ar9344
838   DEVICE_VENDOR := Ocedo
839   DEVICE_MODEL := Raccoon
840   IMAGE_SIZE := 7424k
841   IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
842 endef
843 TARGET_DEVICES += ocedo_raccoon
844
845 define Device/ocedo_ursus
846   ATH_SOC := qca9558
847   DEVICE_VENDOR := Ocedo
848   DEVICE_MODEL := Ursus
849   DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
850   IMAGE_SIZE := 7424k
851   IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
852 endef
853 TARGET_DEVICES += ocedo_ursus
854
855 define Device/openmesh_om5p-ac-v2
856   ATH_SOC := qca9558
857   DEVICE_VENDOR := OpenMesh
858   DEVICE_MODEL := OM5P-AC
859   DEVICE_VARIANT := v2
860   DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct om-watchdog
861   IMAGE_SIZE := 7808k
862   SUPPORTED_DEVICES += om5p-acv2
863 endef
864 TARGET_DEVICES += openmesh_om5p-ac-v2
865
866 define Device/pcs_cap324
867   ATH_SOC := ar9344
868   DEVICE_VENDOR := PowerCloud Systems
869   DEVICE_MODEL := CAP324
870   IMAGE_SIZE := 16000k
871   SUPPORTED_DEVICES += cap324
872 endef
873 TARGET_DEVICES += pcs_cap324
874
875 define Device/pcs_cr3000
876   ATH_SOC := ar9341
877   DEVICE_VENDOR := PowerCloud Systems
878   DEVICE_MODEL := CR3000
879   IMAGE_SIZE := 7808k
880   SUPPORTED_DEVICES += cr3000
881 endef
882 TARGET_DEVICES += pcs_cr3000
883
884 define Device/pcs_cr5000
885   ATH_SOC := ar9344
886   DEVICE_VENDOR := PowerCloud Systems
887   DEVICE_MODEL := CR5000
888   DEVICE_PACKAGES := kmod-usb2
889   IMAGE_SIZE := 7808k
890   SUPPORTED_DEVICES += cr5000
891 endef
892 TARGET_DEVICES += pcs_cr5000
893
894 define Device/phicomm_k2t
895   ATH_SOC := qca9563
896   DEVICE_VENDOR := Phicomm
897   DEVICE_MODEL := K2T
898   IMAGE_SIZE := 15744k
899   IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
900   DEVICE_PACKAGES := kmod-leds-reset kmod-ath10k-ct ath10k-firmware-qca9888-ct
901 endef
902 TARGET_DEVICES += phicomm_k2t
903
904 define Device/pisen_ts-d084
905   $(Device/tplink-8mlzma)
906   ATH_SOC := ar9331
907   DEVICE_VENDOR := PISEN
908   DEVICE_MODEL := TS-D084
909   DEVICE_PACKAGES := kmod-usb2 kmod-usb-chipidea2
910   TPLINK_HWID := 0x07030101
911 endef
912 TARGET_DEVICES += pisen_ts-d084
913
914 define Device/pisen_wmb001n
915   ATH_SOC := ar9341
916   DEVICE_VENDOR := PISEN
917   DEVICE_MODEL := WMB001N
918   IMAGE_SIZE := 14080k
919   DEVICE_PACKAGES := kmod-i2c-core kmod-i2c-gpio kmod-usb2
920   LOADER_TYPE := bin
921   LOADER_FLASH_OFFS := 0x20000
922   COMPILE := loader-$(1).bin loader-$(1).uImage
923   COMPILE/loader-$(1).bin := loader-okli-compile
924   COMPILE/loader-$(1).uImage := append-loader-okli $(1) | pad-to 64k | lzma | uImage lzma
925   KERNEL := kernel-bin | append-dtb | lzma | uImage lzma -M 0x4f4b4c49
926   IMAGES += factory.bin
927   IMAGE/factory.bin := $$(IMAGE/sysupgrade.bin) | pisen_wmb001n-factory $(1)
928 endef
929 TARGET_DEVICES += pisen_wmb001n
930
931 define Device/pisen_wmm003n
932   $(Device/tplink-8mlzma)
933   ATH_SOC := ar9331
934   DEVICE_VENDOR := PISEN
935   DEVICE_MODEL := Cloud Easy Power (WMM003N)
936   DEVICE_PACKAGES := kmod-usb2 kmod-usb-chipidea2
937   TPLINK_HWID := 0x07030101
938 endef
939 TARGET_DEVICES += pisen_wmm003n
940
941 define Device/qihoo_c301
942   $(Device/seama)
943   ATH_SOC := ar9344
944   DEVICE_VENDOR := Qihoo
945   DEVICE_MODEL := C301
946   DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct uboot-envtools
947   IMAGE_SIZE := 15744k
948   SEAMA_SIGNATURE := wrgac26_qihoo360_360rg
949   SUPPORTED_DEVICES += qihoo-c301
950 endef
951 TARGET_DEVICES += qihoo_c301
952
953 define Device/rosinson_wr818
954   ATH_SOC := qca9563
955   DEVICE_VENDOR := Rosinson
956   DEVICE_MODEL := WR818
957   IMAGE_SIZE := 15872k
958   DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
959 endef
960 TARGET_DEVICES += rosinson_wr818
961
962 define Device/sitecom_wlr-7100
963   ATH_SOC := ar1022
964   DEVICE_VENDOR := Sitecom
965   DEVICE_MODEL := WLR-7100
966   DEVICE_VARIANT := v1 002
967   DEVICE_PACKAGES := ath10k-firmware-qca988x kmod-ath10k kmod-usb2
968   IMAGES += factory.dlf
969   IMAGE/factory.dlf := append-kernel | pad-to $$$$(BLOCKSIZE) | \
970         append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) | \
971         senao-header -r 0x222 -p 0x53 -t 2
972   IMAGE_SIZE := 7488k
973 endef
974 TARGET_DEVICES += sitecom_wlr-7100
975
976 define Device/trendnet_tew-823dru
977   ATH_SOC := qca9558
978   DEVICE_VENDOR := Trendnet
979   DEVICE_MODEL := TEW-823DRU
980   DEVICE_VARIANT := v1.0R
981   DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
982   SUPPORTED_DEVICES += tew-823dru
983   IMAGE_SIZE := 15296k
984   IMAGES := factory.bin sysupgrade.bin
985   IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs
986   IMAGE/factory.bin := $$(IMAGE/default) | pad-offset $$$$(IMAGE_SIZE) 26 | \
987         append-string 00AP135AR9558-RT-131129-00 | check-size $$$$(IMAGE_SIZE)
988   IMAGE/sysupgrade.bin := $$(IMAGE/default) | append-metadata | check-size $$$$(IMAGE_SIZE)
989 endef
990 TARGET_DEVICES += trendnet_tew-823dru
991
992 define Device/wd_mynet-n750
993   $(Device/seama)
994   ATH_SOC := ar9344
995   DEVICE_VENDOR := Western Digital
996   DEVICE_MODEL := My Net N750
997   IMAGE_SIZE := 15872k
998   DEVICE_PACKAGES := kmod-usb2
999   SEAMA_SIGNATURE := wrgnd13_wd_av
1000   SUPPORTED_DEVICES += mynet-n750
1001 endef
1002 TARGET_DEVICES += wd_mynet-n750
1003
1004 define Device/wd_mynet-wifi-rangeextender
1005   ATH_SOC := ar9344
1006   DEVICE_VENDOR := Western Digital
1007   DEVICE_MODEL := My Net Wi-Fi Range Extender
1008   DEVICE_PACKAGES := rssileds nvram -swconfig
1009   IMAGE_SIZE := 7808k
1010   ADDPATTERN_ID := mynet-rext
1011   ADDPATTERN_VERSION := 1.00.01
1012   IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | cybertan-trx | \
1013         addpattern | append-metadata
1014   SUPPORTED_DEVICES += mynet-rext
1015 endef
1016 TARGET_DEVICES += wd_mynet-wifi-rangeextender
1017
1018 define Device/winchannel_wb2000
1019   ATH_SOC := ar9344
1020   DEVICE_VENDOR := Winchannel
1021   DEVICE_MODEL := WB2000
1022   IMAGE_SIZE := 15872k
1023   DEVICE_PACKAGES := kmod-i2c-core kmod-i2c-gpio kmod-rtc-ds1307 kmod-usb2 kmod-usb-ledtrig-usbport
1024 endef
1025 TARGET_DEVICES += winchannel_wb2000
1026
1027 define Device/xiaomi_mi-router-4q
1028   ATH_SOC := qca9561
1029   DEVICE_VENDOR := Xiaomi
1030   DEVICE_MODEL := Mi Router 4Q
1031   IMAGE_SIZE := 14336k
1032 endef
1033 TARGET_DEVICES += xiaomi_mi-router-4q
1034
1035 define Device/yuncore_a770
1036   ATH_SOC := qca9531
1037   DEVICE_VENDOR := YunCore
1038   DEVICE_MODEL := A770
1039   DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9887-ct
1040   IMAGE_SIZE := 16000k
1041 endef
1042 TARGET_DEVICES += yuncore_a770
1043
1044 define Device/zbtlink_zbt-wd323
1045   ATH_SOC := ar9344
1046   DEVICE_VENDOR := ZBT
1047   DEVICE_MODEL := WD323
1048   IMAGE_SIZE := 16000k
1049   DEVICE_PACKAGES := kmod-usb2 kmod-i2c-core kmod-i2c-gpio kmod-rtc-pcf8563 \
1050                      kmod-usb-serial kmod-usb-serial-cp210x uqmi
1051 endef
1052 TARGET_DEVICES += zbtlink_zbt-wd323