b2e701c844a201307f9d803fb8abf35d5dcb267f
[openwrt/openwrt.git] / target / linux / ar71xx / image / generic.mk
1 DEVICE_VARS += DAP_SIGNATURE NETGEAR_BOARD_ID NETGEAR_HW_ID NETGEAR_KERNEL_MAGIC ROOTFS_SIZE SEAMA_SIGNATURE
2
3 define Build/alfa-network-rootfs-header
4 mkimage \
5 -A mips -O linux -T filesystem -C lzma -a 0 -e 0 \
6 -n 'RootfsImage' -d $@ $@.new
7 @mv $@.new $@
8 endef
9
10 define Build/append-md5sum-bin
11 $(STAGING_DIR_HOST)/bin/mkhash md5 $@ | sed 's/../\\\\x&/g' |\
12 xargs echo -ne >> $@
13 endef
14
15 define Build/append-string
16 echo -n $(1) >> $@
17 endef
18
19 define Build/mkbuffaloimg
20 $(STAGING_DIR_HOST)/bin/mkbuffaloimg -B $(BOARDNAME) \
21 -R $$(($(subst k, * 1024,$(ROOTFS_SIZE)))) \
22 -K $$(($(subst k, * 1024,$(KERNEL_SIZE)))) \
23 -i $@ -o $@.new
24 mv $@.new $@
25 endef
26
27 define Build/mkwrggimg
28 $(STAGING_DIR_HOST)/bin/mkwrggimg -b \
29 -i $@ -o $@.imghdr -d /dev/mtdblock/1 \
30 -m $(BOARDNAME) -s $(DAP_SIGNATURE) \
31 -v OpenWrt -B $(REVISION)
32 mv $@.imghdr $@
33 endef
34
35 define Build/netgear-squashfs
36 rm -rf $@.fs $@.squashfs
37 mkdir -p $@.fs/image
38 cp $@ $@.fs/image/uImage
39 $(STAGING_DIR_HOST)/bin/mksquashfs-lzma \
40 $@.fs $@.squashfs \
41 -noappend -root-owned -be -b 65536 \
42 $(if $(SOURCE_DATE_EPOCH),-fixed-time $(SOURCE_DATE_EPOCH))
43
44 dd if=/dev/zero bs=1k count=1 >> $@.squashfs
45 mkimage \
46 -A mips -O linux -T filesystem -C none \
47 -M $(NETGEAR_KERNEL_MAGIC) \
48 -a 0xbf070000 -e 0xbf070000 \
49 -n 'MIPS OpenWrt Linux-$(LINUX_VERSION)' \
50 -d $@.squashfs $@
51 rm -rf $@.squashfs $@.fs
52 endef
53
54 define Build/netgear-uImage
55 $(call Build/uImage,$(1) -M $(NETGEAR_KERNEL_MAGIC))
56 endef
57
58 define Build/relocate-kernel
59 rm -rf $@.relocate
60 $(CP) ../../generic/image/relocate $@.relocate
61 $(MAKE) -j1 -C $@.relocate KERNEL_ADDR=$(KERNEL_LOADADDR) CROSS_COMPILE=$(TARGET_CROSS)
62 ( \
63 dd if=$@.relocate/loader.bin bs=32 conv=sync && \
64 perl -e '@s = stat("$@"); print pack("N", @s[7])' && \
65 cat "$@" \
66 ) > "$@.new"
67 mv "$@.new" "$@"
68 rm -rf $@.relocate
69 endef
70
71 define Build/seama
72 $(STAGING_DIR_HOST)/bin/seama -i $@ $(if $(1),$(1),-m "dev=/dev/mtdblock/1" -m "type=firmware")
73 mv $@.seama $@
74 endef
75
76 define Build/seama-seal
77 $(call Build/seama,-s $@.seama $(1))
78 endef
79
80 define Build/teltonika-fw-fake-checksum
81 # Teltonika U-Boot web based firmware upgrade/recovery routine compares
82 # 16 bytes from md5sum1[16] field in TP-Link v1 header (offset: 76 bytes
83 # from begin of the firmware file) with 16 bytes stored just before
84 # 0xdeadc0de marker. Values are only compared, MD5 sum is not verified.
85 let \
86 offs="$$(stat -c%s $@) - 20"; \
87 dd if=$@ bs=1 count=16 skip=76 |\
88 dd of=$@ bs=1 count=16 seek=$$offs conv=notrunc
89 endef
90
91 define Build/uImageHiWiFi
92 # Field ih_name needs to start with "tw150v1"
93 mkimage -A $(LINUX_KARCH) \
94 -O linux -T kernel \
95 -C $(1) -a $(KERNEL_LOADADDR) -e $(if $(KERNEL_ENTRY),$(KERNEL_ENTRY),$(KERNEL_LOADADDR)) \
96 -n 'tw150v1 $(call toupper,$(LINUX_KARCH)) OpenWrt Linux-$(LINUX_VERSION)' -d $@ $@.new
97 @mv $@.new $@
98 endef
99
100 define Build/wrgg-pad-rootfs
101 $(STAGING_DIR_HOST)/bin/padjffs2 $(IMAGE_ROOTFS) -c 64 >>$@
102 endef
103
104
105 define Device/ap121f
106 DEVICE_TITLE := ALFA Network AP121F
107 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-storage -swconfig
108 BOARDNAME := AP121F
109 IMAGE_SIZE := 16064k
110 CONSOLE := ttyATH0,115200
111 MTDPARTS := spi0.0:192k(u-boot)ro,64k(u-boot-env),64k(art)ro,-(firmware)
112 SUPPORTED_DEVICES := ap121f
113 IMAGE/sysupgrade.bin = append-kernel | pad-to $$$$(BLOCKSIZE) | \
114 append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
115 endef
116 TARGET_DEVICES += ap121f
117
118 define Device/ap531b0
119 DEVICE_TITLE := Rockeetech AP531B0
120 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
121 BOARDNAME := AP531B0
122 IMAGE_SIZE := 16000k
123 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,16000k(firmware),64k(art)ro
124 endef
125 TARGET_DEVICES += ap531b0
126
127 define Device/ap90q
128 DEVICE_TITLE := YunCore AP90Q
129 BOARDNAME := AP90Q
130 IMAGE_SIZE := 16000k
131 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env),16000k(firmware),64k(art)ro
132 endef
133 TARGET_DEVICES += ap90q
134
135 define Device/ap91-5g
136 DEVICE_TITLE := ALFA Network AP91-5G
137 DEVICE_PACKAGES := rssileds -swconfig
138 BOARDNAME := AP91-5G
139 IMAGE_SIZE := 7744k
140 KERNEL_SIZE := 1600k
141 ROOTFS_SIZE := 6144k
142 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env),6144k(rootfs),1600k(kernel),64k(config)ro,64k(art)ro,7744k@0x50000(firmware)
143 IMAGES := sysupgrade.bin factory.bin
144 IMAGE/factory.bin := append-rootfs | pad-rootfs |\
145 alfa-network-rootfs-header | append-kernel | check-size $$$$(IMAGE_SIZE)
146 IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs |\
147 pad-to $$$$(ROOTFS_SIZE) | append-kernel | check-size $$$$(IMAGE_SIZE)
148 endef
149 TARGET_DEVICES += ap91-5g
150
151 define Device/arduino-yun
152 DEVICE_TITLE := Arduino Yun
153 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
154 BOARDNAME := Yun
155 IMAGE_SIZE := 15936k
156 CONSOLE = ttyATH0,250000
157 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env),15936k(firmware),64k(nvram),64k(art)ro
158 endef
159 TARGET_DEVICES += arduino-yun
160
161 define Device/bsb
162 DEVICE_TITLE := Smart Electronics Black Swift board
163 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
164 BOARDNAME := BSB
165 IMAGE_SIZE := 16000k
166 CONSOLE := ttyATH0,115200
167 MTDPARTS := spi0.0:128k(u-boot)ro,64k(u-boot-env)ro,16128k(firmware),64k(art)ro
168 endef
169 TARGET_DEVICES += bsb
170
171 define Device/carambola2
172 DEVICE_TITLE := 8devices Carambola2
173 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
174 BOARDNAME := CARAMBOLA2
175 IMAGE_SIZE := 16000k
176 CONSOLE := ttyATH0,115200
177 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,16000k(firmware),64k(art)ro
178 endef
179 TARGET_DEVICES += carambola2
180
181 define Device/cf-e316n-v2
182 DEVICE_TITLE := COMFAST CF-E316N v2
183 BOARDNAME := CF-E316N-V2
184 IMAGE_SIZE := 16192k
185 MTDPARTS := spi0.0:64k(u-boot)ro,64k(art)ro,16192k(firmware),64k(art-backup)ro
186 endef
187 TARGET_DEVICES += cf-e316n-v2
188
189 define Device/cf-e320n-v2
190 $(Device/cf-e316n-v2)
191 DEVICE_TITLE := COMFAST CF-E320N v2
192 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
193 BOARDNAME := CF-E320N-V2
194 endef
195 TARGET_DEVICES += cf-e320n-v2
196
197 define Device/cf-e355ac
198 DEVICE_TITLE := COMFAST CF-E355AC
199 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ath10k ath10k-firmware-qca988x
200 BOARDNAME := CF-E355AC
201 IMAGE_SIZE := 16192k
202 MTDPARTS := spi0.0:64k(u-boot)ro,64k(art)ro,16192k(firmware),64k(art-backup)ro
203 endef
204 TARGET_DEVICES += cf-e355ac
205
206 define Device/cf-e380ac-v1
207 DEVICE_TITLE := COMFAST CF-E380AC v1
208 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ath10k ath10k-firmware-qca988x
209 BOARDNAME := CF-E380AC-V1
210 IMAGE_SIZE := 16128k
211 MTDPARTS := spi0.0:128k(u-boot)ro,64k(art)ro,16128k(firmware),64k(art-backup)ro
212 endef
213 TARGET_DEVICES += cf-e380ac-v1
214
215 define Device/cf-e380ac-v2
216 $(Device/cf-e380ac-v1)
217 DEVICE_TITLE := COMFAST CF-E380AC v2
218 BOARDNAME := CF-E380AC-V2
219 IMAGE_SIZE := 16000k
220 MTDPARTS := spi0.0:256k(u-boot)ro,64k(art)ro,16000k(firmware),64k(art-backup)ro
221 endef
222 TARGET_DEVICES += cf-e380ac-v2
223
224 define Device/cf-e520n
225 DEVICE_TITLE := COMFAST CF-E520N
226 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
227 BOARDNAME := CF-E520N
228 IMAGE_SIZE := 8000k
229 MTDPARTS := spi0.0:64k(u-boot)ro,64k(art)ro,8000k(firmware),64k(art-backup)ro
230 endef
231 TARGET_DEVICES += cf-e520n
232
233 define Device/cf-e530n
234 $(Device/cf-e520n)
235 DEVICE_TITLE := COMFAST CF-E530N
236 BOARDNAME := CF-E530N
237 endef
238 TARGET_DEVICES += cf-e530n
239
240 define Device/cpe505n
241 DEVICE_TITLE := P&W CPE505N
242 BOARDNAME := CPE505N
243 IMAGE_SIZE := 16000k
244 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,16000k(firmware),64k(art)ro
245 endef
246 TARGET_DEVICES += cpe505n
247
248 define Device/cpe830
249 $(Device/ap90q)
250 DEVICE_TITLE := YunCore CPE830
251 DEVICE_PACKAGES := rssileds
252 BOARDNAME := CPE830
253 endef
254 TARGET_DEVICES += cpe830
255
256 define Device/cpe870
257 DEVICE_TITLE := YunCore CPE870
258 DEVICE_PACKAGES := rssileds
259 BOARDNAME := CPE870
260 IMAGE_SIZE := 7936k
261 MTDPARTS := spi0.0:64k(u-boot)ro,64k(u-boot-env),7936k(firmware),64k(config)ro,64k(art)ro
262 endef
263 TARGET_DEVICES += cpe870
264
265 define Device/dragino2
266 BOARDNAME := DRAGINO2
267 CONSOLE := ttyATH0,115200
268 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport
269 DEVICE_TITLE := Dragino 2 (MS14)
270 IMAGE_SIZE := 16000k
271 MTDPARTS := spi0.0:256k(u-boot)ro,16000k(firmware),64k(config)ro,64k(art)ro
272 endef
273 TARGET_DEVICES += dragino2
274
275 define Device/ew-balin
276 DEVICE_TITLE := Embedded Wireless Balin Platform
277 DEVICE_PACKAGES := kmod-usb-core kmod-usb-chipidea
278 BOARDNAME = EW-BALIN
279 IMAGE_SIZE = 16000k
280 MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env),16000k(firmware),64k(art)ro
281 endef
282 TARGET_DEVICES += ew-balin
283
284 define Device/ew-dorin
285 DEVICE_TITLE := Embedded Wireless Dorin Platform
286 DEVICE_PACKAGES := kmod-usb-core kmod-usb-chipidea
287 BOARDNAME = EW-DORIN
288 CONSOLE := ttyATH0,115200
289 IMAGE_SIZE = 16000k
290 MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env),16000k(firmware),64k(art)ro
291 endef
292 TARGET_DEVICES += ew-dorin
293
294 define Device/ew-dorin-router
295 DEVICE_TITLE := Embedded Wireless Dorin Router Platform
296 DEVICE_PACKAGES := kmod-usb-core kmod-usb-chipidea
297 BOARDNAME = EW-DORIN-ROUTER
298 CONSOLE := ttyATH0,115200
299 IMAGE_SIZE = 16000k
300 MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env),16000k(firmware),64k(art)ro
301 endef
302 TARGET_DEVICES += ew-dorin-router
303
304 define Device/weio
305 DEVICE_TITLE := WeIO
306 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
307 BOARDNAME := WEIO
308 IMAGE_SIZE := 16000k
309 CONSOLE := ttyATH0,115200
310 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,16000k(firmware),64k(art)ro
311 endef
312 TARGET_DEVICES += weio
313
314 define Device/gl-ar150
315 DEVICE_TITLE := GL.iNet GL-AR150
316 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
317 BOARDNAME := GL-AR150
318 IMAGE_SIZE := 16000k
319 CONSOLE := ttyATH0,115200
320 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,16000k(firmware),64k(art)ro
321 endef
322 TARGET_DEVICES += gl-ar150
323
324 define Device/gl-ar300
325 DEVICE_TITLE := GL.iNet GL-AR300
326 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
327 BOARDNAME := GL-AR300
328 IMAGE_SIZE := 16000k
329 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,16000k(firmware),64k(art)ro
330 endef
331 TARGET_DEVICES += gl-ar300
332
333 define Device/gl-ar300m
334 DEVICE_TITLE := GL.iNet GL-AR300M
335 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
336 BOARDNAME := GL-AR300M
337 IMAGE_SIZE := 16000k
338 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env),16000k(firmware),64k(art)ro
339 endef
340 TARGET_DEVICES += gl-ar300m
341
342 define Device/gl-ar750
343 DEVICE_TITLE := GL.iNet GL-AR750
344 DEVICE_PACKAGES := kmod-ath10k ath10k-firmware-qca9887 kmod-usb-core \
345 kmod-usb2 kmod-usb-storage
346 BOARDNAME := GL-AR750
347 SUPPORTED_DEVICES := gl-ar750
348 IMAGE_SIZE := 16000k
349 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env),64k(art)ro,-(firmware)
350 IMAGE/sysupgrade.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
351 append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
352 endef
353 TARGET_DEVICES += gl-ar750
354
355 define Device/gl-domino
356 DEVICE_TITLE := GL.iNet Domino Pi
357 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
358 BOARDNAME := DOMINO
359 IMAGE_SIZE := 16000k
360 CONSOLE := ttyATH0,115200
361 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,16000k(firmware),64k(art)ro
362 endef
363 TARGET_DEVICES += gl-domino
364
365 define Device/gl-mifi
366 DEVICE_TITLE := GL.iNet GL-MiFi
367 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
368 BOARDNAME := GL-MIFI
369 IMAGE_SIZE := 16000k
370 CONSOLE := ttyATH0,115200
371 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,16000k(firmware),64k(art)ro
372 endef
373 TARGET_DEVICES += gl-mifi
374
375 define Device/gl-usb150
376 DEVICE_TITLE := GL.iNet GL-USB150
377 DEVICE_PACKAGES := -swconfig
378 BOARDNAME := GL-USB150
379 IMAGE_SIZE := 16000k
380 CONSOLE := ttyATH0,115200
381 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,16000k(firmware),64k(art)ro
382 SUPPORTED_DEVICES := gl-usb150
383 IMAGE/sysupgrade.bin = append-kernel | pad-to $$$$(BLOCKSIZE) | \
384 append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
385 endef
386 TARGET_DEVICES += gl-usb150
387
388 define Device/lima
389 DEVICE_TITLE := 8devices Lima
390 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
391 BOARDNAME := LIMA
392 IMAGE_SIZE := 15616k
393 MTDPARTS := spi0.0:256k(u-boot)ro,256k(u-boot-env)ro,256k(art)ro,-(firmware)
394 endef
395 TARGET_DEVICES += lima
396
397 define Device/mr12
398 DEVICE_TITLE := Meraki MR12
399 DEVICE_PACKAGES := kmod-spi-gpio
400 BOARDNAME := MR12
401 ROOTFS_SIZE := 13440k
402 IMAGE_SIZE := 15680k
403 MTDPARTS := spi0.0:256k(u-boot)ro,256k(u-boot-env)ro,13440k(rootfs),2240k(kernel),64k(mac),128k(art)ro,15680k@0x80000(firmware)
404 IMAGE/kernel.bin := append-kernel
405 IMAGE/rootfs.bin := append-rootfs | pad-rootfs
406 IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to $$$$(ROOTFS_SIZE) | append-kernel | check-size $$$$(IMAGE_SIZE)
407 IMAGES := kernel.bin rootfs.bin sysupgrade.bin
408 endef
409 TARGET_DEVICES += mr12
410
411 define Device/mr16
412 $(Device/mr12)
413 DEVICE_TITLE := Meraki MR16
414 BOARDNAME := MR16
415 endef
416 TARGET_DEVICES += mr16
417
418 define Device/dr342
419 DEVICE_TITLE := Wallys DR342
420 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 -swconfig
421 BOARDNAME := DR342
422 IMAGE_SIZE := 16000k
423 MTDPARTS := spi0.0:192k(u-boot)ro,64k(u-boot-env),64k(partition-table)ro,16000k(firmware),64k(art)ro
424 endef
425 TARGET_DEVICES += dr342
426
427 define Device/dr344
428 DEVICE_TITLE := Wallys DR344
429 BOARDNAME := DR344
430 KERNEL_SIZE := 1408k
431 ROOTFS_SIZE := 6336k
432 IMAGE_SIZE := 7744k
433 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,6336k(rootfs),1408k(kernel),64k(nvram),64k(art)ro,7744k@0x50000(firmware)
434 IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to $$$$(ROOTFS_SIZE) | append-kernel | check-size $$$$(IMAGE_SIZE)
435 endef
436
437 define Device/dr531
438 DEVICE_TITLE := Wallys DR531
439 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
440 BOARDNAME := DR531
441 IMAGE_SIZE := 7808k
442 MTDPARTS := spi0.0:192k(u-boot)ro,64k(u-boot-env),64k(partition-table)ro,7808k(firmware),64k(art)ro
443 endef
444 TARGET_DEVICES += dr531
445
446 define Device/wndr3700
447 DEVICE_TITLE := NETGEAR WNDR3700
448 DEVICE_PACKAGES := kmod-usb-core kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport kmod-leds-wndr3700-usb
449 BOARDNAME := WNDR3700
450 NETGEAR_KERNEL_MAGIC := 0x33373030
451 NETGEAR_BOARD_ID := WNDR3700
452 IMAGE_SIZE := 7680k
453 MTDPARTS := spi0.0:320k(u-boot)ro,128k(u-boot-env)ro,7680k(firmware),64k(art)ro
454 IMAGES := sysupgrade.bin factory.img factory-NA.img
455 KERNEL := kernel-bin | patch-cmdline | lzma -d20 | netgear-uImage lzma
456 IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | netgear-squashfs | append-rootfs | pad-rootfs
457 IMAGE/sysupgrade.bin := $$(IMAGE/default) | check-size $$$$(IMAGE_SIZE)
458 IMAGE/factory.img := $$(IMAGE/default) | netgear-dni | check-size $$$$(IMAGE_SIZE)
459 IMAGE/factory-NA.img := $$(IMAGE/default) | netgear-dni NA | check-size $$$$(IMAGE_SIZE)
460 endef
461 TARGET_DEVICES += wndr3700
462
463 define Device/wndr3700v2
464 $(Device/wndr3700)
465 DEVICE_TITLE := NETGEAR WNDR3700 v2
466 NETGEAR_BOARD_ID := WNDR3700v2
467 NETGEAR_KERNEL_MAGIC := 0x33373031
468 NETGEAR_HW_ID := 29763654+16+64
469 IMAGE_SIZE := 15872k
470 MTDPARTS := spi0.0:320k(u-boot)ro,128k(u-boot-env)ro,15872k(firmware),64k(art)ro
471 IMAGES := sysupgrade.bin factory.img
472 endef
473 TARGET_DEVICES += wndr3700v2
474
475 define Device/wndr3800
476 $(Device/wndr3700v2)
477 DEVICE_TITLE := NETGEAR WNDR3800
478 NETGEAR_BOARD_ID := WNDR3800
479 NETGEAR_HW_ID := 29763654+16+128
480 endef
481 TARGET_DEVICES += wndr3800
482
483 define Device/wndr3800ch
484 $(Device/wndr3800)
485 DEVICE_TITLE := NETGEAR WNDR3800 (Ch)
486 NETGEAR_BOARD_ID := WNDR3800CH
487 endef
488 TARGET_DEVICES += wndr3800ch
489
490 define Device/wndrmac
491 $(Device/wndr3700v2)
492 DEVICE_TITLE := NETGEAR WNDRMAC
493 NETGEAR_BOARD_ID := WNDRMAC
494 endef
495 TARGET_DEVICES += wndrmac
496
497 define Device/wndrmacv2
498 $(Device/wndr3800)
499 DEVICE_TITLE := NETGEAR WNDRMAC v2
500 NETGEAR_BOARD_ID := WNDRMACv2
501 endef
502 TARGET_DEVICES += wndrmacv2
503
504 define Device/cap324
505 DEVICE_TITLE := PowerCloud CAP324 Cloud AP
506 BOARDNAME := CAP324
507 DEVICE_PROFILE := CAP324
508 IMAGE_SIZE := 15296k
509 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,15296k(firmware),640k(certs),64k(nvram),64k(art)ro
510 endef
511 TARGET_DEVICES += cap324
512
513 define Device/cap324-nocloud
514 DEVICE_TITLE := PowerCloud CAP324 Cloud AP (No-Cloud)
515 BOARDNAME := CAP324
516 DEVICE_PROFILE := CAP324
517 IMAGE_SIZE := 16000k
518 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,16000k(firmware),64k(art)ro
519 endef
520 TARGET_DEVICES += cap324-nocloud
521
522 define Device/cr3000
523 DEVICE_TITLE := PowerCloud CR3000 Cloud Router
524 BOARDNAME := CR3000
525 DEVICE_PROFILE := CR3000
526 IMAGE_SIZE := 7104k
527 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,7104k(firmware),640k(certs),64k(nvram),64k(art)ro
528 endef
529 TARGET_DEVICES += cr3000
530
531 define Device/cr3000-nocloud
532 DEVICE_TITLE := PowerCloud CR3000 (No-Cloud)
533 BOARDNAME := CR3000
534 DEVICE_PROFILE := CR3000
535 IMAGE_SIZE := 7808k
536 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,7808k(firmware),64k(art)ro
537 endef
538 TARGET_DEVICES += cr3000-nocloud
539
540 define Device/cr5000
541 DEVICE_TITLE := PowerCloud CR5000 Cloud Router
542 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport kmod-usb-core
543 BOARDNAME := CR5000
544 DEVICE_PROFILE := CR5000
545 IMAGE_SIZE := 7104k
546 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,7104k(firmware),640k(certs),64k(nvram),64k(art)ro
547 endef
548 TARGET_DEVICES += cr5000
549
550 define Device/cr5000-nocloud
551 DEVICE_TITLE := PowerCloud CR5000 (No-Cloud)
552 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport kmod-usb-core
553 BOARDNAME := CR5000
554 DEVICE_PROFILE := CR5000
555 IMAGE_SIZE := 7808k
556 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,7808k(firmware),64k(art)ro
557 endef
558 TARGET_DEVICES += cr5000-nocloud
559
560 define Device/pqi-air-pen
561 DEVICE_TITLE := PQI Air Pen
562 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-storage
563 BOARDNAME := PQI-AIR-PEN
564 IMAGE_SIZE := 7744k
565 CONSOLE := ttyATH0,115200
566 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,64k(art)ro,64k(NVRAM)ro,7680k(firmware),64k(CONF)
567 endef
568 TARGET_DEVICES += pqi-air-pen
569
570 define Device/antminer-s1
571 $(Device/tplink-8mlzma)
572 DEVICE_TITLE := Antminer-S1
573 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-crypto-manager kmod-i2c-gpio-custom kmod-usb-hid
574 BOARDNAME := ANTMINER-S1
575 DEVICE_PROFILE := ANTMINERS1
576 TPLINK_HWID := 0x04440101
577 CONSOLE := ttyATH0,115200
578 endef
579 TARGET_DEVICES += antminer-s1
580
581 define Device/antminer-s3
582 $(Device/tplink-8mlzma)
583 DEVICE_TITLE := Antminer-S3
584 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-crypto-manager kmod-i2c-gpio-custom kmod-usb-hid
585 BOARDNAME := ANTMINER-S3
586 DEVICE_PROFILE := ANTMINERS3
587 TPLINK_HWID := 0x04440301
588 CONSOLE := ttyATH0,115200
589 endef
590 TARGET_DEVICES += antminer-s3
591
592 define Device/antrouter-r1
593 $(Device/tplink-8mlzma)
594 DEVICE_TITLE := Antrouter-R1
595 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
596 BOARDNAME := ANTROUTER-R1
597 DEVICE_PROFILE := ANTROUTERR1
598 TPLINK_HWID := 0x44440101
599 CONSOLE := ttyATH0,115200
600 endef
601 TARGET_DEVICES += antrouter-r1
602
603 define Device/el-m150
604 $(Device/tplink-8mlzma)
605 DEVICE_TITLE := EasyLink EL-M150
606 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
607 BOARDNAME := EL-M150
608 DEVICE_PROFILE := ELM150
609 TPLINK_HWID := 0x01500101
610 CONSOLE := ttyATH0,115200
611 endef
612 TARGET_DEVICES += el-m150
613
614 define Device/el-mini
615 $(Device/tplink-8mlzma)
616 DEVICE_TITLE := EasyLink EL-MINI
617 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
618 BOARDNAME := EL-MINI
619 DEVICE_PROFILE := ELMINI
620 TPLINK_HWID := 0x01530001
621 CONSOLE := ttyATH0,115200
622 endef
623 TARGET_DEVICES += el-mini
624
625 define Device/gl-inet-6408A-v1
626 $(Device/tplink-8mlzma)
627 DEVICE_TITLE := GL.iNet 6408
628 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
629 BOARDNAME := GL-INET
630 DEVICE_PROFILE := GLINET
631 TPLINK_HWID := 0x08000001
632 CONSOLE := ttyATH0,115200
633 endef
634 TARGET_DEVICES += gl-inet-6408A-v1
635
636 define Device/gl-inet-6416A-v1
637 $(Device/tplink-16mlzma)
638 DEVICE_TITLE := GL.iNet 6416
639 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
640 BOARDNAME := GL-INET
641 DEVICE_PROFILE := GLINET
642 TPLINK_HWID := 0x08000001
643 CONSOLE := ttyATH0,115200
644 endef
645 TARGET_DEVICES += gl-inet-6416A-v1
646
647 define Device/jwap230
648 DEVICE_TITLE := jjPlus JWAP230
649 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
650 BOARDNAME := JWAP230
651 IMAGE_SIZE := 16000k
652 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env),16000k(firmware),64k(art)ro
653 endef
654 TARGET_DEVICES += jwap230
655
656 define Device/r36a
657 DEVICE_TITLE := ALFA Network R36A
658 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport -swconfig
659 BOARDNAME := R36A
660 SUPPORTED_DEVICES := r36a
661 IMAGE_SIZE := 15872k
662 MTDPARTS := spi0.0:384k(u-boot)ro,64k(u-boot-env),64k(art)ro,-(firmware)
663 IMAGE/sysupgrade.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
664 append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
665 endef
666 TARGET_DEVICES += r36a
667
668 define Device/r602n
669 DEVICE_TITLE := P&W R602N
670 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
671 BOARDNAME := R602N
672 IMAGE_SIZE := 16000k
673 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,16000k(firmware),64k(art)ro
674 endef
675 TARGET_DEVICES += r602n
676
677 define Device/rut900
678 DEVICE_TITLE := Teltonika RUT900
679 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 -uboot-envtools
680 BOARDNAME := RUT900
681 SUPPORTED_DEVICES := rut900
682 IMAGE_SIZE := 15552k
683 MTDPARTS := spi0.0:128k(u-boot)ro,64k(config)ro,64k(art)ro,15552k(firmware),576k(event-log)ro
684 TPLINK_HWID := 0x35000001
685 TPLINK_HWREV := 0x1
686 TPLINK_HEADER_VERSION := 1
687 KERNEL := kernel-bin | patch-cmdline | lzma | tplink-v1-header
688 KERNEL_INITRAMFS := kernel-bin | patch-cmdline | lzma | uImage lzma
689 IMAGES := sysupgrade.bin factory.bin
690 IMAGE/factory.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs |\
691 pad-rootfs | teltonika-fw-fake-checksum | append-string master |\
692 append-md5sum-bin | check-size $$$$(IMAGE_SIZE)
693 IMAGE/sysupgrade.bin := append-kernel | pad-to $$$$(BLOCKSIZE) |\
694 append-rootfs | pad-rootfs | append-metadata |\
695 check-size $$$$(IMAGE_SIZE)
696 endef
697 TARGET_DEVICES += rut900
698
699 define Device/mc-mac1200r
700 $(Device/tplink-8mlzma)
701 DEVICE_TITLE := Mercury MAC1200R
702 DEVICE_PACKAGES := kmod-ath10k ath10k-firmware-qca988x
703 BOARDNAME := MC-MAC1200R
704 DEVICE_PROFILE := MAC1200R
705 TPLINK_HWID := 0x12000001
706 endef
707 TARGET_DEVICES += mc-mac1200r
708
709 define Device/minibox-v1
710 $(Device/tplink-16mlzma)
711 DEVICE_TITLE := Gainstrong MiniBox V1.0
712 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport
713 BOARDNAME := MINIBOX-V1
714 DEVICE_PROFILE := MINIBOXV1
715 TPLINK_HWID := 0x3C000201
716 CONSOLE := ttyATH0,115200
717 endef
718 TARGET_DEVICES += minibox-v1
719
720 define Device/omy-g1
721 $(Device/tplink-16mlzma)
722 DEVICE_TITLE := OMYlink OMY-G1
723 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
724 BOARDNAME := OMY-G1
725 DEVICE_PROFILE := OMYG1
726 TPLINK_HWID := 0x06660101
727 endef
728 TARGET_DEVICES += omy-g1
729
730 define Device/omy-x1
731 $(Device/tplink-8mlzma)
732 DEVICE_TITLE := OMYlink OMY-X1
733 BOARDNAME := OMY-X1
734 DEVICE_PROFILE := OMYX1
735 TPLINK_HWID := 0x06660201
736 endef
737 TARGET_DEVICES += omy-x1
738
739 define Device/onion-omega
740 $(Device/tplink-16mlzma)
741 DEVICE_TITLE := Onion Omega
742 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-storage kmod-i2c-core kmod-i2c-gpio-custom kmod-spi-bitbang kmod-spi-dev kmod-spi-gpio kmod-spi-gpio-custom kmod-usb-serial
743 BOARDNAME := ONION-OMEGA
744 DEVICE_PROFILE := OMEGA
745 TPLINK_HWID := 0x04700001
746 CONSOLE := ttyATH0,115200
747 endef
748 TARGET_DEVICES += onion-omega
749
750 define Device/sc1750
751 DEVICE_TITLE := Abicom SC1750
752 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport
753 BOARDNAME := SC1750
754 IMAGE_SIZE := 15744k
755 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env),15744k(firmware),128k(APConfig),128k(kplog),64k(ART)
756 endef
757 TARGET_DEVICES += sc1750
758
759 define Device/sc300m
760 DEVICE_TITLE := Abicom SC300M
761 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport
762 BOARDNAME := SC300M
763 IMAGE_SIZE := 15744k
764 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env),15744k(firmware),128k(APConfig),128k(kplog),64k(ART)
765 endef
766 TARGET_DEVICES += sc300m
767
768 define Device/sc450
769 DEVICE_TITLE := Abicom SC450
770 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport
771 BOARDNAME := SC450
772 IMAGE_SIZE := 15744k
773 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env),15744k(firmware),128k(APConfig),128k(kplog),64k(ART)
774 endef
775 TARGET_DEVICES += sc450
776
777 define Device/smart-300
778 $(Device/tplink-8mlzma)
779 DEVICE_TITLE := NC-LINK SMART-300
780 BOARDNAME := SMART-300
781 DEVICE_PROFILE := SMART-300
782 TPLINK_HWID := 0x93410001
783 endef
784 TARGET_DEVICES += smart-300
785
786 define Device/som9331
787 $(Device/tplink-8mlzma)
788 DEVICE_TITLE := OpenEmbed SOM9331
789 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-storage kmod-i2c-core kmod-i2c-gpio-custom kmod-spi-bitbang kmod-spi-dev kmod-spi-gpio kmod-spi-gpio-custom kmod-usb-serial
790 BOARDNAME := SOM9331
791 DEVICE_PROFILE := SOM9331
792 TPLINK_HWID := 0x04800054
793 CONSOLE := ttyATH0,115200
794 endef
795 TARGET_DEVICES += som9331
796
797 define Device/sr3200
798 DEVICE_TITLE := YunCore SR3200
799 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ath10k ath10k-firmware-qca988x
800 BOARDNAME := SR3200
801 IMAGE_SIZE := 16000k
802 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env),16000k(firmware),64k(art)ro
803 endef
804 TARGET_DEVICES += sr3200
805
806 define Device/xd3200
807 $(Device/sr3200)
808 DEVICE_TITLE := YunCore XD3200
809 DEVICE_PACKAGES := kmod-ath10k ath10k-firmware-qca988x
810 BOARDNAME := XD3200
811 endef
812 TARGET_DEVICES += xd3200
813
814 define Device/tellstick-znet-lite
815 $(Device/tplink-16mlzma)
816 DEVICE_TITLE := TellStick ZNet Lite
817 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-acm kmod-usb-serial kmod-usb-serial-pl2303
818 BOARDNAME := TELLSTICK-ZNET-LITE
819 DEVICE_PROFILE := TELLSTICKZNETLITE
820 TPLINK_HWID := 0x00726001
821 CONSOLE := ttyATH0,115200
822 endef
823 TARGET_DEVICES += tellstick-znet-lite
824
825 define Device/oolite
826 $(Device/tplink-16mlzma)
827 DEVICE_TITLE := Gainstrong OOLITE
828 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport
829 BOARDNAME := GS-OOLITE
830 DEVICE_PROFILE := OOLITE
831 TPLINK_HWID := 0x3C000101
832 CONSOLE := ttyATH0,115200
833 endef
834 TARGET_DEVICES += oolite
835
836 define Device/n5q
837 DEVICE_TITLE := ALFA Network N5Q
838 DEVICE_PACKAGES := rssileds -swconfig
839 BOARDNAME := N5Q
840 SUPPORTED_DEVICES := n5q
841 IMAGE_SIZE := 15872k
842 MTDPARTS := spi0.0:384k(u-boot)ro,64k(u-boot-env),64k(art)ro,-(firmware)
843 IMAGE/sysupgrade.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
844 append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
845 endef
846 TARGET_DEVICES += n5q
847
848 define Device/NBG6616
849 DEVICE_TITLE := ZyXEL NBG6616
850 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport kmod-usb-storage kmod-rtc-pcf8563 kmod-ath10k ath10k-firmware-qca988x
851 BOARDNAME := NBG6616
852 KERNEL_SIZE := 2048k
853 IMAGE_SIZE := 15323k
854 MTDPARTS := spi0.0:192k(u-boot)ro,64k(env)ro,64k(RFdata)ro,384k(zyxel_rfsd),384k(romd),64k(header),2048k(kernel),13184k(rootfs),15232k@0x120000(firmware)
855 CMDLINE += mem=128M
856 IMAGES := sysupgrade.bin
857 KERNEL := kernel-bin | patch-cmdline | lzma | uImage lzma | jffs2 boot/vmlinux.lzma.uImage
858 IMAGE/sysupgrade.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
859 # We cannot currently build a factory image. It is the sysupgrade image
860 # prefixed with a header (which is actually written into the MTD device).
861 # The header is 2kiB and is filled with 0xff. The format seems to be:
862 # 2 bytes: 0x0000
863 # 2 bytes: checksum of the data partition (big endian)
864 # 4 bytes: length of the contained image file (big endian)
865 # 32 bytes: Firmware Version string (NUL terminated, 0xff padded)
866 # 2 bytes: 0x0000
867 # 2 bytes: checksum over the header partition (big endian)
868 # 32 bytes: Model (e.g. "NBG6616", NUL termiated, 0xff padded)
869 # rest: 0xff padding
870 #
871 # The checksums are calculated by adding up all bytes and if a 16bit
872 # overflow occurs, one is added and the sum is masked to 16 bit:
873 # csum = csum + databyte; if (csum > 0xffff) { csum += 1; csum &= 0xffff };
874 # Should the file have an odd number of bytes then the byte len-0x800 is
875 # used additionally.
876 # The checksum for the header is calcualted over the first 2048 bytes with
877 # the firmware checksum as the placeholder during calculation.
878 #
879 # The header is padded with 0xff to the erase block size of the device.
880 endef
881 TARGET_DEVICES += NBG6616
882
883 define Device/c-55
884 DEVICE_TITLE := AirTight Networks C-55
885 DEVICE_PACKAGES := kmod-ath9k
886 BOARDNAME := C-55
887 KERNEL_SIZE := 2048k
888 IMAGE_SIZE := 15872k
889 MTDPARTS := spi0.0:256k(u-boot)ro,128k(u-boot-env)ro,2048k(kernel),13824k(rootfs),13824k(opt)ro,2624k(failsafe)ro,64k(art)ro,15872k@0x60000(firmware)
890 IMAGE/sysupgrade.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
891 endef
892 TARGET_DEVICES += c-55
893
894 define Device/hiwifi-hc6361
895 DEVICE_TITLE := HiWiFi HC6361
896 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-storage \
897 kmod-fs-ext4 kmod-nls-iso8859-1 e2fsprogs
898 BOARDNAME := HiWiFi-HC6361
899 DEVICE_PROFILE := HIWIFI_HC6361
900 IMAGE_SIZE := 16128k
901 KERNEL := kernel-bin | patch-cmdline | lzma | uImageHiWiFi lzma
902 CONSOLE := ttyATH0,115200
903 MTDPARTS := spi0.0:64k(u-boot)ro,64k(bdinfo)ro,16128k(firmware),64k(backup)ro,64k(art)ro
904 endef
905 TARGET_DEVICES += hiwifi-hc6361
906
907 define Device/seama
908 LOADER_TYPE := bin
909 BLOCKSIZE := 64k
910 KERNEL := kernel-bin | patch-cmdline | relocate-kernel | lzma
911 KERNEL_INITRAMFS := kernel-bin | patch-cmdline | lzma | seama
912 KERNEL_INITRAMFS_SUFFIX = $$(KERNEL_SUFFIX).seama
913 IMAGES := sysupgrade.bin factory.bin
914
915 # 64 bytes offset:
916 # - 28 bytes seama_header
917 # - 36 bytes of META data (4-bytes aligned)
918 IMAGE/default := append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | append-rootfs
919 IMAGE/sysupgrade.bin := \
920 $$(IMAGE/default) | seama | pad-rootfs | \
921 check-size $$$$(IMAGE_SIZE)
922 IMAGE/factory.bin := \
923 $$(IMAGE/default) | seama | pad-rootfs | \
924 seama-seal -m "signature=$$$$(SEAMA_SIGNATURE)" | \
925 check-size $$$$(IMAGE_SIZE)
926 SEAMA_SIGNATURE :=
927 endef
928
929 define Device/dir-869-a1
930 $(Device/seama)
931 DEVICE_TITLE := D-Link DIR-869 rev. A1
932 DEVICE_PACKAGES := kmod-ath10k ath10k-firmware-qca988x
933 BOARDNAME := DIR-869-A1
934 IMAGE_SIZE := 15872k
935 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,64k(devdata)ro,64k(devconf)ro,15872k(firmware),64k(radiocfg)ro
936 SEAMA_SIGNATURE := wrgac54_dlink.2015_dir869
937 IMAGE/factory.bin := \
938 $$(IMAGE/default) | pad-rootfs -x 64 | \
939 seama | seama-seal -m "signature=$$$$(SEAMA_SIGNATURE)" | \
940 check-size $$$$(IMAGE_SIZE)
941 endef
942 TARGET_DEVICES += dir-869-a1
943
944 define Device/mynet-n600
945 $(Device/seama)
946 DEVICE_TITLE := Western Digital My Net N600
947 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
948 BOARDNAME := MYNET-N600
949 IMAGE_SIZE := 15808k
950 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,64k(devdata)ro,64k(devconf)ro,15872k(firmware),64k(radiocfg)ro
951 SEAMA_SIGNATURE := wrgnd16_wd_db600
952 endef
953 TARGET_DEVICES += mynet-n600
954
955 define Device/mynet-n750
956 $(Device/seama)
957 DEVICE_TITLE := Western Digital My Net N750
958 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
959 BOARDNAME := MYNET-N750
960 IMAGE_SIZE := 15808k
961 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,64k(devdata)ro,64k(devconf)ro,15872k(firmware),64k(radiocfg)ro
962 SEAMA_SIGNATURE := wrgnd13_wd_av
963 endef
964 TARGET_DEVICES += mynet-n750
965
966 define Device/qihoo-c301
967 $(Device/seama)
968 DEVICE_TITLE := Qihoo C301
969 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport kmod-ath10k ath10k-firmware-qca988x
970 BOARDNAME := QIHOO-C301
971 IMAGE_SIZE := 15744k
972 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env),64k(devdata),64k(devconf),15744k(firmware),64k(warm_start),64k(action_image_config),64k(radiocfg)ro;spi0.1:15360k(upgrade2),1024k(privatedata)
973 SEAMA_SIGNATURE := wrgac26_qihoo360_360rg
974 endef
975 TARGET_DEVICES += qihoo-c301
976
977 define Device/dap-2695-a1
978 DEVICE_TITLE := D-Link DAP-2695 rev. A1
979 DEVICE_PACKAGES := ath10k-firmware-qca988x kmod-ath10k
980 BOARDNAME := DAP-2695-A1
981 IMAGES := factory.img sysupgrade.bin
982 IMAGE_SIZE := 15360k
983 IMAGE/factory.img := append-kernel | pad-offset 65536 160 | append-rootfs | wrgg-pad-rootfs | mkwrggimg | check-size $$$$(IMAGE_SIZE)
984 IMAGE/sysupgrade.bin := append-kernel | pad-offset 65536 160 | mkwrggimg | append-rootfs | wrgg-pad-rootfs | check-size $$$$(IMAGE_SIZE)
985 KERNEL := kernel-bin | patch-cmdline | relocate-kernel | lzma
986 KERNEL_INITRAMFS := $$(KERNEL) | mkwrggimg
987 MTDPARTS := spi0.0:256k(bootloader)ro,64k(bdcfg)ro,64k(rgdb)ro,64k(langpack)ro,15360k(firmware),448k(captival)ro,64k(certificate)ro,64k(radiocfg)ro
988 DAP_SIGNATURE := wapac02_dkbs_dap2695
989 endef
990 TARGET_DEVICES += dap-2695-a1
991
992 define Device/bhr-4grv2
993 DEVICE_TITLE := Buffalo BHR-4GRV2
994 BOARDNAME := BHR-4GRV2
995 ROOTFS_SIZE := 14528k
996 KERNEL_SIZE := 1472k
997 IMAGE_SIZE := 16000k
998 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,14528k(rootfs),1472k(kernel),64k(art)ro,16000k@0x50000(firmware)
999 IMAGES := sysupgrade.bin factory.bin
1000 IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to $$$$(ROOTFS_SIZE) | append-kernel | check-size $$$$(IMAGE_SIZE)
1001 IMAGE/factory.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-rootfs | pad-rootfs | mkbuffaloimg
1002 endef
1003 TARGET_DEVICES += bhr-4grv2
1004
1005 define Device/wlr8100
1006 DEVICE_TITLE := Sitecom WLR-8100
1007 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport kmod-usb3 \
1008 kmod-ath10k ath10k-firmware-qca988x
1009 BOARDNAME := WLR8100
1010 IMAGE_SIZE := 15424k
1011 MTDPARTS := spi0.0:192k(u-boot)ro,64k(u-boot-env)ro,15424k(firmware),256k(manufacture)ro,64k(backup)ro,320k(storage)ro,64k(art)ro
1012 endef
1013 TARGET_DEVICES += wlr8100
1014
1015 define Device/wpj-16m
1016 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport
1017 MTDPARTS := spi0.0:192k(u-boot)ro,16128k(firmware),64k(art)ro
1018 IMAGE_SIZE := 16128k
1019 endef
1020
1021 define Device/wpj342
1022 $(Device/wpj-16m)
1023 DEVICE_TITLE := Compex WPJ342 (16MB flash)
1024 BOARDNAME := WPJ342
1025 endef
1026 TARGET_DEVICES += wpj342
1027
1028 define Device/wpj344
1029 $(Device/wpj-16m)
1030 DEVICE_TITLE := Compex WPJ344 (16MB flash)
1031 BOARDNAME := WPJ344
1032 SUPPORTED_DEVICES := wpj344
1033 IMAGE/sysupgrade.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
1034 append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
1035 endef
1036 TARGET_DEVICES += wpj344
1037
1038 define Device/wpj531
1039 $(Device/wpj-16m)
1040 DEVICE_TITLE := Compex WPJ531 (16MB flash)
1041 BOARDNAME := WPJ531
1042 endef
1043 TARGET_DEVICES += wpj531
1044
1045 define Device/wpj558
1046 $(Device/wpj-16m)
1047 DEVICE_TITLE := Compex WPJ558 (16MB flash)
1048 BOARDNAME := WPJ558
1049 SUPPORTED_DEVICES := wpj558
1050 IMAGE/sysupgrade.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | \
1051 append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
1052 endef
1053 TARGET_DEVICES += wpj558
1054
1055 define Device/wpj563
1056 $(Device/wpj-16m)
1057 DEVICE_TITLE := Compex WPJ563 (16MB flash)
1058 BOARDNAME := WPJ563
1059 endef
1060 TARGET_DEVICES += wpj563
1061
1062 define Device/wrtnode2q
1063 DEVICE_TITLE := WRTnode2Q
1064 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-storage
1065 BOARDNAME := WRTNODE2Q
1066 IMAGE_SIZE := 16064k
1067 MTDPARTS := spi0.0:192k(u-boot)ro,64k(u-boot-env),64k(art)ro,16064k(firmware),16384k@0x0(fullflash)
1068 endef
1069 TARGET_DEVICES += wrtnode2q
1070
1071 define Device/zbt-we1526
1072 DEVICE_TITLE := Zbtlink ZBT-WE1526
1073 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
1074 BOARDNAME := ZBT-WE1526
1075 IMAGE_SIZE := 16000k
1076 KERNEL_SIZE := 1472k
1077 ROOTFS_SIZE := 14528k
1078 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,14528k(rootfs),1472k(kernel),64k(art)ro,16000k@0x50000(firmware)
1079 IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to $$$$(ROOTFS_SIZE) | append-kernel | check-size $$$$(IMAGE_SIZE)
1080 endef
1081 TARGET_DEVICES += zbt-we1526
1082
1083 define Device/fritz300e
1084 DEVICE_TITLE := AVM FRITZ!WLAN Repeater 300E
1085 DEVICE_PACKAGES := fritz-tffs rssileds -swconfig -uboot-envtools
1086 BOARDNAME := FRITZ300E
1087 SUPPORTED_DEVICES := fritz300e
1088 IMAGE_SIZE := 15232k
1089 KERNEL := kernel-bin | patch-cmdline | lzma | eva-image
1090 IMAGE/sysupgrade.bin := append-kernel | pad-to 64k | \
1091 append-squashfs-fakeroot-be | pad-to 256 | \
1092 append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
1093 endef
1094 TARGET_DEVICES += fritz300e