430740e5d6be7ddd6ac9aa9e08bf90e53c7de18e
[openwrt/openwrt.git] / target / linux / ath79 / image / generic.mk
1 include ./common-buffalo.mk
2 include ./common-netgear.mk
3 include ./common-yuncore.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/cybertan-trx
10 @echo -n '' > $@-empty.bin
11 -$(STAGING_DIR_HOST)/bin/trx -o $@.new \
12 -f $(IMAGE_KERNEL) -F $@-empty.bin \
13 -x 32 -a 0x10000 -x -32 -f $@
14 -mv "$@.new" "$@"
15 -rm $@-empty.bin
16 endef
17
18 define Build/addpattern
19 -$(STAGING_DIR_HOST)/bin/addpattern -B $(ADDPATTERN_ID) \
20 -v v$(ADDPATTERN_VERSION) -i $@ -o $@.new
21 -mv "$@.new" "$@"
22 endef
23
24 define Build/add-elecom-factory-initramfs
25 $(eval edimax_model=$(word 1,$(1)))
26 $(eval product=$(word 2,$(1)))
27
28 $(STAGING_DIR_HOST)/bin/mkedimaximg \
29 -b -s CSYS -m $(edimax_model) \
30 -f 0x70000 -S 0x01100000 \
31 -i $@ -o $@.factory
32
33 ( \
34 echo -n -e "ELECOM\x00\x00$(product)" | dd bs=40 count=1 conv=sync; \
35 echo -n "0.00" | dd bs=16 count=1 conv=sync; \
36 dd if=$@.factory; \
37 ) > $@.factory.new
38
39 if [ "$$(stat -c%s $@.factory.new)" -le $$(($(subst k,* 1024,$(subst m, * 1024k,$(IMAGE_SIZE))))) ]; then \
40 mv $@.factory.new $(BIN_DIR)/$(KERNEL_INITRAMFS_PREFIX)-factory.bin; \
41 else \
42 echo "WARNING: initramfs kernel image too big, cannot generate factory image" >&2; \
43 fi
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 Device/seama
63 KERNEL := kernel-bin | append-dtb | relocate-kernel | lzma
64 KERNEL_INITRAMFS := $$(KERNEL) | seama
65 IMAGES += factory.bin
66 SEAMA_MTDBLOCK := 1
67
68 # 64 bytes offset:
69 # - 28 bytes seama_header
70 # - 36 bytes of META data (4-bytes aligned)
71 IMAGE/default := append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | append-rootfs
72 IMAGE/sysupgrade.bin := \
73 $$(IMAGE/default) | seama | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
74 IMAGE/factory.bin := \
75 $$(IMAGE/default) | pad-rootfs -x 64 | seama | seama-seal | check-size $$$$(IMAGE_SIZE)
76 SEAMA_SIGNATURE :=
77 endef
78
79 define Device/8dev_carambola2
80 ATH_SOC := ar9331
81 DEVICE_TITLE := 8devices Carambola2
82 DEVICE_PACKAGES := kmod-usb2 kmod-usb-chipidea2
83 IMAGE_SIZE := 16000k
84 SUPPORTED_DEVICES += carambola2
85 endef
86 TARGET_DEVICES += 8dev_carambola2
87
88 define Device/aruba_ap-105
89 ATH_SOC := ar7161
90 DEVICE_TITLE := Aruba AP-105
91 IMAGE_SIZE := 16000k
92 DEVICE_PACKAGES := kmod-i2c-core kmod-i2c-gpio kmod-tpm-i2c-atmel
93 endef
94 TARGET_DEVICES += aruba_ap-105
95
96 define Device/avm_fritz300e
97 ATH_SOC := ar7242
98 DEVICE_TITLE := AVM FRITZ!WLAN Repeater 300E
99 KERNEL := kernel-bin | append-dtb | lzma | eva-image
100 KERNEL_INITRAMFS := $$(KERNEL)
101 IMAGE_SIZE := 15232k
102 IMAGE/sysupgrade.bin := append-kernel | pad-to 64k | \
103 append-squashfs-fakeroot-be | pad-to 256 | \
104 append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
105 DEVICE_PACKAGES := fritz-tffs rssileds -swconfig
106 endef
107 TARGET_DEVICES += avm_fritz300e
108
109 define Device/avm_fritz4020
110 ATH_SOC := qca9561
111 DEVICE_TITLE := AVM FRITZ!Box 4020
112 IMAGE_SIZE := 15232k
113 KERNEL := kernel-bin | append-dtb | lzma | eva-image
114 KERNEL_INITRAMFS := $$(KERNEL)
115 IMAGE/sysupgrade.bin := append-kernel | pad-to 64k | \
116 append-squashfs-fakeroot-be | pad-to 256 | \
117 append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
118 DEVICE_PACKAGES := fritz-tffs
119 SUPPORTED_DEVICES += fritz4020
120 endef
121 TARGET_DEVICES += avm_fritz4020
122
123 define Device/buffalo_bhr-4grv
124 ATH_SOC := ar7242
125 DEVICE_TITLE := Buffalo BHR-4GRV
126 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport
127 IMAGE_SIZE := 32256k
128 IMAGES += factory.bin tftp.bin
129 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
130 IMAGE/factory.bin := $$(IMAGE/default) | buffalo-enc BHR-4GRV 1.99 | buffalo-tag BHR-4GRV 3
131 IMAGE/tftp.bin := $$(IMAGE/default) | buffalo-tftp-header
132 SUPPORTED_DEVICES += wzr-hp-g450h
133 endef
134 TARGET_DEVICES += buffalo_bhr-4grv
135
136 define Device/buffalo_bhr-4grv2
137 ATH_SOC := qca9557
138 DEVICE_TITLE := Buffalo BHR-4GRV2
139 IMAGE_SIZE := 16000k
140 endef
141 TARGET_DEVICES += buffalo_bhr-4grv2
142
143 define Device/buffalo_wzr-hp-ag300h
144 ATH_SOC := ar7161
145 DEVICE_TITLE := Buffalo WZR-HP-AG300H
146 IMAGE_SIZE := 32256k
147 IMAGES += factory.bin tftp.bin
148 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
149 IMAGE/factory.bin := $$(IMAGE/default) | buffalo-enc WZR-HP-AG300H 1.99 | buffalo-tag WZR-HP-AG300H 3
150 IMAGE/tftp.bin := $$(IMAGE/default) | buffalo-tftp-header
151 DEVICE_PACKAGES := kmod-usb-core kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport kmod-leds-reset kmod-owl-loader
152 SUPPORTED_DEVICES += wzr-hp-ag300h
153 endef
154 TARGET_DEVICES += buffalo_wzr-hp-ag300h
155
156 define Device/buffalo_wzr-hp-g302h-a1a0
157 ATH_SOC := ar7242
158 DEVICE_TITLE := Buffalo WZR-HP-G302H A1A0
159 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport
160 IMAGE_SIZE := 32128k
161 IMAGES += factory.bin tftp.bin
162 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
163 IMAGE/factory.bin := $$(IMAGE/default) | buffalo-enc WZR-HP-G302H 1.99 | buffalo-tag WZR-HP-G302H 4
164 IMAGE/tftp.bin := $$(IMAGE/default) | buffalo-tftp-header
165 SUPPORTED_DEVICES += wzr-hp-g300nh2
166 endef
167 TARGET_DEVICES += buffalo_wzr-hp-g302h-a1a0
168
169 define Device/buffalo_wzr-hp-g450h
170 ATH_SOC := ar7242
171 DEVICE_TITLE := Buffalo WZR-HP-G450H/WZR-450HP
172 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport
173 IMAGE_SIZE := 32256k
174 IMAGES += factory.bin tftp.bin
175 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
176 IMAGE/factory.bin := $$(IMAGE/default) | buffalo-enc WZR-HP-G450H 1.99 | buffalo-tag WZR-HP-G450H 3
177 IMAGE/tftp.bin := $$(IMAGE/default) | buffalo-tftp-header
178 SUPPORTED_DEVICES += wzr-hp-g450h
179 endef
180 TARGET_DEVICES += buffalo_wzr-hp-g450h
181
182 define Device/comfast_cf-e110n-v2
183 ATH_SOC := qca9533
184 DEVICE_TITLE := COMFAST CF-E110N v2
185 DEVICE_PACKAGES := rssileds kmod-leds-gpio -swconfig -uboot-envtools
186 IMAGE_SIZE := 16192k
187 endef
188 TARGET_DEVICES += comfast_cf-e110n-v2
189
190 define Device/comfast_cf-e120a-v3
191 ATH_SOC := ar9344
192 DEVICE_TITLE := COMFAST CF-E120A v3
193 DEVICE_PACKAGES := rssileds kmod-leds-gpio -uboot-envtools
194 IMAGE_SIZE := 8000k
195 endef
196 TARGET_DEVICES += comfast_cf-e120a-v3
197
198 define Device/comfast_cf-e5
199 ATH_SOC := qca9531
200 DEVICE_TITLE := COMFAST CF-E5/E7
201 DEVICE_PACKAGES := rssileds kmod-leds-gpio kmod-usb-core kmod-usb2 kmod-usb-net \
202 kmod-usb-net-qmi-wwan -swconfig -uboot-envtools
203 IMAGE_SIZE := 16192k
204 endef
205 TARGET_DEVICES += comfast_cf-e5
206
207 define Device/devolo_dvl1200e
208 ATH_SOC := qca9558
209 DEVICE_TITLE := devolo WiFi pro 1200e
210 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
211 IMAGE_SIZE := 15936k
212 endef
213 TARGET_DEVICES += devolo_dvl1200e
214
215 define Device/devolo_dvl1200i
216 ATH_SOC := qca9558
217 DEVICE_TITLE := devolo WiFi pro 1200i
218 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
219 IMAGE_SIZE := 15936k
220 endef
221 TARGET_DEVICES += devolo_dvl1200i
222
223 define Device/devolo_dvl1750c
224 ATH_SOC := qca9558
225 DEVICE_TITLE := devolo WiFi pro 1750c
226 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
227 IMAGE_SIZE := 15936k
228 endef
229 TARGET_DEVICES += devolo_dvl1750c
230
231 define Device/devolo_dvl1750e
232 ATH_SOC := qca9558
233 DEVICE_TITLE := devolo WiFi pro 1750e
234 DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
235 IMAGE_SIZE := 15936k
236 endef
237 TARGET_DEVICES += devolo_dvl1750e
238
239 define Device/devolo_dvl1750i
240 ATH_SOC := qca9558
241 DEVICE_TITLE := devolo WiFi pro 1750i
242 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
243 IMAGE_SIZE := 15936k
244 endef
245 TARGET_DEVICES += devolo_dvl1750i
246
247 define Device/devolo_dvl1750x
248 ATH_SOC := qca9558
249 DEVICE_TITLE := devolo WiFi pro 1750x
250 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
251 IMAGE_SIZE := 15936k
252 endef
253 TARGET_DEVICES += devolo_dvl1750x
254
255 define Device/dlink_dir-825-b1
256 ATH_SOC := ar7161
257 DEVICE_TITLE := D-LINK DIR-825 B1
258 IMAGE_SIZE := 6208k
259 IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
260 DEVICE_PACKAGES := kmod-usb-core kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport kmod-leds-reset kmod-owl-loader
261 SUPPORTED_DEVICES += dir-825-b1
262 endef
263 TARGET_DEVICES += dlink_dir-825-b1
264
265 define Device/dlink_dir-825-c1
266 ATH_SOC := ar9344
267 DEVICE_TITLE := D-LINK DIR-825 C1
268 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport kmod-leds-reset kmod-owl-loader
269 SUPPORTED_DEVICES += dir-825-c1
270 IMAGE_SIZE := 15936k
271 IMAGES := factory.bin sysupgrade.bin
272 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs
273 IMAGE/factory.bin := $$(IMAGE/default) | pad-offset $$$$(IMAGE_SIZE) 26 | \
274 append-string 00DB120AR9344-RT-101214-00 | check-size $$$$(IMAGE_SIZE)
275 IMAGE/sysupgrade.bin := $$(IMAGE/default) | append-metadata | check-size $$$$(IMAGE_SIZE)
276 endef
277 TARGET_DEVICES += dlink_dir-825-c1
278
279 define Device/dlink_dir-835-a1
280 ATH_SOC := ar9344
281 DEVICE_TITLE := D-LINK DIR-835 A1
282 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-leds-reset kmod-owl-loader
283 SUPPORTED_DEVICES += dir-835-a1
284 IMAGE_SIZE := 15936k
285 IMAGES := factory.bin sysupgrade.bin
286 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs
287 IMAGE/factory.bin := $$(IMAGE/default) | pad-offset $$$$(IMAGE_SIZE) 26 | \
288 append-string 00DB120AR9344-RT-101214-00 | check-size $$$$(IMAGE_SIZE)
289 IMAGE/sysupgrade.bin := $$(IMAGE/default) | append-metadata | check-size $$$$(IMAGE_SIZE)
290 endef
291 TARGET_DEVICES += dlink_dir-835-a1
292
293 define Device/dlink_dir-859-a1
294 $(Device/seama)
295 ATH_SOC := qca9563
296 DEVICE_TITLE := D-LINK DIR-859 A1
297 IMAGE_SIZE := 15872k
298 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ath10k-ct-smallbuffers ath10k-firmware-qca988x-ct
299 SEAMA_SIGNATURE := wrgac37_dlink.2013gui_dir859
300 SUPPORTED_DEVICES += dir-859-a1
301 endef
302 TARGET_DEVICES += dlink_dir-859-a1
303
304 define Device/elecom_wrc-1750ghbk2-i
305 ATH_SOC := qca9563
306 DEVICE_TITLE := ELECOM WRC-1750GHBK2-I/C
307 IMAGE_SIZE := 15808k
308 KERNEL_INITRAMFS := $$(KERNEL) | pad-to 2 | \
309 add-elecom-factory-initramfs RN68 WRC-1750GHBK2
310 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
311 endef
312 TARGET_DEVICES += elecom_wrc-1750ghbk2-i
313
314 define Device/elecom_wrc-300ghbk2-i
315 ATH_SOC := qca9563
316 DEVICE_TITLE := ELECOM WRC-300GHBK2-I
317 IMAGE_SIZE := 7616k
318 KERNEL_INITRAMFS := $$(KERNEL) | pad-to 2 | \
319 add-elecom-factory-initramfs RN51 WRC-300GHBK2-I
320 endef
321 TARGET_DEVICES += elecom_wrc-300ghbk2-i
322
323 define Device/embeddedwireless_dorin
324 ATH_SOC := ar9331
325 DEVICE_TITLE := Embedded Wireless Dorin
326 DEVICE_PACKAGES := kmod-usb-chipidea2
327 IMAGE_SIZE := 16000k
328 endef
329 TARGET_DEVICES += embeddedwireless_dorin
330
331 define Device/engenius_ecb1750
332 ATH_SOC := qca9558
333 DEVICE_TITLE := EnGenius ECB1750
334 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
335 IMAGE_SIZE := 15680k
336 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
337 append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) | \
338 senao-header -r 0x101 -p 0x6d -t 2
339 IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
340 endef
341 TARGET_DEVICES += engenius_ecb1750
342
343 define Device/engenius_epg5000
344 ATH_SOC := qca9558
345 DEVICE_TITLE := EnGenius EPG5000
346 DEVICE_PACKAGES := ath10k-firmware-qca988x-ct kmod-ath10k-ct kmod-usb2
347 IMAGE_SIZE := 14656k
348 IMAGES += factory.dlf
349 IMAGE/factory.dlf := append-kernel | pad-to $$$$(BLOCKSIZE) | \
350 append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) | \
351 senao-header -r 0x101 -p 0x71 -t 2
352 SUPPORTED_DEVICES += epg5000
353 endef
354 TARGET_DEVICES += engenius_epg5000
355
356 define Device/engenius_ews511ap
357 ATH_SOC := qca9531
358 DEVICE_TITLE := EnGenius EWS511AP
359 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9887-ct
360 IMAGE_SIZE := 16000k
361 endef
362 TARGET_DEVICES += engenius_ews511ap
363
364 define Device/etactica_eg200
365 ATH_SOC := ar9331
366 DEVICE_TITLE := eTactica EG200
367 DEVICE_PACKAGES := kmod-usb-chipidea2 kmod-ledtrig-oneshot \
368 kmod-usb-serial kmod-usb-serial-ftdi kmod-usb-storage kmod-fs-ext4
369 SUPPORTED_DEVICES += rme-eg200
370 endef
371 TARGET_DEVICES += etactica_eg200
372
373 define Device/glinet_gl-ar150
374 ATH_SOC := ar9330
375 DEVICE_TITLE := GL.iNet GL-AR150
376 DEVICE_PACKAGES := kmod-usb-chipidea2
377 IMAGE_SIZE := 16000k
378 SUPPORTED_DEVICES += gl-ar150
379 endef
380 TARGET_DEVICES += glinet_gl-ar150
381
382 define Device/glinet_gl-ar300m-common-nor
383 ATH_SOC := qca9531
384 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
385 IMAGE_SIZE := 16000k
386 SUPPORTED_DEVICES += gl-ar300m
387 endef
388
389 define Device/glinet_gl-ar300m-lite
390 $(Device/glinet_gl-ar300m-common-nor)
391 DEVICE_TITLE := GL.iNet GL-AR300M-Lite
392 endef
393 TARGET_DEVICES += glinet_gl-ar300m-lite
394
395 define Device/glinet_gl-ar300m-nor
396 $(Device/glinet_gl-ar300m-common-nor)
397 DEVICE_TITLE := GL.iNet GL-AR300M
398 endef
399 #TARGET_DEVICES += glinet_gl-ar300m-nor
400
401 define Device/glinet_gl-ar750s
402 ATH_SOC := qca9563
403 DEVICE_TITLE := GL.iNet GL-AR750S
404 DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca9887-ct block-mount
405 IMAGE_SIZE := 16000k
406 SUPPORTED_DEVICES += gl-ar750s
407 endef
408 #TARGET_DEVICES += glinet_gl-ar750s
409
410 define Device/glinet_gl-x750
411 ATH_SOC := qca9531
412 DEVICE_TITLE := GL.iNet GL-X750
413 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca9887-ct
414 IMAGE_SIZE := 16000k
415 endef
416 TARGET_DEVICES += glinet_gl-x750
417
418 define Device/iodata_etg3-r
419 ATH_SOC := ar9342
420 DEVICE_TITLE := I-O DATA ETG3-R
421 IMAGE_SIZE := 7680k
422 DEVICE_PACKAGES := -iwinfo -kmod-ath9k -wpad-basic
423 endef
424 TARGET_DEVICES += iodata_etg3-r
425
426 define Device/iodata_wn-ac1167dgr
427 ATH_SOC := qca9557
428 DEVICE_TITLE := I-O DATA WN-AC1167DGR
429 IMAGE_SIZE := 14656k
430 IMAGES += factory.bin
431 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
432 append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) | \
433 senao-header -r 0x30a -p 0x61 -t 2
434 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
435 endef
436 TARGET_DEVICES += iodata_wn-ac1167dgr
437
438 define Device/iodata_wn-ac1600dgr
439 ATH_SOC := qca9557
440 DEVICE_TITLE := I-O DATA WN-AC1600DGR
441 IMAGE_SIZE := 14656k
442 IMAGES += factory.bin
443 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
444 append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) | \
445 senao-header -r 0x30a -p 0x60 -t 2 -v 200
446 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
447 endef
448 TARGET_DEVICES += iodata_wn-ac1600dgr
449
450 define Device/iodata_wn-ac1600dgr2
451 ATH_SOC := qca9557
452 DEVICE_TITLE := I-O DATA WN-AC1600DGR2
453 IMAGE_SIZE := 14656k
454 IMAGES += factory.bin
455 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
456 append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) | \
457 senao-header -r 0x30a -p 0x60 -t 2 -v 200
458 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ath10k-ct ath10k-firmware-qca988x-ct
459 endef
460 TARGET_DEVICES += iodata_wn-ac1600dgr2
461
462 define Device/iodata_wn-ag300dgr
463 ATH_SOC := ar1022
464 DEVICE_TITLE := I-O DATA WN-AG300DGR
465 IMAGE_SIZE := 15424k
466 IMAGES += factory.bin
467 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
468 append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) | \
469 senao-header -r 0x30a -p 0x47 -t 2
470 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
471 endef
472 TARGET_DEVICES += iodata_wn-ag300dgr
473
474 define Device/jjplus_ja76pf2
475 ATH_SOC := ar7161
476 DEVICE_TITLE := jjPlus JA76PF2
477 DEVICE_PACKAGES += -kmod-ath9k -swconfig -wpad-mini -uboot-envtools fconfig
478 IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | combined-image | append-metadata | check-size $$$$(IMAGE_SIZE)
479 # IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) | sysupgrade-tar rootfs=$$$$@ | append-metadata
480 KERNEL := kernel-bin | append-dtb | lzma | pad-to $$(BLOCKSIZE)
481 KERNEL_INITRAMFS := kernel-bin | append-dtb
482 IMAGE_SIZE := 16000k
483 SUPPORTED_DEVICES += ja76pf2
484 endef
485 TARGET_DEVICES += jjplus_ja76pf2
486
487 define Device/librerouter_librerouter-v1
488 ATH_SOC := qca9558
489 DEVICE_TITLE := LibreRouter v1
490 IMAGE_SIZE := 7936k
491 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
492 endef
493 TARGET_DEVICES += librerouter_librerouter-v1
494
495 define Device/nec_wg1200cr
496 ATH_SOC := qca9563
497 DEVICE_TITLE := NEC Aterm WG1200CR
498 IMAGE_SIZE := 7616k
499 SEAMA_MTDBLOCK := 6
500 SEAMA_SIGNATURE := wrgac72_necpf.2016gui_wg1200cr
501 IMAGES += factory.bin
502 IMAGE/default := \
503 append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | append-rootfs
504 IMAGE/sysupgrade.bin := \
505 $$(IMAGE/default) | seama | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
506 IMAGE/factory.bin := \
507 $$(IMAGE/default) | pad-rootfs -x 64 | seama | seama-seal | nec-enc 9gsiy9nzep452pad | \
508 check-size $$$$(IMAGE_SIZE)
509 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9888-ct
510 endef
511 TARGET_DEVICES += nec_wg1200cr
512
513 define Device/nec_wg800hp
514 ATH_SOC := qca9563
515 DEVICE_TITLE := NEC Aterm WG800HP
516 IMAGE_SIZE := 7104k
517 IMAGES += factory.bin
518 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
519 append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE) | \
520 xor-image -p 6A57190601121E4C004C1E1201061957 -x | \
521 nec-fw LASER_ATERM
522 DEVICE_PACKAGES := kmod-ath10k-ct-smallbuffers ath10k-firmware-qca9887-ct-htt
523 endef
524 TARGET_DEVICES += nec_wg800hp
525
526 define Device/ocedo_koala
527 ATH_SOC := qca9558
528 DEVICE_TITLE := OCEDO Koala
529 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
530 SUPPORTED_DEVICES += koala
531 IMAGE_SIZE := 7424k
532 IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
533 endef
534 TARGET_DEVICES += ocedo_koala
535
536 define Device/ocedo_raccoon
537 ATH_SOC := ar9344
538 DEVICE_TITLE := OCEDO Raccoon
539 IMAGE_SIZE := 7424k
540 IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
541 endef
542 TARGET_DEVICES += ocedo_raccoon
543
544 define Device/ocedo_ursus
545 ATH_SOC := qca9558
546 DEVICE_TITLE := OCEDO Ursus
547 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct
548 IMAGE_SIZE := 7424k
549 IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
550 endef
551 TARGET_DEVICES += ocedo_ursus
552
553 define Device/openmesh_om5p-ac-v2
554 ATH_SOC := qca9558
555 DEVICE_TITLE := OpenMesh OM5P-AC v2
556 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct om-watchdog
557 IMAGE_SIZE := 7808k
558 SUPPORTED_DEVICES += om5p-acv2
559 endef
560 TARGET_DEVICES += openmesh_om5p-ac-v2
561
562 define Device/pcs_cap324
563 ATH_SOC := ar9344
564 DEVICE_TITLE := PowerCloud Systems CAP324
565 IMAGE_SIZE := 16000k
566 SUPPORTED_DEVICES += cap324
567 endef
568 TARGET_DEVICES += pcs_cap324
569
570 define Device/pcs_cr3000
571 ATH_SOC := ar9341
572 DEVICE_TITLE := PowerCloud Systems CR3000
573 IMAGE_SIZE := 7808k
574 SUPPORTED_DEVICES += cr3000
575 endef
576 TARGET_DEVICES += pcs_cr3000
577
578 define Device/pcs_cr5000
579 ATH_SOC := ar9344
580 DEVICE_TITLE := PowerCloud Systems CR5000
581 DEVICE_PACKAGES := kmod-usb2 kmod-usb-core
582 IMAGE_SIZE := 7808k
583 SUPPORTED_DEVICES += cr5000
584 endef
585 TARGET_DEVICES += pcs_cr5000
586
587 define Device/netgear_wndr3x00
588 ATH_SOC := ar7161
589 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | netgear-squashfs | append-rootfs | pad-rootfs
590 DEVICE_PACKAGES := kmod-usb-core kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport kmod-leds-reset kmod-owl-loader
591 $(Device/netgear_ath79)
592 endef
593
594 define Device/netgear_ex7300_ex6400
595 ATH_SOC := qca9558
596 NETGEAR_KERNEL_MAGIC := 0x27051956
597 NETGEAR_BOARD_ID := EX7300series
598 NETGEAR_HW_ID := 29765104+16+0+128
599 IMAGE_SIZE := 15552k
600 IMAGE/default := append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | netgear-rootfs | pad-rootfs
601 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca99x0-ct
602 $(Device/netgear_ath79)
603 endef
604
605 define Device/netgear_ex6400
606 $(Device/netgear_ex7300_ex6400)
607 DEVICE_TITLE := NETGEAR EX6400
608 endef
609 TARGET_DEVICES += netgear_ex6400
610
611 define Device/netgear_ex7300
612 $(Device/netgear_ex7300_ex6400)
613 DEVICE_TITLE := NETGEAR EX7300
614 endef
615 TARGET_DEVICES += netgear_ex7300
616
617 define Device/netgear_wndr3700
618 $(Device/netgear_wndr3x00)
619 DEVICE_TITLE := NETGEAR WNDR3700
620 NETGEAR_KERNEL_MAGIC := 0x33373030
621 NETGEAR_BOARD_ID := WNDR3700
622 IMAGE_SIZE := 7680k
623 IMAGES += factory-NA.img
624 IMAGE/factory-NA.img := $$(IMAGE/default) | netgear-dni NA | check-size $$$$(IMAGE_SIZE)
625 SUPPORTED_DEVICES += wndr3700
626 endef
627 TARGET_DEVICES += netgear_wndr3700
628
629 define Device/netgear_wndr3700v2
630 $(Device/netgear_wndr3x00)
631 DEVICE_TITLE := NETGEAR WNDR3700v2
632 NETGEAR_KERNEL_MAGIC := 0x33373031
633 NETGEAR_BOARD_ID := WNDR3700v2
634 NETGEAR_HW_ID := 29763654+16+64
635 IMAGE_SIZE := 15872k
636 SUPPORTED_DEVICES += wndr3700
637 endef
638 TARGET_DEVICES += netgear_wndr3700v2
639
640 define Device/pisen_wmm003n
641 $(Device/tplink-8mlzma)
642 ATH_SOC := ar9331
643 DEVICE_TITLE := Pisen WMM003N (Cloud Easy Power)
644 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-chipidea2
645 TPLINK_HWID := 0x07030101
646 endef
647 TARGET_DEVICES += pisen_wmm003n
648
649 define Device/netgear_wndr3800
650 $(Device/netgear_wndr3x00)
651 DEVICE_TITLE := NETGEAR WNDR3800
652 NETGEAR_KERNEL_MAGIC := 0x33373031
653 NETGEAR_BOARD_ID := WNDR3800
654 NETGEAR_HW_ID := 29763654+16+128
655 IMAGE_SIZE := 15872k
656 SUPPORTED_DEVICES += wndr3700
657 endef
658 TARGET_DEVICES += netgear_wndr3800
659
660 define Device/phicomm_k2t
661 ATH_SOC := qca9563
662 DEVICE_TITLE := Phicomm K2T
663 IMAGE_SIZE := 15744k
664 IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
665 DEVICE_PACKAGES := kmod-leds-reset kmod-ath10k-ct-smallbuffers ath10k-firmware-qca9888-ct
666 endef
667 TARGET_DEVICES += phicomm_k2t
668
669 define Device/rosinson_wr818
670 ATH_SOC := qca9563
671 DEVICE_TITLE := ROSINSON WR818
672 IMAGE_SIZE := 15872k
673 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport
674 endef
675 TARGET_DEVICES += rosinson_wr818
676
677 define Device/wd_mynet-n750
678 $(Device/seama)
679 ATH_SOC := ar9344
680 DEVICE_TITLE := Western Digital My Net N750
681 IMAGE_SIZE := 15872k
682 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
683 SEAMA_SIGNATURE := wrgnd13_wd_av
684 SUPPORTED_DEVICES += mynet-n750
685 endef
686 TARGET_DEVICES += wd_mynet-n750
687
688 define Device/wd_mynet-wifi-rangeextender
689 ATH_SOC := ar9344
690 DEVICE_TITLE := Western Digital My Net Wi-Fi Range Extender
691 DEVICE_PACKAGES := rssileds nvram -swconfig
692 IMAGE_SIZE := 7808k
693 ADDPATTERN_ID := mynet-rext
694 ADDPATTERN_VERSION := 1.00.01
695 IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | cybertan-trx | \
696 addpattern | append-metadata
697 SUPPORTED_DEVICES += mynet-rext
698 endef
699 TARGET_DEVICES += wd_mynet-wifi-rangeextender
700
701 define Device/winchannel_wb2000
702 ATH_SOC := ar9344
703 DEVICE_TITLE := Winchannel WB2000
704 IMAGE_SIZE := 15872k
705 DEVICE_PACKAGES := kmod-i2c-core kmod-i2c-gpio kmod-rtc-ds1307 kmod-usb2 kmod-usb-ledtrig-usbport
706 endef
707 TARGET_DEVICES += winchannel_wb2000
708
709 define Device/xiaomi_mi-router-4q
710 ATH_SOC := qca9561
711 DEVICE_TITLE := Xiaomi Mi Router 4Q
712 IMAGE_SIZE := 14336k
713 endef
714 TARGET_DEVICES += xiaomi_mi-router-4q
715
716 define Device/yuncore_a770
717 ATH_SOC := qca9531
718 DEVICE_TITLE := YunCore A770
719 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9887-ct
720 IMAGE_SIZE := 16000k
721 IMAGES += tftp.bin
722 IMAGE/tftp.bin := $$(IMAGE/sysupgrade.bin) | yuncore-tftp-header-16m
723 endef
724 TARGET_DEVICES += yuncore_a770
725
726 define Device/yuncore_a782
727 ATH_SOC := qca9563
728 DEVICE_TITLE := YunCore A782
729 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9888-ct
730 IMAGE_SIZE := 16000k
731 IMAGES += tftp.bin
732 IMAGE/tftp.bin := $$(IMAGE/sysupgrade.bin) | yuncore-tftp-header-16m
733 endef
734 TARGET_DEVICES += yuncore_a782
735
736 define Device/yuncore_xd4200
737 ATH_SOC := qca9563
738 DEVICE_TITLE := YunCore XD4200
739 DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9888-ct
740 IMAGE_SIZE := 16000k
741 IMAGES += tftp.bin
742 IMAGE/tftp.bin := $$(IMAGE/sysupgrade.bin) | yuncore-tftp-header-16m
743 endef
744 TARGET_DEVICES += yuncore_xd4200
745
746 define Device/zbtlink_zbt-wd323
747 ATH_SOC := ar9344
748 DEVICE_TITLE := ZBT WD323
749 IMAGE_SIZE := 16000k
750 DEVICE_PACKAGES := kmod-usb2 kmod-i2c-core kmod-i2c-gpio kmod-rtc-pcf8563 \
751 kmod-usb-serial kmod-usb-serial-cp210x uqmi
752 endef
753 TARGET_DEVICES += zbtlink_zbt-wd323