04077e8002ebcf3b9e87324670acbc72db0ae051
[openwrt/openwrt.git] / target / linux / brcm47xx / image / Makefile
1 #
2 # Copyright (C) 2006-2016 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7 include $(TOPDIR)/rules.mk
8 include $(INCLUDE_DIR)/image.mk
9
10 USB2_PACKAGES := kmod-usb2
11
12 define Build/Clean
13 $(MAKE) -C lzma-loader clean
14 endef
15
16 define Image/Prepare
17 # Optimized LZMA compression (with dictionary), handled by lzma-loader.
18 cat $(KDIR)/vmlinux | $(STAGING_DIR_HOST)/bin/lzma e -si -so -eos -lc1 -lp2 -pb2 > $(KDIR)/vmlinux.lzma
19
20 # Less optimal LZMA compression (no dictionary), handled by CFE.
21 $(STAGING_DIR_HOST)/bin/lzma e -so -d16 $(KDIR)/vmlinux > $(KDIR)/vmlinux-nodictionary.lzma
22
23 gzip -nc9 $(KDIR)/vmlinux > $(KDIR)/vmlinux.gz
24 ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
25 cat $(KDIR)/vmlinux-initramfs | $(STAGING_DIR_HOST)/bin/lzma e -si -so -eos -lc1 -lp2 -pb2 > $(KDIR)/vmlinux-initramfs.lzma
26 $(STAGING_DIR_HOST)/bin/lzma e -so -d16 $(KDIR)/vmlinux-initramfs > $(KDIR)/vmlinux-initramfs-nodictionary.lzma
27 endif
28 rm -f $(KDIR)/loader.gz
29 $(MAKE) -C lzma-loader \
30 BUILD_DIR="$(KDIR)" \
31 TARGET="$(KDIR)" \
32 clean install
33 echo -ne "\\x00" >> $(KDIR)/loader.gz
34 rm -f $(KDIR)/fs_mark
35 echo -ne '\xde\xad\xc0\xde' > $(KDIR)/fs_mark
36 $(call prepare_generic_squashfs,$(KDIR)/fs_mark)
37 endef
38
39 define trxalign/jffs2-128k
40 -a 0x20000 -f $(KDIR)/root.$(1)
41 endef
42 define trxalign/jffs2-64k
43 -a 0x10000 -f $(KDIR)/root.$(1)
44 endef
45 define trxalign/squashfs
46 -a 1024 -f $(1) $(if $(2),-f $(2)) -a 0x10000 -A $(KDIR)/fs_mark
47 endef
48
49 #################################################
50 # Images
51 #################################################
52
53 define Build/trx-with-loader
54 $(STAGING_DIR_HOST)/bin/trx \
55 -m 33554432 \
56 -o $@.new \
57 -f $(KDIR)/loader.gz \
58 -f $(IMAGE_KERNEL) \
59 $(call trxalign/$(FILESYSTEM),$@)
60 mv $@.new $@
61 endef
62
63 define Build/trx-v2-with-loader
64 $(STAGING_DIR_HOST)/bin/trx \
65 -2 \
66 -m 33554432 \
67 -o $@.new \
68 -f $(KDIR)/loader.gz \
69 -f $(KDIR)/vmlinux.lzma \
70 $(call trxalign/$(FILESYSTEM),$@,$@.pattern)
71 mv $@.new $@
72 endef
73
74 define Build/trx-without-loader
75 $(STAGING_DIR_HOST)/bin/trx \
76 -m 33554432 \
77 -o $@.new \
78 -f $(IMAGE_KERNEL) \
79 $(call trxalign/$(FILESYSTEM),$@)
80 mv $@.new $@
81 endef
82
83 define Build/asus-trx
84 $(STAGING_DIR_HOST)/bin/asustrx -p $(PRODUCTID) -i $@ -o $@.new
85 mv $@.new $@
86 endef
87
88 define Build/edimax-bin
89 $(STAGING_DIR_HOST)/bin/trx2edips $@ $@.new
90 mv $@.new $@
91 endef
92
93 define Build/huawei-bin
94 dd if=/dev/zero of=$@.new bs=92 count=1
95 echo -ne 'HDR0\x08\x00\x00\x00' >> $@.new
96 cat $@ >> $@.new
97 mv $@.new $@
98 endef
99
100 define Build/linksys-bin
101 $(STAGING_DIR_HOST)/bin/addpattern -4 -p $(DEVICE_ID) -v v$(VERSION) $(if $(SERIAL),-s $(SERIAL)) -i $@ -o $@.new
102 mv $@.new $@
103 endef
104
105 define Build/linksys-pattern-partition
106 $(STAGING_DIR_HOST)/bin/addpattern -5 -p $(DEVICE_ID) -v v$(VERSION) $(if $(SERIAL),-s $(SERIAL)) -i /dev/null -o $@.pattern
107 endef
108
109 define Build/motorola-bin
110 $(STAGING_DIR_HOST)/bin/motorola-bin -$(MOTOROLA_DEVICE) $@ $@.new
111 mv $@.new $@
112 endef
113
114 define Build/prepend-with-elf
115 mv $@ $@.old
116 dd if=$(KDIR)/loader.elf of=$@ bs=131072 conv=sync
117 cat $@.old >> $@
118 endef
119
120 define Build/tailed-bin
121 echo $(BIN_TAIL) >> $@
122 endef
123
124 define Build/usrobotics-bin
125 $(STAGING_DIR_HOST)/bin/trx2usr $@ $@.new
126 mv $@.new $@
127 endef
128
129 #################################################
130 # Devices
131 #################################################
132
133 DEVICE_VARS += PRODUCTID
134 DEVICE_VARS += DEVICE_ID VERSION SERIAL
135 DEVICE_VARS += NETGEAR_BOARD_ID NETGEAR_REGION
136 DEVICE_VARS += MOTOROLA_DEVICE
137 DEVICE_VARS += BIN_TAIL
138
139 define Device/Default
140 KERNEL := kernel-bin
141 IMAGE_NAME = $$(IMAGE_PREFIX)-$$(1).$$(2)
142 KERNEL_NAME = vmlinux.lzma
143 KERNEL_INITRAMFS_NAME = vmlinux-initramfs.lzma
144 FILESYSTEMS := $(FS_64K)
145 IMAGES := trx
146 IMAGE/trx := append-rootfs | trx-with-loader
147 endef
148
149 define Device/standard
150 DEVICE_TITLE := Image with LZMA loader and LZMA compressed kernel
151 endef
152
153 define Device/standard-noloader-gz
154 DEVICE_TITLE := Image with gzipped kernel
155 KERNEL_NAME = vmlinux.gz
156 IMAGE/trx := append-rootfs | trx-without-loader
157 endef
158
159 define Device/standard-noloader-nodictionarylzma
160 DEVICE_TITLE := Image with LZMA compressed kernel matching CFE decompressor
161 KERNEL_NAME = vmlinux-nodictionary.lzma
162 IMAGE/trx := append-rootfs | trx-without-loader
163 endef
164
165 define Device/asus
166 IMAGES := trx
167 IMAGE/trx := append-rootfs | trx-with-loader | asus-trx
168 endef
169
170 define Device/linksys
171 IMAGES := bin
172 IMAGE/bin := append-rootfs | trx-with-loader | linksys-bin
173 endef
174
175 define Device/motorola
176 IMAGES := bin
177 IMAGE/bin := append-rootfs | trx-with-loader | motorola-bin
178 endef
179
180 define Device/netgear
181 IMAGES := chk
182 IMAGE/chk := append-rootfs | trx-with-loader | netgear-chk
183 endef
184
185 #################################################
186 # Subtarget generic
187 #################################################
188
189 ifeq ($(SUBTARGET),generic)
190 # BCM4705 with tg3
191 define Device/linksys-wrt300n-v1.1
192 DEVICE_TITLE := Linksys WRT300N v1.1
193 $(Device/linksys)
194 DEVICE_ID := EWC2
195 VERSION := 1.51.2
196 endef
197 TARGET_DEVICES += linksys-wrt300n-v1.1
198
199 define Device/linksys-wrt310n-v1
200 DEVICE_TITLE := Linksys WRT310N v1
201 $(Device/linksys)
202 DEVICE_ID := 310N
203 VERSION := 1.0.10
204 endef
205 TARGET_DEVICES += linksys-wrt310n-v1
206
207 define Device/linksys-wrt350n-v1
208 DEVICE_TITLE := Linksys WRT350N v1
209 $(Device/linksys)
210 DEVICE_ID := EWCG
211 VERSION := 1.04.1
212 endef
213 TARGET_DEVICES += linksys-wrt350n-v1
214
215 define Device/linksys-wrt610n-v1
216 DEVICE_TITLE := Linksys WRT610N v1
217 $(Device/linksys)
218 DEVICE_ID := 610N
219 VERSION := 1.0.1
220 endef
221 TARGET_DEVICES += linksys-wrt610n-v1
222
223 # BCMA SoC with SSB WiFi
224 define Device/linksys-wrt610n-v2
225 DEVICE_TITLE := Linksys WRT610N v2
226 $(Device/linksys)
227 DEVICE_ID := 610N
228 VERSION := 2.0.0
229 endef
230 TARGET_DEVICES += linksys-wrt610n-v2
231
232 define Device/linksys-e3000-v1
233 DEVICE_TITLE := Linksys E3000 v1
234 $(Device/linksys)
235 DEVICE_ID := 61XN
236 VERSION := 1.0.3
237 endef
238 TARGET_DEVICES += linksys-e3000-v1
239
240 TARGET_DEVICES += standard
241 endif
242
243 #################################################
244 # Subtarget legacy
245 #################################################
246
247 ifeq ($(SUBTARGET),legacy)
248
249 define Device/asus-wl-300g
250 DEVICE_TITLE := Asus WL-300g
251 $(Device/asus)
252 PRODUCTID := "WL300g "
253 endef
254 TARGET_DEVICES += asus-wl-300g
255
256 define Device/asus-wl-320gp
257 DEVICE_TITLE := Asus WL-320gP
258 $(Device/asus)
259 PRODUCTID := "WL320gP "
260 endef
261 TARGET_DEVICES += asus-wl-320gp
262
263 define Device/asus-wl-330ge
264 DEVICE_TITLE := Asus WL-330gE
265 $(Device/asus)
266 PRODUCTID := "WL-330gE "
267 endef
268 TARGET_DEVICES += asus-wl-330ge
269
270 define Device/asus-wl-500gp-v1
271 DEVICE_TITLE := Asus WL-500gP v1
272 $(Device/asus)
273 PRODUCTID := "WL500gp "
274 endef
275 TARGET_DEVICES += asus-wl-500gp-v1
276
277 define Device/asus-wl-500gp-v2
278 DEVICE_TITLE := Asus WL-500gP v2
279 $(Device/asus)
280 PRODUCTID := "WL500gpv2 "
281 endef
282 TARGET_DEVICES += asus-wl-500gp-v2
283
284 define Device/asus-wl-500w
285 DEVICE_TITLE := Asus WL-500W
286 $(Device/asus)
287 PRODUCTID := "WL500W "
288 endef
289 TARGET_DEVICES += asus-wl-500w
290
291 define Device/asus-wl-520gu
292 DEVICE_TITLE := Asus WL-520gU
293 $(Device/asus)
294 PRODUCTID := "WL520gu "
295 endef
296 TARGET_DEVICES += asus-wl-520gu
297
298 define Device/asus-wl-550ge
299 DEVICE_TITLE := Asus WL-550gE
300 $(Device/asus)
301 PRODUCTID := "WL550gE "
302 endef
303 TARGET_DEVICES += asus-wl-550ge
304
305 define Device/asus-wl-hdd25
306 DEVICE_TITLE := Asus WL-HDD25
307 $(Device/asus)
308 PRODUCTID := "WLHDD "
309 endef
310 TARGET_DEVICES += asus-wl-hdd25
311
312 define Device/dlink-dwl-3150
313 DEVICE_TITLE := D-Link DWL-3150
314 IMAGES := bin
315 IMAGE/bin := append-rootfs | trx-with-loader | tailed-bin
316 BIN_TAIL := BCM-5352-2050-0000000-01
317 endef
318 TARGET_DEVICES += dlink-dwl-3150
319
320 define Device/edimax-ps1208-mfg
321 DEVICE_TITLE := Edimax PS-1208MFg
322 IMAGES := bin
323 IMAGE/bin := append-rootfs | trx-with-loader | edimax-bin
324 endef
325 TARGET_DEVICES += edimax-ps1208-mfg
326
327 define Device/huawei-e970
328 DEVICE_TITLE := Huawei E970
329 KERNEL_NAME = vmlinux.gz
330 IMAGES := bin
331 IMAGE/bin := append-rootfs | trx-without-loader | huawei-bin
332 endef
333 TARGET_DEVICES += huawei-e970
334
335 define Device/linksys-wrt54g3g
336 DEVICE_TITLE := Linksys WRT54G3G
337 $(Device/linksys)
338 DEVICE_ID := W54F
339 VERSION := 2.20.1
340 endef
341 TARGET_DEVICES += linksys-wrt54g3g
342
343 define Device/linksys-wrt54g3g-em
344 DEVICE_TITLE := Linksys WRT54G3G-EM
345 $(Device/linksys)
346 DEVICE_ID := W3GN
347 VERSION := 2.20.1
348 endef
349 TARGET_DEVICES += linksys-wrt54g3g-em
350
351 define Device/linksys-wrt54g3gv2-vf
352 DEVICE_TITLE := Linksys WRT54G3GV2-VF
353 FILESYSTEMS := $(FS_128K)
354 IMAGES := noheader.bin bin
355 IMAGE/noheader.bin := linksys-pattern-partition | append-rootfs | trx-v2-with-loader
356 IMAGE/bin := linksys-pattern-partition | append-rootfs | trx-v2-with-loader | linksys-bin
357 DEVICE_ID := 3G2V
358 VERSION := 3.00.24
359 SERIAL := 6
360 endef
361 TARGET_DEVICES += linksys-wrt54g3gv2-vf
362
363 define Device/linksys-wrt54g
364 DEVICE_TITLE := Linksys WRT54G
365 $(Device/linksys)
366 DEVICE_ID := W54G
367 VERSION := 4.71.1
368 endef
369 TARGET_DEVICES += linksys-wrt54g
370
371 define Device/linksys-wrt54gs
372 DEVICE_TITLE := Linksys WRT54GS
373 $(Device/linksys)
374 FILESYSTEMS := $(FS_128K)
375 DEVICE_ID := W54S
376 VERSION := 4.80.1
377 endef
378 TARGET_DEVICES += linksys-wrt54gs
379
380 define Device/linksys-wrt54gs-v4
381 DEVICE_TITLE := Linksys WRT54GS v4
382 $(Device/linksys)
383 DEVICE_ID := W54s
384 VERSION := 1.09.1
385 endef
386 TARGET_DEVICES += linksys-wrt54gs-v4
387
388 define Device/linksys-wrtsl54gs
389 DEVICE_TITLE := Linksys WRTSL54GS
390 $(Device/linksys)
391 FILESYSTEMS := $(FS_128K)
392 DEVICE_ID := W54U
393 VERSION := 2.08.1
394 endef
395 TARGET_DEVICES += linksys-wrtsl54gs
396
397 define Device/linksys-wrt150n
398 DEVICE_TITLE := Linksys WRT150N
399 $(Device/linksys)
400 DEVICE_ID := N150
401 VERSION := 1.51.3
402 endef
403 TARGET_DEVICES += linksys-wrt150n
404
405 define Device/linksys-wrt160n-v1
406 DEVICE_TITLE := Linksys WRT160N v1
407 $(Device/linksys)
408 DEVICE_ID := N150
409 VERSION := 1.50.1
410 endef
411 TARGET_DEVICES += linksys-wrt160n-v1
412
413 define Device/linksys-wrt300n-v1
414 DEVICE_TITLE := Linksys WRT300N v1
415 $(Device/linksys)
416 IMAGES := bin trx
417 DEVICE_ID := EWCB
418 VERSION := 1.03.6
419 endef
420 TARGET_DEVICES += linksys-wrt300n-v1
421
422 define Device/motorola-wa840g
423 DEVICE_TITLE := Motorola WA840G
424 $(Device/motorola)
425 MOTOROLA_DEVICE := 2
426 endef
427 TARGET_DEVICES += motorola-wa840g
428
429 define Device/motorola-we800g
430 DEVICE_TITLE := Motorola WE800G
431 $(Device/motorola)
432 MOTOROLA_DEVICE := 3
433 endef
434 TARGET_DEVICES += motorola-we800g
435
436 define Device/motorola-wr850g
437 DEVICE_TITLE := Motorola WR850G
438 $(Device/motorola)
439 MOTOROLA_DEVICE := 1
440 endef
441 TARGET_DEVICES += motorola-wr850g
442
443 define Device/netgear-wgr614-v8
444 DEVICE_TITLE := Netgear WGR614 v8
445 $(Device/netgear)
446 NETGEAR_BOARD_ID := U12H072T00_NETGEAR
447 NETGEAR_REGION := 2
448 endef
449 TARGET_DEVICES += netgear-wgr614-v8
450
451 define Device/netgear-wgt634u
452 DEVICE_TITLE := Netgear WGT634U
453 DEVICE_PACKAGES := kmod-ath5k $(USB2_PACKAGES)
454 FILESYSTEMS := $(FS_128K)
455 IMAGES := bin
456 IMAGE/bin := append-rootfs | trx-with-loader | prepend-with-elf
457 endef
458 TARGET_DEVICES += netgear-wgt634u
459
460 define Device/netgear-wndr3300-v1
461 DEVICE_TITLE := Netgear WNDR3300 v1
462 $(Device/netgear)
463 NETGEAR_BOARD_ID := U12H093T00_NETGEAR
464 NETGEAR_REGION := 2
465 endef
466 TARGET_DEVICES += netgear-wndr3300-v1
467
468 define Device/netgear-wnr834b-v2
469 DEVICE_TITLE := Netgear WNR834B v2
470 $(Device/netgear)
471 NETGEAR_BOARD_ID := U12H081T00_NETGEAR
472 NETGEAR_REGION := 2
473 endef
474 TARGET_DEVICES += netgear-wnr834b-v2
475
476 define Device/usrobotics-usr5461
477 DEVICE_TITLE := USRobotics USR5461
478 IMAGES := bin
479 IMAGE/bin := append-rootfs | trx-with-loader | usrobotics-bin
480 endef
481 TARGET_DEVICES += usrobotics-usr5461
482
483 TARGET_DEVICES += standard standard-noloader-gz
484 endif
485
486 #################################################
487 # Subtarget mips74k
488 #################################################
489
490 ifeq ($(SUBTARGET),mips74k)
491 define Device/asus-rt-ac53u
492 DEVICE_TITLE := Asus RT-AC53U
493 $(Device/asus)
494 PRODUCTID := RT-AC53U
495 endef
496 TARGET_DEVICES += asus-rt-ac53u
497
498 define Device/asus-rt-ac66u
499 DEVICE_TITLE := Asus RT-AC66U
500 $(Device/asus)
501 PRODUCTID := RT-AC66U
502 endef
503 # TARGET_DEVICES += asus-rt-ac66u
504
505 define Device/asus-rt-n10
506 DEVICE_TITLE := Asus RT-N10
507 $(Device/asus)
508 PRODUCTID := "RT-N10 "
509 endef
510 TARGET_DEVICES += asus-rt-n10
511
512 define Device/asus-rt-n10p
513 DEVICE_TITLE := Asus RT-N10P
514 $(Device/asus)
515 PRODUCTID := RT-N10P
516 endef
517 TARGET_DEVICES += asus-rt-n10p
518
519 define Device/asus-rt-n10p-v2
520 DEVICE_TITLE := Asus RT-N10P v2
521 $(Device/asus)
522 PRODUCTID := RT-N10PV2
523 endef
524 TARGET_DEVICES += asus-rt-n10p-v2
525
526 define Device/asus-rt-n10u
527 DEVICE_TITLE := Asus RT-N10U
528 $(Device/asus)
529 PRODUCTID := RT-N10U
530 endef
531 TARGET_DEVICES += asus-rt-n10u
532
533 define Device/asus-rt-n10u-b
534 DEVICE_TITLE := Asus RT-N10U B
535 $(Device/asus)
536 PRODUCTID := RT-N10U
537 endef
538 TARGET_DEVICES += asus-rt-n10u-b
539
540 define Device/asus-rt-n12
541 DEVICE_TITLE := Asus RT-N12
542 $(Device/asus)
543 PRODUCTID := "RT-N12 "
544 endef
545 TARGET_DEVICES += asus-rt-n12
546
547 define Device/asus-rt-n12-b1
548 DEVICE_TITLE := Asus RT-N12 B1
549 $(Device/asus)
550 PRODUCTID := RT-N12B1
551 endef
552 TARGET_DEVICES += asus-rt-n12-b1
553
554 define Device/asus-rt-n12-c1
555 DEVICE_TITLE := Asus RT-N12 C1
556 $(Device/asus)
557 PRODUCTID := RT-N12C1
558 endef
559 TARGET_DEVICES += asus-rt-n12-c1
560
561 define Device/asus-rt-n12-d1
562 DEVICE_TITLE := Asus RT-N12 D1
563 $(Device/asus)
564 PRODUCTID := RT-N12D1
565 endef
566 TARGET_DEVICES += asus-rt-n12-d1
567
568 define Device/asus-rt-n12hp
569 DEVICE_TITLE := Asus RT-N12HP
570 $(Device/asus)
571 PRODUCTID := RT-N12HP
572 endef
573 TARGET_DEVICES += asus-rt-n12hp
574
575 define Device/asus-rt-n14uhp
576 DEVICE_TITLE := Asus RT-N14UHP
577 $(Device/asus)
578 PRODUCTID := RT-N14UHP
579 endef
580 TARGET_DEVICES += asus-rt-n14uhp
581
582 define Device/asus-rt-n15u
583 DEVICE_TITLE := Asus RT-N15U
584 $(Device/asus)
585 PRODUCTID := RT-N15U
586 endef
587 TARGET_DEVICES += asus-rt-n15u
588
589 define Device/asus-rt-n16
590 DEVICE_TITLE := Asus RT-N16
591 $(Device/asus)
592 PRODUCTID := RT-N16
593 endef
594 TARGET_DEVICES += asus-rt-n16
595
596 define Device/asus-rt-n53
597 DEVICE_TITLE := Asus RT-N53
598 $(Device/asus)
599 PRODUCTID := RT-N53
600 endef
601 TARGET_DEVICES += asus-rt-n53
602
603 define Device/asus-rt-n66u
604 DEVICE_TITLE := Asus RT-N66U
605 $(Device/asus)
606 PRODUCTID := RT-N66U
607 endef
608 TARGET_DEVICES += asus-rt-n66u
609
610 define Device/asus-rt-n66w
611 DEVICE_TITLE := Asus RT-N66W
612 $(Device/asus)
613 PRODUCTID := RT-N66U
614 endef
615 TARGET_DEVICES += asus-rt-n66w
616
617 define Device/linksys-wrt160n-v3
618 DEVICE_TITLE := Linksys WRT160N v3
619 $(Device/linksys)
620 DEVICE_ID := N150
621 VERSION := 3.0.3
622 endef
623 TARGET_DEVICES += linksys-wrt160n-v3
624
625 define Device/linksys-wrt310n-v2
626 DEVICE_TITLE := Linksys WRT310N v2
627 $(Device/linksys)
628 DEVICE_ID := 310N
629 VERSION := 2.0.1
630 endef
631 TARGET_DEVICES += linksys-wrt310n-v2
632
633 define Device/linksys-wrt320n-v1
634 DEVICE_TITLE := Linksys WRT320N v1
635 $(Device/linksys)
636 DEVICE_ID := 320N
637 VERSION := 1.0.5
638 endef
639 TARGET_DEVICES += linksys-wrt320n-v1
640
641 define Device/linksys-e900-v1
642 DEVICE_TITLE := Linksys E900 v1
643 $(Device/linksys)
644 DEVICE_ID := E900
645 VERSION := 1.0.4
646 endef
647 TARGET_DEVICES += linksys-e900-v1
648
649 define Device/linksys-e1000-v1-v2-v2.1
650 DEVICE_TITLE := Linksys E1000 v1 v2 v2.1
651 $(Device/linksys)
652 DEVICE_ID := E100
653 VERSION := 1.1.3
654 endef
655 TARGET_DEVICES += linksys-e1000-v1-v2-v2.1
656
657 define Device/linksys-e1200-v1
658 DEVICE_TITLE := Linksys E1200 v1
659 $(Device/linksys)
660 DEVICE_ID := E120
661 VERSION := 1.0.3
662 endef
663 TARGET_DEVICES += linksys-e1200-v1
664
665 define Device/linksys-e1200-v2
666 DEVICE_TITLE := Linksys E1200 v2
667 $(Device/linksys)
668 DEVICE_ID := E122
669 VERSION := 1.0.4
670 endef
671 TARGET_DEVICES += linksys-e1200-v2
672
673 define Device/linksys-e1500-v1
674 DEVICE_TITLE := Linksys E1500 v1
675 $(Device/linksys)
676 DEVICE_ID := E150
677 VERSION := 1.0.5
678 endef
679 TARGET_DEVICES += linksys-e1500-v1
680
681 define Device/linksys-e1550-v1
682 DEVICE_TITLE := Linksys E1550 v1
683 $(Device/linksys)
684 DEVICE_ID := 1550
685 VERSION := 1.0.3
686 endef
687 TARGET_DEVICES += linksys-e1550-v1
688
689 define Device/linksys-e2000-v1
690 DEVICE_TITLE := Linksys E2000 v1
691 $(Device/linksys)
692 DEVICE_ID := 32XN
693 VERSION := 1.0.4
694 endef
695 TARGET_DEVICES += linksys-e2000-v1
696
697 define Device/linksys-e2500-v1
698 DEVICE_TITLE := Linksys E2500 v1
699 $(Device/linksys)
700 DEVICE_ID := E25X
701 VERSION := 1.0.7
702 endef
703 TARGET_DEVICES += linksys-e2500-v1
704
705 define Device/linksys-e2500-v2
706 DEVICE_TITLE := Linksys E2500 v2
707 $(Device/linksys)
708 DEVICE_ID := E25X
709 VERSION := 2.0.0
710 endef
711 TARGET_DEVICES += linksys-e2500-v2
712
713 define Device/linksys-e2500-v2.1
714 DEVICE_TITLE := Linksys E2500 v2.1
715 $(Device/linksys)
716 DEVICE_ID := 25RU
717 VERSION := 2.1.0
718 endef
719 TARGET_DEVICES += linksys-e2500-v2.1
720
721 define Device/linksys-e2500-v3
722 DEVICE_TITLE := Linksys E2500 v3
723 $(Device/linksys)
724 DEVICE_ID := 25V3
725 VERSION := 3.0.0
726 endef
727 TARGET_DEVICES += linksys-e2500-v3
728
729 define Device/linksys-e3200-v1
730 DEVICE_TITLE := Linksys E3200 v1
731 $(Device/linksys)
732 DEVICE_ID := 3200
733 VERSION := 1.0.1
734 endef
735 TARGET_DEVICES += linksys-e3200-v1
736
737 define Device/linksys-e4200-v1
738 DEVICE_TITLE := Linksys E4200 v1
739 $(Device/linksys)
740 DEVICE_ID := 4200
741 VERSION := 1.0.5
742 endef
743 TARGET_DEVICES += linksys-e4200-v1
744
745 define Device/netgear-wgr614-v10_north-america
746 DEVICE_TITLE := Netgear WGR614 v10 North America
747 $(Device/netgear)
748 NETGEAR_BOARD_ID := U12H139T01_NETGEAR
749 NETGEAR_REGION := 2
750 endef
751 TARGET_DEVICES += netgear-wgr614-v10_north-america
752
753 define Device/netgear-wgr614-v10_other-regions
754 DEVICE_TITLE := Netgear WGR614 v10 Other Regions
755 $(Device/netgear)
756 NETGEAR_BOARD_ID := U12H139T01_NETGEAR
757 NETGEAR_REGION := 1
758 endef
759 TARGET_DEVICES += netgear-wgr614-v10_other-regions
760
761 define Device/netgear-wn2500rp-v1
762 DEVICE_TITLE := Netgear WN2500RP v1
763 $(Device/netgear)
764 NETGEAR_BOARD_ID := U12H197T00_NETGEAR
765 NETGEAR_REGION := 1
766 endef
767 TARGET_DEVICES += netgear-wn2500rp-v1
768
769 define Device/netgear-wn3000rp
770 DEVICE_TITLE := Netgear WN3000RP
771 $(Device/netgear)
772 NETGEAR_BOARD_ID := U12H163T01_NETGEAR
773 NETGEAR_REGION := 1
774 endef
775 TARGET_DEVICES += netgear-wn3000rp
776
777 define Device/netgear-wndr3400-v1
778 DEVICE_TITLE := Netgear WNDR3400 v1
779 $(Device/netgear)
780 NETGEAR_BOARD_ID := U12H155T00_NETGEAR
781 NETGEAR_REGION := 2
782 endef
783 TARGET_DEVICES += netgear-wndr3400-v1
784
785 define Device/netgear-wndr3400-v2
786 DEVICE_TITLE := Netgear WNDR3400 v2
787 $(Device/netgear)
788 NETGEAR_BOARD_ID := U12H187T00_NETGEAR
789 NETGEAR_REGION := 2
790 endef
791 TARGET_DEVICES += netgear-wndr3400-v2
792
793 define Device/netgear-wndr3400-v3
794 DEVICE_TITLE := Netgear WNDR3400 v3
795 $(Device/netgear)
796 NETGEAR_BOARD_ID := U12H208T00_NETGEAR
797 NETGEAR_REGION := 1
798 endef
799 TARGET_DEVICES += netgear-wndr3400-v3
800
801 define Device/netgear-wndr3700-v3
802 DEVICE_TITLE := Netgear WNDR3700 v3
803 $(Device/netgear)
804 NETGEAR_BOARD_ID := U12H194T00_NETGEAR
805 NETGEAR_REGION := 2
806 endef
807 TARGET_DEVICES += netgear-wndr3700-v3
808
809 define Device/netgear-wndr3400-vcna
810 DEVICE_TITLE := Netgear WNDR3400 vcna
811 $(Device/netgear)
812 NETGEAR_BOARD_ID := U12H155T01_NETGEAR
813 NETGEAR_REGION := 2
814 endef
815 # TARGET_DEVICES += netgear-wndr3400-vcna
816
817 define Device/netgear-wndr4000
818 DEVICE_TITLE := Netgear WNDR4000
819 $(Device/netgear)
820 NETGEAR_BOARD_ID := U12H181T00_NETGEAR
821 NETGEAR_REGION := 2
822 endef
823 TARGET_DEVICES += netgear-wndr4000
824
825 define Device/netgear-wnr1000-v3
826 DEVICE_TITLE := Netgear WNR1000 v3
827 $(Device/netgear)
828 NETGEAR_BOARD_ID := U12H139T00_NETGEAR
829 NETGEAR_REGION := 2
830 endef
831 TARGET_DEVICES += netgear-wnr1000-v3
832
833 define Device/netgear-wnr2000v2
834 DEVICE_TITLE := Netgear WNR2000 v2
835 $(Device/netgear)
836 NETGEAR_BOARD_ID := U12H114T00_NETGEAR
837 NETGEAR_REGION := 2
838 endef
839 TARGET_DEVICES += netgear-wnr2000v2
840
841 define Device/netgear-wnr3500l-v1-north-america
842 DEVICE_TITLE := Netgear WNR3500L v1 North America
843 $(Device/netgear)
844 NETGEAR_BOARD_ID := U12H136T99_NETGEAR
845 NETGEAR_REGION := 2
846 endef
847 TARGET_DEVICES += netgear-wnr3500l-v1-north-america
848
849 define Device/netgear-wnr3500l-v1-other-regions
850 DEVICE_TITLE := Netgear WNR3500L v1 Other Regions
851 $(Device/netgear)
852 NETGEAR_BOARD_ID := U12H136T99_NETGEAR
853 NETGEAR_REGION := 1
854 endef
855 TARGET_DEVICES += netgear-wnr3500l-v1-other-regions
856
857 define Device/netgear-wnr3500l-v2
858 DEVICE_TITLE := Netgear WNR3500L v2
859 $(Device/netgear)
860 NETGEAR_BOARD_ID := U12H172T00_NETGEAR
861 NETGEAR_REGION := 1
862 endef
863 TARGET_DEVICES += netgear-wnr3500l-v2
864
865 define Device/netgear-wnr3500u
866 DEVICE_TITLE := Netgear WNR3500U
867 $(Device/netgear)
868 NETGEAR_BOARD_ID := U12H136T00_NETGEAR
869 NETGEAR_REGION := 2
870 endef
871 # TARGET_DEVICES += netgear-wnr3500u
872
873 define Device/netgear-wnr3500-v2
874 DEVICE_TITLE := Netgear WNR3500 v2
875 $(Device/netgear)
876 NETGEAR_BOARD_ID := U12H127T00_NETGEAR
877 NETGEAR_REGION := 2
878 endef
879 TARGET_DEVICES += netgear-wnr3500-v2
880
881 define Device/netgear-wnr3500-v2-vc
882 DEVICE_TITLE := Netgear WNR3500 v2 vc
883 $(Device/netgear)
884 NETGEAR_BOARD_ID := U12H127T70_NETGEAR
885 NETGEAR_REGION := 2
886 endef
887 # TARGET_DEVICES += netgear-wnr3500-v2-vc
888
889 TARGET_DEVICES += standard standard-noloader-nodictionarylzma
890 endif
891
892 #################################################
893 # Shared BuildImage defines
894 #################################################
895
896 define Image/Build/Initramfs
897 $(STAGING_DIR_HOST)/bin/trx \
898 -m 33554432 \
899 -o $(BIN_DIR)/$(IMG_PREFIX)-initramfs.trx \
900 -f $(KDIR)/loader.gz \
901 -f $(KDIR)/vmlinux-initramfs.lzma
902 $(STAGING_DIR_HOST)/bin/trx \
903 -m 33554432 \
904 -o $(BIN_DIR)/$(IMG_PREFIX)-initramfs-noloader-nodictionary.trx \
905 -f $(KDIR)/vmlinux-initramfs-nodictionary.lzma
906 endef
907
908 # $(1): filesystem type.
909 define Image/Build
910 # TODO: Move it to Device/*
911 ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
912 $(call Image/Build/Initramfs)
913 endif
914 endef
915
916 $(eval $(call BuildImage))