7381eecb9f97e399776a50b1c5ab46e7aa0ad30f
[openwrt/openwrt.git] / target / linux / ar71xx / image / generic.mk
1 define Device/bsb
2 DEVICE_TITLE := Smart Electronics Black Swift board
3 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
4 BOARDNAME = BSB
5 IMAGE_SIZE = 16000k
6 CONSOLE = ttyATH0,115200
7 MTDPARTS = spi0.0:128k(u-boot)ro,64k(u-boot-env)ro,16128k(firmware),64k(art)ro
8 endef
9 TARGET_DEVICES += bsb
10
11 define Device/carambola2
12 DEVICE_TITLE := Carambola2 board from 8Devices
13 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
14 BOARDNAME = CARAMBOLA2
15 IMAGE_SIZE = 16000k
16 CONSOLE = ttyATH0,115200
17 MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,16000k(firmware),64k(art)ro
18 endef
19 TARGET_DEVICES += carambola2
20
21 define Device/cf-e316n-v2
22 DEVICE_TITLE := COMFAST CF-E316N v2
23 BOARDNAME = CF-E316N-V2
24 IMAGE_SIZE = 16192k
25 CONSOLE = ttyS0,115200
26 MTDPARTS = spi0.0:64k(u-boot)ro,64k(art)ro,16192k(firmware),64k(art-backup)ro
27 endef
28 TARGET_DEVICES += cf-e316n-v2
29
30 define Device/cf-e320n-v2
31 $(Device/cf-e316n-v2)
32 DEVICE_TITLE := COMFAST CF-E320N v2
33 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
34 BOARDNAME = CF-E320N-V2
35 endef
36 TARGET_DEVICES += cf-e320n-v2
37
38 define Device/cf-e380ac-v1
39 DEVICE_TITLE := COMFAST CF-E380AC v1
40 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ath10k ath10k-firmware-qca988x
41 BOARDNAME = CF-E380AC-V1
42 IMAGE_SIZE = 16128k
43 CONSOLE = ttyS0,115200
44 MTDPARTS = spi0.0:128k(u-boot)ro,64k(art)ro,16128k(firmware),64k(art-backup)ro
45 endef
46 TARGET_DEVICES += cf-e380ac-v1
47
48 define Device/cf-e380ac-v2
49 $(Device/cf-e380ac-v1)
50 DEVICE_TITLE := COMFAST CF-E380AC v2
51 BOARDNAME = CF-E380AC-V2
52 IMAGE_SIZE = 16000k
53 MTDPARTS = spi0.0:256k(u-boot)ro,64k(art)ro,16000k(firmware),64k(art-backup)ro
54 endef
55 TARGET_DEVICES += cf-e380ac-v2
56
57 define Device/cf-e520n
58 DEVICE_TITLE := COMFAST CF-E520N
59 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
60 BOARDNAME = CF-E520N
61 IMAGE_SIZE = 8000k
62 CONSOLE = ttyS0,115200
63 MTDPARTS = spi0.0:64k(u-boot)ro,64k(art)ro,8000k(firmware),64k(art-backup)ro
64 endef
65 TARGET_DEVICES += cf-e520n
66
67 define Device/cf-e530n
68 $(Device/cf-e520n)
69 DEVICE_TITLE := COMFAST CF-E530N
70 BOARDNAME = CF-E530N
71 endef
72 TARGET_DEVICES += cf-e530n
73
74 define Device/domywifi-dw33d
75 DEVICE_TITLE := DomyWifi DW33D
76 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-storage kmod-ledtrig-usbdev kmod-ath10k
77 BOARDNAME = DW33D
78 IMAGE_SIZE = 16000k
79 CONSOLE = ttyS0,115200
80 MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,14528k(rootfs),1472k(kernel),64k(art)ro,16000k@0x50000(firmware);ar934x-nfc:96m(rootfs_data),32m(backup)ro
81 IMAGE/sysupgrade.bin = append-rootfs | pad-rootfs | pad-to 14528k | append-kernel | check-size $$$$(IMAGE_SIZE)
82 endef
83 TARGET_DEVICES += domywifi-dw33d
84
85 define Device/dragino2
86 BOARDNAME := DRAGINO2
87 CONSOLE := ttyATH0,115200
88 DEVICE_PACKAGES := kmod-usb-core kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport
89 DEVICE_TITLE := Dragino 2 (MS14)
90 IMAGE_SIZE := 16000k
91 MTDPARTS := spi0.0:256k(u-boot)ro,16000k(firmware),64k(config)ro,64k(art)ro
92 endef
93 TARGET_DEVICES += dragino2
94
95 define Device/weio
96 DEVICE_TITLE := WeIO
97 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
98 BOARDNAME = WEIO
99 IMAGE_SIZE = 16000k
100 CONSOLE = ttyATH0,115200
101 MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,16000k(firmware),64k(art)ro
102 endef
103 TARGET_DEVICES += weio
104
105 define Device/gl-ar150
106 DEVICE_TITLE := GL AR150
107 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
108 BOARDNAME = GL-AR150
109 IMAGE_SIZE = 16000k
110 CONSOLE = ttyATH0,115200
111 MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,16000k(firmware),64k(art)ro
112 endef
113 TARGET_DEVICES += gl-ar150
114
115 define Device/gl-ar300
116 DEVICE_TITLE := GL AR300
117 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
118 BOARDNAME = GL-AR300
119 IMAGE_SIZE = 16000k
120 CONSOLE = ttyS0,115200
121 MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,16000k(firmware),64k(art)ro
122 endef
123 TARGET_DEVICES += gl-ar300
124
125 define Device/gl-ar300m
126 DEVICE_TITLE := GL AR300M
127 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 uboot-envtools
128 BOARDNAME = GL-AR300M
129 IMAGE_SIZE = 16000k
130 CONSOLE = ttyS0,115200
131 MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env),16000k(firmware),64k(art)ro
132 endef
133 TARGET_DEVICES += gl-ar300m
134
135 define Device/gl-domino
136 DEVICE_TITLE := GL Domino Pi
137 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
138 BOARDNAME = DOMINO
139 IMAGE_SIZE = 16000k
140 CONSOLE = ttyATH0,115200
141 MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,16000k(firmware),64k(art)ro
142 endef
143 TARGET_DEVICES += gl-domino
144
145 define Device/gl-mifi
146 DEVICE_TITLE := GL MIFI
147 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
148 BOARDNAME = GL-MIFI
149 IMAGE_SIZE = 16000k
150 CONSOLE = ttyATH0,115200
151 MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,16000k(firmware),64k(art)ro
152 endef
153 TARGET_DEVICES += gl-mifi
154
155 define Device/mr12
156 DEVICE_TITLE := Meraki MR12
157 DEVICE_PACKAGES := kmod-spi-gpio
158 BOARDNAME = MR12
159 IMAGE_SIZE = 15680k
160 MTDPARTS = spi0.0:256k(u-boot)ro,256k(u-boot-env)ro,13440k(rootfs),2240k(kernel),64k(mac),128k(art)ro,15680k@0x80000(firmware)
161 IMAGE/kernel.bin = append-kernel
162 IMAGE/rootfs.bin = append-rootfs | pad-rootfs
163 IMAGE/sysupgrade.bin = append-rootfs | pad-rootfs | pad-to 13440k | append-kernel | check-size $$$$(IMAGE_SIZE)
164 IMAGES := kernel.bin rootfs.bin sysupgrade.bin
165 endef
166 TARGET_DEVICES += mr12
167
168 define Device/mr16
169 DEVICE_TITLE := Meraki MR16
170 DEVICE_PACKAGES := kmod-spi-gpio
171 BOARDNAME = MR16
172 IMAGE_SIZE = 15680k
173 MTDPARTS = spi0.0:256k(u-boot)ro,256k(u-boot-env)ro,13440k(rootfs),2240k(kernel),64k(mac),128k(art)ro,15680k@0x80000(firmware)
174 IMAGE/kernel.bin = append-kernel
175 IMAGE/rootfs.bin = append-rootfs | pad-rootfs
176 IMAGE/sysupgrade.bin = append-rootfs | pad-rootfs | pad-to 13440k | append-kernel | check-size $$$$(IMAGE_SIZE)
177 IMAGES := kernel.bin rootfs.bin sysupgrade.bin
178 endef
179 TARGET_DEVICES += mr16
180
181 define Device/dr531
182 DEVICE_TITLE := Wallys DR531
183 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
184 BOARDNAME = DR531
185 IMAGE_SIZE = 7808k
186 MTDPARTS = spi0.0:192k(u-boot)ro,64k(u-boot-env),64k(partition-table)ro,7808k(firmware),64k(art)ro
187 endef
188 TARGET_DEVICES += dr531
189
190 define Device/wndr3700
191 DEVICE_TITLE := NETGEAR WNDR3700
192 DEVICE_PACKAGES := kmod-usb-core kmod-usb-ohci kmod-usb2 kmod-usb-ledtrig-usbport kmod-leds-wndr3700-usb
193 BOARDNAME = WNDR3700
194 NETGEAR_KERNEL_MAGIC = 0x33373030
195 NETGEAR_BOARD_ID = WNDR3700
196 IMAGE_SIZE = 7680k
197 MTDPARTS = spi0.0:320k(u-boot)ro,128k(u-boot-env)ro,7680k(firmware),64k(art)ro
198 IMAGES := sysupgrade.bin factory.img factory-NA.img
199 KERNEL := kernel-bin | patch-cmdline | lzma -d20 | netgear-uImage lzma
200 IMAGE/default = append-kernel | pad-to $$$$(BLOCKSIZE) | netgear-squashfs | append-rootfs | pad-rootfs
201 IMAGE/sysupgrade.bin = $$(IMAGE/default) | check-size $$$$(IMAGE_SIZE)
202 IMAGE/factory.img = $$(IMAGE/default) | netgear-dni | check-size $$$$(IMAGE_SIZE)
203 IMAGE/factory-NA.img = $$(IMAGE/default) | netgear-dni NA | check-size $$$$(IMAGE_SIZE)
204 endef
205
206 define Device/wndr3700v2
207 $(Device/wndr3700)
208 DEVICE_TITLE := NETGEAR WNDR3700 v2
209 NETGEAR_BOARD_ID = WNDR3700v2
210 NETGEAR_KERNEL_MAGIC = 0x33373031
211 NETGEAR_HW_ID = 29763654+16+64
212 IMAGE_SIZE = 15872k
213 MTDPARTS = spi0.0:320k(u-boot)ro,128k(u-boot-env)ro,15872k(firmware),64k(art)ro
214 IMAGES := sysupgrade.bin factory.img
215 endef
216
217 define Device/wndr3800
218 $(Device/wndr3700v2)
219 DEVICE_TITLE := NETGEAR WNDR3800
220 NETGEAR_BOARD_ID = WNDR3800
221 NETGEAR_HW_ID = 29763654+16+128
222 endef
223
224 define Device/wndr3800ch
225 $(Device/wndr3800)
226 DEVICE_TITLE := NETGEAR WNDR3800 (Ch)
227 NETGEAR_BOARD_ID = WNDR3800CH
228 endef
229
230 define Device/wndrmac
231 $(Device/wndr3700v2)
232 DEVICE_TITLE := NETGEAR WNDRMAC
233 NETGEAR_BOARD_ID = WNDRMAC
234 endef
235
236 define Device/wndrmacv2
237 $(Device/wndr3800)
238 DEVICE_TITLE := NETGEAR WNDRMAC v2
239 NETGEAR_BOARD_ID = WNDRMACv2
240 endef
241
242 TARGET_DEVICES += wndr3700 wndr3700v2 wndr3800 wndr3800ch wndrmac wndrmacv2
243
244 define Device/cap324
245 DEVICE_TITLE := PowerCloud CAP324 Cloud AP
246 DEVICE_PACKAGES := uboot-envtools
247 BOARDNAME := CAP324
248 DEVICE_PROFILE := CAP324
249 IMAGE_SIZE = 15296k
250 MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,15296k(firmware),640k(certs),64k(nvram),64k(art)ro
251 endef
252
253 TARGET_DEVICES += cap324
254
255 define Device/cap324-nocloud
256 DEVICE_TITLE := PowerCloud CAP324 Cloud AP (No-Cloud)
257 DEVICE_PACKAGES := uboot-envtools
258 BOARDNAME := CAP324
259 DEVICE_PROFILE := CAP324
260 IMAGE_SIZE = 16000k
261 MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,16000k(firmware),64k(art)ro
262 endef
263
264 TARGET_DEVICES += cap324-nocloud
265
266 define Device/cr3000
267 DEVICE_TITLE := PowerCloud CR3000 Cloud Router
268 DEVICE_PACKAGES := uboot-envtools
269 BOARDNAME := CR3000
270 DEVICE_PROFILE := CR3000
271 IMAGE_SIZE = 7104k
272 MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,7104k(firmware),640k(certs),64k(nvram),64k(art)ro
273 endef
274
275 TARGET_DEVICES += cr3000
276
277 define Device/cr3000-nocloud
278 DEVICE_TITLE := PowerCloud CR3000 (No-Cloud)
279 DEVICE_PACKAGES := uboot-envtools
280 BOARDNAME := CR3000
281 DEVICE_PROFILE := CR3000
282 IMAGE_SIZE = 7808k
283 MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,7808k(firmware),64k(art)ro
284 endef
285
286 TARGET_DEVICES += cr3000-nocloud
287
288 define Device/cr5000
289 DEVICE_TITLE := PowerCloud CR5000 Cloud Router
290 DEVICE_PACKAGES := uboot-envtools kmod-usb2 kmod-usb-ohci kmod-usb-ledtrig-usbport kmod-usb-core
291 BOARDNAME := CR5000
292 DEVICE_PROFILE := CR5000
293 IMAGE_SIZE = 7104k
294 MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,7104k(firmware),640k(certs),64k(nvram),64k(art)ro
295 endef
296
297 TARGET_DEVICES += cr5000
298
299 define Device/cr5000-nocloud
300 DEVICE_TITLE := PowerCloud CR5000 (No-Cloud)
301 DEVICE_PACKAGES := uboot-envtools kmod-usb2 kmod-usb-ohci kmod-usb-ledtrig-usbport kmod-usb-core
302 BOARDNAME := CR5000
303 DEVICE_PROFILE := CR5000
304 IMAGE_SIZE = 7808k
305 MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,7808k(firmware),64k(art)ro
306 endef
307
308 TARGET_DEVICES += cr5000-nocloud
309
310 define Device/antminer-s1
311 $(Device/tplink-8mlzma)
312 DEVICE_TITLE := Antminer-S1
313 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-crypto-manager kmod-i2c-gpio-custom kmod-usb-hid
314 BOARDNAME := ANTMINER-S1
315 DEVICE_PROFILE := ANTMINERS1
316 TPLINK_HWID := 0x04440101
317 CONSOLE := ttyATH0,115200
318 endef
319
320 define Device/antminer-s3
321 $(Device/tplink-8mlzma)
322 DEVICE_TITLE := Antminer-S3
323 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-crypto-manager kmod-i2c-gpio-custom kmod-usb-hid
324 BOARDNAME := ANTMINER-S3
325 DEVICE_PROFILE := ANTMINERS3
326 TPLINK_HWID := 0x04440301
327 CONSOLE := ttyATH0,115200
328 endef
329
330 define Device/antrouter-r1
331 $(Device/tplink-8mlzma)
332 DEVICE_TITLE := Antrouter-R1
333 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
334 BOARDNAME := ANTROUTER-R1
335 DEVICE_PROFILE := ANTROUTERR1
336 TPLINK_HWID := 0x44440101
337 CONSOLE := ttyATH0,115200
338 endef
339
340 define Device/el-m150
341 $(Device/tplink-8mlzma)
342 DEVICE_TITLE := EasyLink EL-M150
343 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
344 BOARDNAME := EL-M150
345 DEVICE_PROFILE := ELM150
346 TPLINK_HWID := 0x01500101
347 CONSOLE := ttyATH0,115200
348 endef
349
350 define Device/el-mini
351 $(Device/tplink-8mlzma)
352 DEVICE_TITLE := EasyLink EL-MINI
353 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
354 BOARDNAME := EL-MINI
355 DEVICE_PROFILE := ELMINI
356 TPLINK_HWID := 0x01530001
357 CONSOLE := ttyATH0,115200
358 endef
359 TARGET_DEVICES += antminer-s1 antminer-s3 antrouter-r1 el-m150 el-mini
360
361 define Device/gl-inet-6408A-v1
362 $(Device/tplink-8mlzma)
363 DEVICE_TITLE := GL.iNet 6408
364 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
365 BOARDNAME := GL-INET
366 DEVICE_PROFILE := GLINET
367 TPLINK_HWID := 0x08000001
368 CONSOLE := ttyATH0,115200
369 endef
370
371 define Device/gl-inet-6416A-v1
372 $(Device/tplink-16mlzma)
373 DEVICE_TITLE := GL.iNet 6416
374 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
375 BOARDNAME := GL-INET
376 DEVICE_PROFILE := GLINET
377 TPLINK_HWID := 0x08000001
378 CONSOLE := ttyATH0,115200
379 endef
380 TARGET_DEVICES += gl-inet-6408A-v1 gl-inet-6416A-v1
381
382 define Device/jwap230
383 DEVICE_TITLE := jjPlus JWAP230
384 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
385 BOARDNAME = JWAP230
386 IMAGE_SIZE = 16000k
387 MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env),16000k(firmware),64k(art)ro
388 endef
389 TARGET_DEVICES += jwap230
390
391 define Device/rnx-n360rt
392 $(Device/tplink-4m)
393 DEVICE_TITLE := Rosewill RNX-N360RT
394 BOARDNAME := TL-WR941ND
395 DEVICE_PROFILE := RNXN360RT
396 TPLINK_HWID := 0x09410002
397 TPLINK_HWREV := 0x00420001
398 endef
399 TARGET_DEVICES += rnx-n360rt
400
401 define Device/mc-mac1200r
402 $(Device/tplink-8mlzma)
403 DEVICE_TITLE := MERCURY MAC1200R
404 DEVICE_PACKAGES := kmod-ath10k ath10k-firmware-qca988x
405 BOARDNAME := MC-MAC1200R
406 DEVICE_PROFILE := MAC1200R
407 TPLINK_HWID := 0x12000001
408 endef
409 TARGET_DEVICES += mc-mac1200r
410
411 define Device/minibox-v1
412 $(Device/tplink-16mlzma)
413 DEVICE_TITLE := Gainstrong MiniBox V1.0
414 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport
415 BOARDNAME := MINIBOX-V1
416 DEVICE_PROFILE := MINIBOXV1
417 TPLINK_HWID := 0x3C000201
418 CONSOLE := ttyATH0,115200
419 endef
420 TARGET_DEVICES += minibox-v1
421
422 define Device/omy-g1
423 $(Device/tplink-16mlzma)
424 DEVICE_TITLE := OMYlink OMY-G1
425 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
426 BOARDNAME := OMY-G1
427 DEVICE_PROFILE := OMYG1
428 TPLINK_HWID := 0x06660101
429 endef
430
431 define Device/omy-x1
432 $(Device/tplink-8mlzma)
433 DEVICE_TITLE := OMYlink OMY-X1
434 BOARDNAME := OMY-X1
435 DEVICE_PROFILE := OMYX1
436 TPLINK_HWID := 0x06660201
437 endef
438 TARGET_DEVICES += omy-g1 omy-x1
439
440 define Device/onion-omega
441 $(Device/tplink-16mlzma)
442 DEVICE_TITLE := Onion Omega
443 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
444 BOARDNAME := ONION-OMEGA
445 DEVICE_PROFILE := OMEGA
446 TPLINK_HWID := 0x04700001
447 CONSOLE := ttyATH0,115200
448 endef
449 TARGET_DEVICES += onion-omega
450
451 define Device/smart-300
452 $(Device/tplink-8mlzma)
453 DEVICE_TITLE := NC-LINK SMART-300
454 BOARDNAME := SMART-300
455 DEVICE_PROFILE := SMART-300
456 TPLINK_HWID := 0x93410001
457 endef
458 TARGET_DEVICES += smart-300
459
460 define Device/som9331
461 $(Device/tplink-8mlzma)
462 DEVICE_TITLE := OpenEmbed SOM9331
463 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
464 BOARDNAME := SOM9331
465 DEVICE_PROFILE := SOM9331
466 TPLINK_HWID := 0x04800054
467 CONSOLE := ttyATH0,115200
468 endef
469 TARGET_DEVICES += som9331
470
471 define Device/tellstick-znet-lite
472 $(Device/tplink-16mlzma)
473 DEVICE_TITLE := TellStick ZNet Lite
474 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-acm kmod-usb-serial kmod-usb-serial-pl2303
475 BOARDNAME := TELLSTICK-ZNET-LITE
476 DEVICE_PROFILE := TELLSTICKZNETLITE
477 TPLINK_HWID := 0x00726001
478 CONSOLE := ttyATH0,115200
479 endef
480 TARGET_DEVICES += tellstick-znet-lite
481
482 define Device/oolite
483 $(Device/tplink-16mlzma)
484 DEVICE_TITLE := Gainstrong OOLITE
485 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport
486 BOARDNAME := GS-OOLITE
487 DEVICE_PROFILE := OOLITE
488 TPLINK_HWID := 0x3C000101
489 CONSOLE := ttyATH0,115200
490 endef
491 TARGET_DEVICES += oolite
492
493
494 define Device/NBG6616
495 DEVICE_TITLE := ZyXEL NBG6616
496 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport kmod-usb-storage kmod-rtc-pcf8563 kmod-ath10k ath10k-firmware-qca988x
497 BOARDNAME = NBG6616
498 KERNEL_SIZE = 2048k
499 IMAGE_SIZE = 15323k
500 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)
501 CMDLINE += mem=128M
502 IMAGES := sysupgrade.bin
503 KERNEL := kernel-bin | patch-cmdline | lzma | uImage lzma | jffs2 boot/vmlinux.lzma.uImage
504 IMAGE/sysupgrade.bin = append-kernel | pad-to $$$$(KERNEL_SIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
505 # We cannot currently build a factory image. It is the sysupgrade image
506 # prefixed with a header (which is actually written into the MTD device).
507 # The header is 2kiB and is filled with 0xff. The format seems to be:
508 # 2 bytes: 0x0000
509 # 2 bytes: checksum of the data partition (big endian)
510 # 4 bytes: length of the contained image file (big endian)
511 # 32 bytes: Firmware Version string (NUL terminated, 0xff padded)
512 # 2 bytes: 0x0000
513 # 2 bytes: checksum over the header partition (big endian)
514 # 32 bytes: Model (e.g. "NBG6616", NUL termiated, 0xff padded)
515 # rest: 0xff padding
516 #
517 # The checksums are calculated by adding up all bytes and if a 16bit
518 # overflow occurs, one is added and the sum is masked to 16 bit:
519 # csum = csum + databyte; if (csum > 0xffff) { csum += 1; csum &= 0xffff };
520 # Should the file have an odd number of bytes then the byte len-0x800 is
521 # used additionally.
522 # The checksum for the header is calcualted over the first 2048 bytes with
523 # the firmware checksum as the placeholder during calculation.
524 #
525 # The header is padded with 0xff to the erase block size of the device.
526 endef
527
528 TARGET_DEVICES += NBG6616
529
530 define Device/c-55
531 DEVICE_TITLE := AirTight Networks C-55
532 DEVICE_PACKAGES := kmod-ath9k
533 BOARDNAME = C-55
534 KERNEL_SIZE = 2048k
535 IMAGE_SIZE = 15872k
536 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)
537 IMAGE/sysupgrade.bin = append-kernel | pad-to $$$$(KERNEL_SIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
538 endef
539
540 TARGET_DEVICES += c-55
541
542
543 define Build/uImageHiWiFi
544 # Field ih_name needs to start with "tw150v1"
545 mkimage -A $(LINUX_KARCH) \
546 -O linux -T kernel \
547 -C $(1) -a $(KERNEL_LOADADDR) -e $(if $(KERNEL_ENTRY),$(KERNEL_ENTRY),$(KERNEL_LOADADDR)) \
548 -n 'tw150v1 $(call toupper,$(LINUX_KARCH)) LEDE Linux-$(LINUX_VERSION)' -d $@ $@.new
549 @mv $@.new $@
550 endef
551
552 define Device/hiwifi-hc6361
553 DEVICE_TITLE := HiWiFi HC6361
554 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-storage \
555 kmod-fs-ext4 kmod-nls-iso8859-1 e2fsprogs
556 BOARDNAME := HiWiFi-HC6361
557 DEVICE_PROFILE := HIWIFI_HC6361
558 IMAGE_SIZE := 16128k
559 KERNEL := kernel-bin | patch-cmdline | lzma | uImageHiWiFi lzma
560 CONSOLE := ttyATH0,115200
561 MTDPARTS := spi0.0:64k(u-boot)ro,64k(bdinfo)ro,16128k(firmware),64k(backup)ro,64k(art)ro
562 endef
563 TARGET_DEVICES += hiwifi-hc6361
564
565
566 define Build/seama
567 $(STAGING_DIR_HOST)/bin/seama -i $@ $(if $(1),$(1),-m "dev=/dev/mtdblock/1" -m "type=firmware")
568 mv $@.seama $@
569 endef
570
571 define Build/seama-seal
572 $(call Build/seama,-s $@.seama $(1))
573 endef
574
575 define Device/seama
576 CONSOLE := ttyS0,115200
577 LOADER_TYPE := bin
578 BLOCKSIZE := 64k
579 KERNEL := kernel-bin | patch-cmdline | relocate-kernel | lzma
580 KERNEL_INITRAMFS := kernel-bin | patch-cmdline | lzma | seama
581 KERNEL_INITRAMFS_SUFFIX = $$(KERNEL_SUFFIX).seama
582 IMAGES := sysupgrade.bin factory.bin
583
584 # 64 bytes offset:
585 # - 28 bytes seama_header
586 # - 36 bytes of META data (4-bytes aligned)
587 IMAGE/default := append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | append-rootfs
588 IMAGE/sysupgrade.bin := \
589 $$(IMAGE/default) | seama | pad-rootfs | \
590 check-size $$$$(IMAGE_SIZE)
591 IMAGE/factory.bin := \
592 $$(IMAGE/default) | seama | pad-rootfs | \
593 seama-seal -m "signature=$$$$(SEAMA_SIGNATURE)" | \
594 check-size $$$$(IMAGE_SIZE)
595 SEAMA_SIGNATURE :=
596 DEVICE_VARS += SEAMA_SIGNATURE
597 endef
598
599 define Device/dir-869-a1
600 $(Device/seama)
601 DEVICE_TITLE := D-Link DIR-869 rev. A1
602 DEVICE_PACKAGES := kmod-ath10k ath10k-firmware-qca988x
603 BOARDNAME = DIR-869-A1
604 IMAGE_SIZE = 15872k
605 MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,64k(devdata)ro,64k(devconf)ro,15872k(firmware),64k(radiocfg)ro
606 SEAMA_SIGNATURE := wrgac54_dlink.2015_dir869
607 IMAGE/factory.bin := \
608 $$(IMAGE/default) | pad-rootfs -x 64 | \
609 seama | seama-seal -m "signature=$$$$(SEAMA_SIGNATURE)" | \
610 check-size $$$$(IMAGE_SIZE)
611 endef
612
613 define Device/mynet-n600
614 $(Device/seama)
615 DEVICE_TITLE := Western Digital My Net N600
616 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
617 BOARDNAME = MYNET-N600
618 IMAGE_SIZE = 15808k
619 MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,64k(devdata)ro,64k(devconf)ro,15872k(firmware),64k(radiocfg)ro
620 SEAMA_SIGNATURE := wrgnd16_wd_db600
621 endef
622
623 define Device/mynet-n750
624 $(Device/seama)
625 DEVICE_TITLE := Western Digital My Net N750
626 DEVICE_PACKAGES := kmod-usb-core kmod-usb2
627 BOARDNAME = MYNET-N750
628 IMAGE_SIZE = 15808k
629 MTDPARTS = spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,64k(devdata)ro,64k(devconf)ro,15872k(firmware),64k(radiocfg)ro
630 SEAMA_SIGNATURE := wrgnd13_wd_av
631 endef
632
633 define Device/qihoo-c301
634 $(Device/seama)
635 DEVICE_TITLE := Qihoo C301
636 DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport kmod-ath10k ath10k-firmware-qca988x
637 BOARDNAME = QIHOO-C301
638 IMAGE_SIZE = 15744k
639 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)
640 SEAMA_SIGNATURE := wrgac26_qihoo360_360rg
641 endef
642
643 TARGET_DEVICES += dir-869-a1 mynet-n600 mynet-n750 qihoo-c301
644
645 define Build/mkwrggimg
646 $(STAGING_DIR_HOST)/bin/mkwrggimg -b \
647 -i $@ -o $@.imghdr -d /dev/mtdblock/1 \
648 -m $(BOARDNAME) -s $(DAP_SIGNATURE) \
649 -v LEDE -B $(REVISION)
650 mv $@.imghdr $@
651 endef
652
653 define Build/wrgg-pad-rootfs
654 $(STAGING_DIR_HOST)/bin/padjffs2 $(IMAGE_ROOTFS) -c 64 >>$@
655 endef
656
657 define Device/dap-2695-a1
658 DEVICE_TITLE := D-Link DAP-2695 rev. A1
659 DEVICE_PACKAGES := ath10k-firmware-qca988x kmod-ath10k uboot-envtools
660 BOARDNAME = DAP-2695-A1
661 IMAGES := factory.img sysupgrade.bin
662 IMAGE_SIZE = 15360k
663 IMAGE/factory.img = append-kernel | pad-offset 65536 160 | append-rootfs | wrgg-pad-rootfs | mkwrggimg | check-size $$$$(IMAGE_SIZE)
664 IMAGE/sysupgrade.bin = append-kernel | pad-offset 65536 160 | mkwrggimg | append-rootfs | wrgg-pad-rootfs | check-size $$$$(IMAGE_SIZE)
665 KERNEL := kernel-bin | patch-cmdline | relocate-kernel | lzma
666 KERNEL_INITRAMFS := $$(KERNEL) | mkwrggimg
667 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
668 DAP_SIGNATURE := wapac02_dkbs_dap2695
669 DEVICE_VARS += DAP_SIGNATURE
670 endef
671
672 TARGET_DEVICES += dap-2695-a1
673
674 define Build/mkbuffaloimg
675 $(STAGING_DIR_HOST)/bin/mkbuffaloimg -B $(BOARDNAME) \
676 -R $$(($(subst k, * 1024,$(ROOTFS_SIZE)))) \
677 -K $$(($(subst k, * 1024,$(KERNEL_SIZE)))) \
678 -i $@ -o $@.new
679 mv $@.new $@
680 endef
681
682 define Device/bhr-4grv2
683 DEVICE_TITLE := Buffalo BHR-4GRV2
684 BOARDNAME := BHR-4GRV2
685 ROOTFS_SIZE := 14528k
686 KERNEL_SIZE := 1472k
687 IMAGE_SIZE := 16000k
688 MTDPARTS := spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,14528k(rootfs),1472k(kernel),64k(art)ro,16000k@0x50000(firmware)
689 IMAGES := sysupgrade.bin factory.bin
690 IMAGE/sysupgrade.bin = append-rootfs | pad-rootfs | pad-to $$$$(ROOTFS_SIZE) | append-kernel | check-size $$$$(IMAGE_SIZE)
691 IMAGE/factory.bin = append-kernel | pad-to $$$$(KERNEL_SIZE) | append-rootfs | mkbuffaloimg
692 endef
693 TARGET_DEVICES += bhr-4grv2