2 # Copyright (C) 2008-2011 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 JFFS2_BLOCKSIZE
= 64k
128k
256k
10 include $(TOPDIR
)/rules.mk
11 include $(INCLUDE_DIR
)/image.mk
13 IMAGE_PROFILE
:=$(if
$(PROFILE
),$(PROFILE
),Default
)
15 KERNEL_LOADADDR
= 0x80060000
17 DEVICE_VARS
+= NETGEAR_KERNEL_MAGIC NETGEAR_BOARD_ID NETGEAR_HW_ID CMDLINE CONSOLE IMAGE_SIZE BOARDNAME LOADER_FLASH_OFFS
19 define Build
/netgear-squashfs
20 rm -rf
$@.fs
$@.squashfs
22 cp
$@
$@.fs
/image
/uImage
23 $(STAGING_DIR_HOST
)/bin
/mksquashfs-lzma \
25 -noappend
-root-owned
-be
-b
65536 \
26 $(if
$(SOURCE_DATE_EPOCH
),-fixed-time
$(SOURCE_DATE_EPOCH
))
28 dd if
=/dev
/zero bs
=1k count
=1 >> $@.squashfs
30 -A mips
-O linux
-T filesystem
-C none \
31 -M
$(NETGEAR_KERNEL_MAGIC
) \
32 -a
0xbf070000 -e
0xbf070000 \
33 -n
'MIPS OpenWrt Linux-$(LINUX_VERSION)' \
35 rm -rf
$@.squashfs
$@.fs
38 define Build
/netgear-uImage
39 $(call Build
/uImage
,$(1) -M
$(NETGEAR_KERNEL_MAGIC
))
42 # combine kernel and rootfs into one image
43 # mktplinkfw <type> <optional extra arguments to mktplinkfw binary>
44 # <type> is "sysupgrade" or "factory"
46 # -a align the rootfs start on an <align> bytes boundary
47 # -j add jffs2 end-of-filesystem markers
48 # -s strip padding from end of the image
49 # -X reserve <size> bytes in the firmware image (hexval prefixed with 0x)
50 define Build
/mktplinkfw
51 -$(STAGING_DIR_HOST
)/bin
/mktplinkfw \
52 -H
$(TPLINK_HWID
) -W
$(TPLINK_HWREV
) -F
$(TPLINK_FLASHLAYOUT
) -N OpenWrt
-V
$(REVISION
) $2 \
53 -m
$(TPLINK_HEADER_VERSION
) \
58 -a
$(call rootfs_align
,$(FILESYSTEM
)) \
59 $(if
$(findstring sysupgrade
,$1),-s
) && mv
$@.new
$@ ||
rm -f
$@
62 # mktplinkfw-initramfs <optional extra arguments to mktplinkfw binary>
65 define Build
/mktplinkfw-initramfs
66 $(STAGING_DIR_HOST
)/bin
/mktplinkfw \
67 -H
$(TPLINK_HWID
) -W
$(TPLINK_HWREV
) -F
$(TPLINK_FLASHLAYOUT
) -N OpenWrt
-V
$(REVISION
) $2 \
68 -m
$(TPLINK_HEADER_VERSION
) \
76 define Build
/loader-common
78 $(MAKE
) -C lzma-loader \
79 PKG_BUILD_DIR
="$@.src" \
80 TARGET_DIR
="$(dir $@)" LOADER_NAME
="$(notdir $@)" \
81 KERNEL_CMDLINE
="$(CMDLINE)" BOARD
="$(BOARDNAME)" \
82 LZMA_TEXT_START
=0x80a00000 LOADADDR
=0x80060000 \
83 $(1) compile loader.gz
88 define Build
/loader-okli-compile
89 $(call Build
/loader-common
,FLASH_OFFS
=$(LOADER_FLASH_OFFS
) FLASH_MAX
=0)
92 define Build
/loader-kernel
93 $(call Build
/loader-common
,LOADER_DATA
="$@")
96 define Build
/loader-okli
97 dd if
=$(KDIR
)/loader-
$(1).gz bs
=7680 conv
=sync of
="$@.new"
102 define Build
/copy-file
106 DEVICE_VARS
+= TPLINK_HWID TPLINK_HWREV TPLINK_FLASHLAYOUT TPLINK_HEADER_VERSION
108 # UBNT_BOARD e.g. one of (XS2, XS5, RS, XM)
109 # UBNT_TYPE e.g. one of (BZ, XM, XW)
110 # UBNT_CHIP e.g. one of (ar7240, ar933x, ar934x)
112 # mkubntimage is using the kernel image direct
113 # routerboard creates partitions out of the ubnt header
114 define Build
/mkubntimage
115 $(STAGING_DIR_HOST
)/bin
/mkfwimage \
116 -B
$(UBNT_BOARD
) -v
$(UBNT_TYPE
).
$(UBNT_CHIP
).v6.0
.0-OpenWrt-
$(REVISION
) \
122 # all UBNT XM device expect the kernel image to have 1024k while flash, when
123 # booting the image, the size doesn't matter.
124 define Build
/mkubntimage-split
125 dd if
=$@ of
=$@.old1 bs
=1024k count
=1
126 dd if
=$@ of
=$@.old2 bs
=1024k skip
=1
127 $(STAGING_DIR_HOST
)/bin
/mkfwimage \
128 -B
$(UBNT_BOARD
) -v
$(UBNT_TYPE
).
$(UBNT_CHIP
).v6.0
.0-OpenWrt-
$(REVISION
) \
135 define Build
/mkubntimage2
136 $(STAGING_DIR_HOST
)/bin
/mkfwimage2
-f
0x9f000000 \
137 -v
$(UBNT_TYPE
).
$(UBNT_CHIP
).v6.0
.0-OpenWrt-
$(REVISION
) \
138 -p jffs2
:0x50000:0xf60000:0:0:$@ \
143 DEVICE_VARS
+= UBNT_BOARD UBNT_CHIP UBNT_TYPE
145 define Device
/Default
147 DEVICE_PROFILE
= $$(BOARDNAME
)
148 PROFILES
= Default Minimal
$$(DEVICE_PROFILE
)
150 IMAGES
:= sysupgrade.bin
152 FILESYSTEMS
= $(filter-out jffs2-
%,$(TARGET_FILESYSTEMS
)) jffs2-
$$(BLOCKSIZE
)
153 CONSOLE
= ttyS0
,115200
154 CMDLINE
= $$(if
$$(BOARDNAME
),board
=$$(BOARDNAME
)) $$(if
$$(MTDPARTS
),mtdparts
=$$(MTDPARTS
)) $$(if
$$(CONSOLE
),console
=$$(CONSOLE
))
155 KERNEL
:= kernel-bin | patch-cmdline | lzma | uImage lzma
157 IMAGES
:= sysupgrade.bin
158 IMAGE
/sysupgrade.bin
= append-kernel
$$$$(BLOCKSIZE
) | append-rootfs | pad-rootfs | check-size
$$$$(IMAGE_SIZE
)
164 CONSOLE
= ttyATH0
,115200
165 MTDPARTS
= spi0.0
:128k
(u-boot
)ro
,64k
(u-boot-env
)ro
,16128k
(firmware
),64k
(art
)ro
167 TARGET_DEVICES
+= bsb
169 define Device
/carambola2
170 BOARDNAME
= CARAMBOLA2
172 CONSOLE
= ttyATH0
,115200
173 MTDPARTS
= spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,16000k
(firmware
),64k
(art
)ro
175 TARGET_DEVICES
+= carambola2
177 define Device
/cf-e316n-v2
178 BOARDNAME
= CF-E316N-V2
180 CONSOLE
= ttyS0
,115200
181 MTDPARTS
= spi0.0
:64k
(u-boot
)ro
,64k
(art
)ro
,16192k
(firmware
),64k
(nvram
)ro
183 TARGET_DEVICES
+= cf-e316n-v2
188 CONSOLE
= ttyATH0
,115200
189 MTDPARTS
= spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,16000k
(firmware
),64k
(art
)ro
191 TARGET_DEVICES
+= weio
193 define Device
/gl-ar150
196 CONSOLE
= ttyATH0
,115200
197 MTDPARTS
= spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,16000k
(firmware
),64k
(art
)ro
199 TARGET_DEVICES
+= gl-ar150
201 define Device
/gl-ar300
204 CONSOLE
= ttyS0
,115200
205 MTDPARTS
= spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,16000k
(firmware
),64k
(art
)ro
207 TARGET_DEVICES
+= gl-ar300
209 define Device
/gl-domino
212 CONSOLE
= ttyATH0
,115200
213 MTDPARTS
= spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,16000k
(firmware
),64k
(art
)ro
215 TARGET_DEVICES
+= gl-domino
217 define Device
/wndr3700
219 NETGEAR_KERNEL_MAGIC
= 0x33373030
220 NETGEAR_BOARD_ID
= WNDR3700
222 MTDPARTS
= spi0.0
:320k
(u-boot
)ro
,128k
(u-boot-env
)ro
,7680k
(firmware
),64k
(art
)ro
223 IMAGES
:= sysupgrade.bin factory.img factory-NA.img
224 KERNEL
:= kernel-bin | patch-cmdline | lzma
-d20 | netgear-uImage lzma
225 IMAGE
/default
= append-kernel
$$$$(BLOCKSIZE
) | netgear-squashfs | append-rootfs | pad-rootfs
226 IMAGE
/sysupgrade.bin
= $$(IMAGE
/default
) | check-size
$$$$(IMAGE_SIZE
)
227 IMAGE
/factory.img
= $$(IMAGE
/default
) | netgear-dni | check-size
$$$$(IMAGE_SIZE
)
228 IMAGE
/factory-NA.img
= $$(IMAGE
/default
) | netgear-dni NA | check-size
$$$$(IMAGE_SIZE
)
231 define Device
/wndr3700v2
233 NETGEAR_BOARD_ID
= WNDR3700v2
234 NETGEAR_KERNEL_MAGIC
= 0x33373031
235 NETGEAR_HW_ID
= 29763654+16+64
237 MTDPARTS
= spi0.0
:320k
(u-boot
)ro
,128k
(u-boot-env
)ro
,15872k
(firmware
),64k
(art
)ro
238 IMAGES
:= sysupgrade.bin factory.img
241 define Device
/wndr3800
243 NETGEAR_BOARD_ID
= WNDR3800
244 NETGEAR_HW_ID
= 29763654+16+128
247 define Device
/wndr3800ch
249 NETGEAR_BOARD_ID
= WNDR3800CH
252 define Device
/wndrmac
254 NETGEAR_BOARD_ID
= WNDRMAC
257 define Device
/wndrmacv2
259 NETGEAR_BOARD_ID
= WNDRMACv2
262 TARGET_DEVICES
+= wndr3700 wndr3700v2 wndr3800 wndr3800ch wndrmac wndrmacv2
266 TPLINK_HEADER_VERSION
:= 1
267 KERNEL
:= kernel-bin | patch-cmdline | lzma
268 KERNEL_INITRAMFS
:= kernel-bin | patch-cmdline | lzma | mktplinkfw-initramfs
269 IMAGES
:= sysupgrade.bin factory.bin
270 IMAGE
/sysupgrade.bin
:= append-rootfs | mktplinkfw sysupgrade
271 IMAGE
/factory.bin
:= append-rootfs | mktplinkfw factory
274 define Device
/tplink-nolzma
276 LOADER_FLASH_OFFS
:= 0x22000
277 COMPILE
:= loader-
$(1).gz
278 COMPILE
/loader-
$(1).gz
:= loader-okli-compile
279 KERNEL
:= copy-file
$(KDIR
)/vmlinux.bin.lzma | uImage lzma
-M
0x4f4b4c49 | loader-okli
$(1)
280 KERNEL_INITRAMFS
:= copy-file
$(KDIR
)/vmlinux-initramfs.bin.lzma | loader-kernel | mktplinkfw-initramfs
283 define Device
/tplink-4m
284 $(Device
/tplink-nolzma
)
285 TPLINK_FLASHLAYOUT
:= 4M
289 define Device
/tplink-8m
290 $(Device
/tplink-nolzma
)
291 TPLINK_FLASHLAYOUT
:= 8M
295 define Device
/tplink-4mlzma
297 TPLINK_FLASHLAYOUT
:= 4Mlzma
301 define Device
/tplink-8mlzma
303 TPLINK_FLASHLAYOUT
:= 8Mlzma
307 define Device
/tplink-16mlzma
309 TPLINK_FLASHLAYOUT
:= 16Mlzma
313 define Device
/tl-wdr4300-v1
314 $(Device
/tplink-8mlzma
)
315 BOARDNAME
= TL-WDR4300
316 DEVICE_PROFILE
= TLWDR4300
317 TPLINK_HWID
:= 0x43000001
320 define Device
/tl-wdr3500-v1
321 $(Device
/tl-wdr4300-v1
)
322 BOARDNAME
= TL-WDR3500
323 TPLINK_HWID
:= 0x35000001
326 define Device
/tl-wdr3600-v1
327 $(Device
/tl-wdr4300-v1
)
328 TPLINK_HWID
:= 0x36000001
331 define Device
/tl-wdr4300-v1-il
332 $(Device
/tl-wdr4300-v1
)
333 TPLINK_HWID
:= 0x43008001
336 define Device
/tl-wdr4310-v1
337 $(Device
/tl-wdr4300-v1
)
338 TPLINK_HWID
:= 0x43100001
341 define Device
/mw4530r-v1
342 $(Device
/tl-wdr4300-v1
)
343 TPLINK_HWID
:= 0x45300001
345 TARGET_DEVICES
+= tl-wdr3500-v1 tl-wdr3600-v1 tl-wdr4300-v1 tl-wdr4300-v1-il tl-wdr4310-v1 mw4530r-v1
347 define Device
/tl-wdr6500-v2
348 $(Device
/tplink-8mlzma
)
349 KERNEL
:= kernel-bin | patch-cmdline | lzma | uImage lzma
350 KERNEL_INITRAMFS
:= kernel-bin | patch-cmdline | lzma | uImage lzma | mktplinkfw-initramfs
351 BOARDNAME
= TL-WDR6500-v2
352 DEVICE_PROFILE
= TLWDR6500V2
353 TPLINK_HWID
:= 0x65000002
354 TPLINK_HEADER_VERSION
:= 2
356 TARGET_DEVICES
+= tl-wdr6500-v2
358 define Device
/tl-wdr3320-v2
359 $(Device
/tplink-4mlzma
)
360 BOARDNAME
= TL-WDR3320-v2
361 DEVICE_PROFILE
= TLWDR3320V2
362 TPLINK_HWID
:= 0x33200002
363 TPLINK_HEADER_VERSION
:= 2
365 TARGET_DEVICES
+= tl-wdr3320-v2
367 define Device
/archer-c5-v1
368 $(Device
/tplink-16mlzma
)
369 BOARDNAME
:= ARCHER-C5
370 DEVICE_PROFILE
:= ARCHERC7
371 TPLINK_HWID
:= 0xc5000001
374 define Device
/archer-c7-v1
375 $(Device
/tplink-8mlzma
)
376 BOARDNAME
:= ARCHER-C7
377 DEVICE_PROFILE
:= ARCHERC7
378 TPLINK_HWID
:= 0x75000001
381 define Device
/archer-c7-v2
382 $(Device
/tplink-16mlzma
)
383 BOARDNAME
:= ARCHER-C7
384 DEVICE_PROFILE
:= ARCHERC7
385 TPLINK_HWID
:= 0xc7000002
388 define Device
/tl-wdr7500-v3
389 $(Device
/tplink-8mlzma
)
390 BOARDNAME
:= ARCHER-C7
391 DEVICE_PROFILE
:= ARCHERC7
392 TPLINK_HWID
:= 0x75000003
394 TARGET_DEVICES
+= archer-c5-v1 archer-c7-v1 archer-c7-v2 tl-wdr7500-v3
398 DEVICE_PROFILE
:= CAP324
400 MTDPARTS
= spi0.0
:256k
(u-boot
),64k
(u-boot-env
)ro
,15296k
(firmware
),640k
(certs
),64k
(nvram
),64k
(art
)
403 TARGET_DEVICES
+= cap324
405 define Device
/cap324-nocloud
407 DEVICE_PROFILE
:= CAP324
409 MTDPARTS
= spi0.0
:256k
(u-boot
),64k
(u-boot-env
)ro
,16000k
(firmware
),64k
(art
)
412 TARGET_DEVICES
+= cap324-nocloud
416 DEVICE_PROFILE
:= CR3000
418 MTDPARTS
= spi0.0
:256k
(u-boot
),64k
(u-boot-env
)ro
,7104k
(firmware
),640k
(certs
),64k
(nvram
),64k
(art
)
421 TARGET_DEVICES
+= cr3000
423 define Device
/cr3000-nocloud
425 DEVICE_PROFILE
:= CR3000
427 MTDPARTS
= spi0.0
:256k
(u-boot
),64k
(u-boot-env
)ro
,7808k
(firmware
),64k
(art
)
430 TARGET_DEVICES
+= cr3000-nocloud
434 DEVICE_PROFILE
:= CR5000
436 MTDPARTS
= spi0.0
:256k
(u-boot
),64k
(u-boot-env
)ro
,7104k
(firmware
),640k
(certs
),64k
(nvram
),64k
(art
)
439 TARGET_DEVICES
+= cr5000
441 define Device
/cr5000-nocloud
443 DEVICE_PROFILE
:= CR5000
445 MTDPARTS
= spi0.0
:256k
(u-boot
),64k
(u-boot-env
)ro
,7808k
(firmware
),64k
(art
)
448 TARGET_DEVICES
+= cr5000-nocloud
450 define Device
/antminer-s1
451 $(Device
/tplink-8mlzma
)
452 BOARDNAME
:= ANTMINER-S1
453 DEVICE_PROFILE
:= ANTMINERS1
454 TPLINK_HWID
:= 0x04440101
455 CONSOLE
:= ttyATH0
,115200
458 define Device
/antminer-s3
459 $(Device
/tplink-8mlzma
)
460 BOARDNAME
:= ANTMINER-S3
461 DEVICE_PROFILE
:= ANTMINERS3
462 TPLINK_HWID
:= 0x04440301
463 CONSOLE
:= ttyATH0
,115200
466 define Device
/antrouter-r1
467 $(Device
/tplink-8mlzma
)
468 BOARDNAME
:= ANTROUTER-R1
469 DEVICE_PROFILE
:= ANTROUTERR1
470 TPLINK_HWID
:= 0x44440101
471 CONSOLE
:= ttyATH0
,115200
474 define Device
/el-m150
475 $(Device
/tplink-8mlzma
)
477 DEVICE_PROFILE
:= ELM150
478 TPLINK_HWID
:= 0x01500101
479 CONSOLE
:= ttyATH0
,115200
482 define Device
/el-mini
483 $(Device
/tplink-8mlzma
)
485 DEVICE_PROFILE
:= ELMINI
486 TPLINK_HWID
:= 0x01530001
487 CONSOLE
:= ttyATH0
,115200
489 TARGET_DEVICES
+= antminer-s1 antminer-s3 antrouter-r1 el-m150 el-mini
491 define Device
/gl-inet-6408A-v1
492 $(Device
/tplink-8mlzma
)
494 DEVICE_PROFILE
:= GLINET
495 TPLINK_HWID
:= 0x08000001
496 CONSOLE
:= ttyATH0
,115200
499 define Device
/gl-inet-6416A-v1
500 $(Device
/tplink-16mlzma
)
502 DEVICE_PROFILE
:= GLINET
503 TPLINK_HWID
:= 0x08000001
504 CONSOLE
:= ttyATH0
,115200
506 TARGET_DEVICES
+= gl-inet-6408A-v1 gl-inet-6416A-v1
508 define Device
/rnx-n360rt
510 BOARDNAME
:= TL-WR941ND
511 DEVICE_PROFILE
:= RNXN360RT
512 TPLINK_HWID
:= 0x09410002
513 TPLINK_HWREV
:= 0x00420001
515 TARGET_DEVICES
+= rnx-n360rt
517 define Device
/mc-mac1200r
518 $(Device
/tplink-8mlzma
)
519 BOARDNAME
:= MC-MAC1200R
520 DEVICE_PROFILE
:= MAC1200R
521 TPLINK_HWID
:= 0x12000001
523 TARGET_DEVICES
+= mc-mac1200r
525 define Device
/minibox-v1
526 $(Device
/tplink-16mlzma
)
527 BOARDNAME
:= MINIBOX-V1
528 DEVICE_PROFILE
:= MINIBOXV1
529 TPLINK_HWID
:= 0x3C000201
530 CONSOLE
:= ttyATH0
,115200
532 TARGET_DEVICES
+= minibox-v1
534 define Device
/onion-omega
535 $(Device
/tplink-16mlzma
)
536 BOARDNAME
:= ONION-OMEGA
537 DEVICE_PROFILE
:= OMEGA
538 TPLINK_HWID
:= 0x04700001
539 CONSOLE
:= ttyATH0
,115200
541 TARGET_DEVICES
+= onion-omega
543 define Device
/tl-mr10u-v1
544 $(Device
/tplink-4mlzma
)
545 BOARDNAME
:= TL-MR10U
546 DEVICE_PROFILE
:= TLMR10U
547 TPLINK_HWID
:= 0x00100101
548 CONSOLE
:= ttyATH0
,115200
551 define Device
/tl-mr11u-v1
552 $(Device
/tplink-4mlzma
)
553 BOARDNAME
:= TL-MR11U
554 DEVICE_PROFILE
:= TLMR11U
555 TPLINK_HWID
:= 0x00110101
556 CONSOLE
:= ttyATH0
,115200
559 define Device
/tl-mr11u-v2
560 $(Device
/tplink-4mlzma
)
561 BOARDNAME
:= TL-MR11U
562 DEVICE_PROFILE
:= TLMR11U
563 TPLINK_HWID
:= 0x00110102
564 CONSOLE
:= ttyATH0
,115200
567 define Device
/tl-mr12u-v1
568 $(Device
/tplink-4mlzma
)
569 BOARDNAME
:= TL-MR13U
570 DEVICE_PROFILE
:= TLMR12U
571 TPLINK_HWID
:= 0x00120101
572 CONSOLE
:= ttyATH0
,115200
575 define Device
/tl-mr13u-v1
576 $(Device
/tplink-4mlzma
)
577 BOARDNAME
:= TL-MR13U
578 DEVICE_PROFILE
:= TLMR13U
579 TPLINK_HWID
:= 0x00130101
580 CONSOLE
:= ttyATH0
,115200
582 TARGET_DEVICES
+= tl-mr10u-v1 tl-mr11u-v1 tl-mr11u-v2 tl-mr12u-v1 tl-mr13u-v1
584 define Device
/tl-mr3020-v1
585 $(Device
/tplink-4mlzma
)
586 BOARDNAME
:= TL-MR3020
587 DEVICE_PROFILE
:= TLMR3020
588 TPLINK_HWID
:= 0x30200001
589 CONSOLE
:= ttyATH0
,115200
592 define Device
/tl-mr3040-v1
593 $(Device
/tplink-4mlzma
)
594 BOARDNAME
:= TL-MR3040
595 DEVICE_PROFILE
:= TLMR3040
596 TPLINK_HWID
:= 0x30400001
597 CONSOLE
:= ttyATH0
,115200
600 define Device
/tl-mr3040-v2
601 $(Device
/tplink-4mlzma
)
602 BOARDNAME
:= TL-MR3040-v2
603 DEVICE_PROFILE
:= TLMR3040
604 TPLINK_HWID
:= 0x30400002
605 CONSOLE
:= ttyATH0
,115200
608 define Device
/tl-mr3220-v1
610 BOARDNAME
:= TL-MR3220
611 DEVICE_PROFILE
:= TLMR3220
612 TPLINK_HWID
:= 0x32200001
615 define Device
/tl-mr3220-v2
616 $(Device
/tplink-4mlzma
)
617 BOARDNAME
:= TL-MR3220-v2
618 DEVICE_PROFILE
:= TLMR3220
619 TPLINK_HWID
:= 0x32200002
620 CONSOLE
:= ttyATH0
,115200
623 define Device
/tl-mr3420-v1
625 BOARDNAME
:= TL-MR3420
626 DEVICE_PROFILE
:= TLMR3420
627 TPLINK_HWID
:= 0x34200001
630 define Device
/tl-mr3420-v2
631 $(Device
/tplink-4mlzma
)
632 BOARDNAME
:= TL-MR3420-v2
633 DEVICE_PROFILE
:= TLMR3420
634 TPLINK_HWID
:= 0x34200002
636 TARGET_DEVICES
+= tl-mr3020-v1 tl-mr3040-v1 tl-mr3040-v2 tl-mr3220-v1 tl-mr3220-v2 tl-mr3420-v1 tl-mr3420-v2
638 define Device
/tl-wr703n-v1
639 $(Device
/tplink-4mlzma
)
640 BOARDNAME
:= TL-WR703N
641 DEVICE_PROFILE
:= TLWR703
642 TPLINK_HWID
:= 0x07030101
643 CONSOLE
:= ttyATH0
,115200
646 define Device
/tl-wr710n-v1
647 $(Device
/tplink-8mlzma
)
648 BOARDNAME
:= TL-WR710N
649 DEVICE_PROFILE
:= TLWR710
650 TPLINK_HWID
:= 0x07100001
651 CONSOLE
:= ttyATH0
,115200
654 define Device
/tl-wr710n-v2
655 $(Device
/tplink-4mlzma
)
656 BOARDNAME
:= TL-WR710N
657 DEVICE_PROFILE
:= TLWR710
658 TPLINK_HWID
:= 0x07100002
659 CONSOLE
:= ttyATH0
,115200
662 define Device
/tl-wr710n-v2.1
663 $(Device
/tplink-8mlzma
)
664 BOARDNAME
:= TL-WR710N
665 DEVICE_PROFILE
:= TLWR710
666 TPLINK_HWID
:= 0x07100002
667 TPLINK_HWREV
:= 0x00000002
668 CONSOLE
:= ttyATH0
,115200
671 define Device
/tl-wr720n-v3
672 $(Device
/tplink-4mlzma
)
673 BOARDNAME
:= TL-WR720N-v3
674 DEVICE_PROFILE
:= TLWR720
675 TPLINK_HWID
:= 0x07200103
676 CONSOLE
:= ttyATH0
,115200
679 define Device
/tl-wr720n-v4
680 $(Device
/tplink-4mlzma
)
681 BOARDNAME
:= TL-WR720N-v3
682 DEVICE_PROFILE
:= TLWR720
683 TPLINK_HWID
:= 0x07200104
684 CONSOLE
:= ttyATH0
,115200
686 TARGET_DEVICES
+= tl-wr703n-v1 tl-wr710n-v1 tl-wr710n-v2 tl-wr710n-v2.1 tl-wr720n-v3 tl-wr720n-v4
688 define Device
/tl-wr740n-v1
690 BOARDNAME
:= TL-WR741ND
691 DEVICE_PROFILE
:= TLWR740
692 TPLINK_HWID
:= 0x07400001
695 define Device
/tl-wr740n-v3
697 BOARDNAME
:= TL-WR741ND
698 DEVICE_PROFILE
:= TLWR740
699 TPLINK_HWID
:= 0x07400003
702 define Device
/tl-wr740n-v4
703 $(Device
/tplink-4mlzma
)
704 BOARDNAME
:= TL-WR741ND-v4
705 DEVICE_PROFILE
:= TLWR740
706 TPLINK_HWID
:= 0x07400004
707 CONSOLE
:= ttyATH0
,115200
710 define Device
/tl-wr740n-v5
711 $(Device
/tplink-4mlzma
)
712 BOARDNAME
:= TL-WR741ND-v4
713 DEVICE_PROFILE
:= TLWR740
714 TPLINK_HWID
:= 0x07400005
715 CONSOLE
:= ttyATH0
,115200
718 define Device
/tl-wr741nd-v1
720 BOARDNAME
:= TL-WR741ND
721 DEVICE_PROFILE
:= TLWR741
722 TPLINK_HWID
:= 0x07410001
725 define Device
/tl-wr741nd-v2
727 BOARDNAME
:= TL-WR741ND
728 DEVICE_PROFILE
:= TLWR741
729 TPLINK_HWID
:= 0x07410001
732 define Device
/tl-wr741nd-v4
733 $(Device
/tplink-4mlzma
)
734 BOARDNAME
:= TL-WR741ND-v4
735 DEVICE_PROFILE
:= TLWR741
736 TPLINK_HWID
:= 0x07410004
737 CONSOLE
:= ttyATH0
,115200
740 define Device
/tl-wr741nd-v5
741 $(Device
/tplink-4mlzma
)
742 BOARDNAME
:= TL-WR741ND-v4
743 DEVICE_PROFILE
:= TLWR741
744 TPLINK_HWID
:= 0x07400005
745 CONSOLE
:= ttyATH0
,115200
748 define Device
/tl-wr743nd-v1
750 BOARDNAME
:= TL-WR741ND
751 DEVICE_PROFILE
:= TLWR743
752 TPLINK_HWID
:= 0x07430001
755 define Device
/tl-wr743nd-v2
756 $(Device
/tplink-4mlzma
)
757 BOARDNAME
:= TL-WR741ND-v4
758 DEVICE_PROFILE
:= TLWR743
759 TPLINK_HWID
:= 0x07430002
760 CONSOLE
:= ttyATH0
,115200
762 TARGET_DEVICES
+= tl-wr740n-v1 tl-wr740n-v3 tl-wr740n-v4 tl-wr740n-v5 tl-wr741nd-v1 tl-wr741nd-v2 tl-wr741nd-v4 tl-wr741nd-v5 tl-wr743nd-v1 tl-wr743nd-v2
764 define Device
/tl-wr841nd-v1.5
766 BOARDNAME
:= TL-WR841N-v1.5
767 DEVICE_PROFILE
:= TLWR841
768 TPLINK_HWID
:= 0x08410002
772 define Device
/tl-wr841nd-v3
774 BOARDNAME
:= TL-WR941ND
775 DEVICE_PROFILE
:= TLWR841
776 TPLINK_HWID
:= 0x08410003
780 define Device
/tl-wr841nd-v5
782 BOARDNAME
:= TL-WR741ND
783 DEVICE_PROFILE
:= TLWR841
784 TPLINK_HWID
:= 0x08410005
787 define Device
/tl-wr841nd-v7
789 BOARDNAME
:= TL-WR841N-v7
790 DEVICE_PROFILE
:= TLWR841
791 TPLINK_HWID
:= 0x08410007
794 define Device
/tl-wr841n-v8
795 $(Device
/tplink-4mlzma
)
796 BOARDNAME
:= TL-WR841N-v8
797 DEVICE_PROFILE
:= TLWR841
798 TPLINK_HWID
:= 0x08410008
801 define Device
/tl-wr841n-v9
802 $(Device
/tplink-4mlzma
)
803 BOARDNAME
:= TL-WR841N-v9
804 DEVICE_PROFILE
:= TLWR841
805 TPLINK_HWID
:= 0x08410009
808 define Device
/tl-wr841n-v10
809 $(Device
/tplink-4mlzma
)
810 BOARDNAME
:= TL-WR841N-v9
811 DEVICE_PROFILE
:= TLWR841
812 TPLINK_HWID
:= 0x08410010
815 define Device
/tl-wr842n-v1
817 BOARDNAME
:= TL-MR3420
818 DEVICE_PROFILE
:= TLWR842
819 TPLINK_HWID
:= 0x08420001
822 define Device
/tl-wr842n-v2
823 $(Device
/tplink-8mlzma
)
824 BOARDNAME
:= TL-WR842N-v2
825 DEVICE_PROFILE
:= TLWR842
826 TPLINK_HWID
:= 0x8420002
829 define Device
/tl-wr843nd-v1
830 $(Device
/tplink-4mlzma
)
831 BOARDNAME
:= TL-WR841N-v8
832 DEVICE_PROFILE
:= TLWR843
833 TPLINK_HWID
:= 0x08430001
836 define Device
/tl-wr847n-v8
837 $(Device
/tplink-4mlzma
)
838 BOARDNAME
:= TL-WR841N-v8
839 DEVICE_PROFILE
:= TLWR841
840 TPLINK_HWID
:= 0x08470008
842 TARGET_DEVICES
+= tl-wr841nd-v1.5 tl-wr841nd-v3 tl-wr841nd-v5 tl-wr841nd-v7 tl-wr841n-v8 tl-wr841n-v9 tl-wr841n-v10 tl-wr842n-v1 tl-wr842n-v2 tl-wr843nd-v1 tl-wr847n-v8
844 define Device
/tl-wr941nd-v2
846 BOARDNAME
:= TL-WR941ND
847 DEVICE_PROFILE
:= TLWR941
848 TPLINK_HWID
:= 0x09410002
852 define Device
/tl-wr941nd-v3
854 BOARDNAME
:= TL-WR941ND
855 DEVICE_PROFILE
:= TLWR941
856 TPLINK_HWID
:= 0x09410002
860 define Device
/tl-wr941nd-v4
862 BOARDNAME
:= TL-WR741ND
863 DEVICE_PROFILE
:= TLWR941
864 TPLINK_HWID
:= 0x09410004
867 define Device
/tl-wr941nd-v5
868 $(Device
/tplink-4mlzma
)
869 BOARDNAME
:= TL-WR941ND-v5
870 DEVICE_PROFILE
:= TLWR941
871 TPLINK_HWID
:= 0x09410005
874 define Device
/tl-wr941nd-v6
875 $(Device
/tplink-4mlzma
)
876 BOARDNAME
:= TL-WR941ND-v6
877 DEVICE_PROFILE
:= TLWR941
878 TPLINK_HWID
:= 0x09410006
881 # Chinese version (unlike European) is similar to the TL-WDR3500
882 define Device
/tl-wr941nd-v6-cn
883 $(Device
/tplink-4mlzma
)
884 BOARDNAME
:= TL-WDR3500
885 DEVICE_PROFILE
:= TLWR941
886 TPLINK_HWID
:= 0x09410006
888 TARGET_DEVICES
+= tl-wr941nd-v2 tl-wr941nd-v3 tl-wr941nd-v4 tl-wr941nd-v5 tl-wr941nd-v6 tl-wr941nd-v6-cn
890 define Device
/tl-wr1041n-v2
891 $(Device
/tplink-4mlzma
)
892 BOARDNAME
:= TL-WR1041N-v2
893 DEVICE_PROFILE
:= TLWR1041
894 TPLINK_HWID
:= 0x10410002
896 TARGET_DEVICES
+= tl-wr1041n-v2
898 define Device
/tl-wr1043nd-v1
900 BOARDNAME
:= TL-WR1043ND
901 DEVICE_PROFILE
:= TLWR1043
902 TPLINK_HWID
:= 0x10430001
905 define Device
/tl-wr1043nd-v2
906 $(Device
/tplink-8mlzma
)
907 BOARDNAME
:= TL-WR1043ND-v2
908 DEVICE_PROFILE
:= TLWR1043
909 TPLINK_HWID
:= 0x10430002
912 define Device
/tl-wr1043nd-v3
913 $(Device
/tplink-8mlzma
)
914 BOARDNAME
:= TL-WR1043ND-v2
915 DEVICE_PROFILE
:= TLWR1043
916 TPLINK_HWID
:= 0x10430003
918 TARGET_DEVICES
+= tl-wr1043nd-v1 tl-wr1043nd-v2 tl-wr1043nd-v3
920 define Device
/tl-wr2543-v1
921 $(Device
/tplink-8mlzma
)
922 BOARDNAME
:= TL-WR2543N
923 DEVICE_PROFILE
:= TLWR2543
924 TPLINK_HWID
:= 0x25430001
925 IMAGE
/sysupgrade.bin
:= append-rootfs | mktplinkfw sysupgrade
"-v 3.13.99"
926 IMAGE
/factory.bin
:= append-rootfs | mktplinkfw factory
"-v 3.13.99"
928 TARGET_DEVICES
+= tl-wr2543-v1
930 define Device
/tl-wdr4900-v2
931 $(Device
/tplink-8mlzma
)
932 BOARDNAME
:= TL-WDR4900-v2
933 DEVICE_PROFILE
:= TLWDR4900V2
934 TPLINK_HWID
:= 0x49000002
936 TARGET_DEVICES
+= tl-wdr4900-v2
938 define Device
/tl-wa701n-v1
940 BOARDNAME
:= TL-WA901ND
941 DEVICE_PROFILE
:= TLWA701
942 TPLINK_HWID
:= 0x07010001
945 define Device
/tl-wa701nd-v2
946 $(Device
/tplink-4mlzma
)
947 BOARDNAME
:= TL-WA701ND-v2
948 DEVICE_PROFILE
:= TLWA701
949 TPLINK_HWID
:= 0x07010002
950 CONSOLE
:= ttyATH0
,115200
953 define Device
/tl-wa730rev1
955 BOARDNAME
:= TL-WA901ND
956 DEVICE_PROFILE
:= TLWA730RE
957 TPLINK_HWID
:= 0x07300001
960 define Device
/tl-wa750re-v1
961 $(Device
/tplink-4mlzma
)
962 BOARDNAME
:= TL-WA750RE
963 DEVICE_PROFILE
:= TLWA750
964 TPLINK_HWID
:= 0x07500001
967 define Device
/tl-wa7510n
969 BOARDNAME
:= TL-WA7510N
970 DEVICE_PROFILE
:= TLWA7510
971 TPLINK_HWID
:= 0x75100001
973 TARGET_DEVICES
+= tl-wa701n-v1 tl-wa701nd-v2 tl-wa730rev1 tl-wa750re-v1 tl-wa7510n
975 define Device
/tl-wa801nd-v1
977 BOARDNAME
:= TL-WA901ND
978 DEVICE_PROFILE
:= TLWA801
979 TPLINK_HWID
:= 0x08010001
982 define Device
/tl-wa801nd-v2
983 $(Device
/tplink-4mlzma
)
984 BOARDNAME
:= TL-WA801ND-v2
985 DEVICE_PROFILE
:= TLWA801
986 TPLINK_HWID
:= 0x08010002
989 define Device
/tl-wa830re-v1
991 BOARDNAME
:= TL-WA901ND
992 DEVICE_PROFILE
:= TLWA830
993 TPLINK_HWID
:= 0x08300010
996 define Device
/tl-wa830re-v2
997 $(Device
/tplink-4mlzma
)
998 BOARDNAME
:= TL-WA830RE-v2
999 DEVICE_PROFILE
:= TLWA830
1000 TPLINK_HWID
:= 0x08300002
1003 define Device
/tl-wa850re-v1
1004 $(Device
/tplink-4mlzma
)
1005 BOARDNAME
:= TL-WA850RE
1006 DEVICE_PROFILE
:= TLWA850
1007 TPLINK_HWID
:= 0x08500001
1010 define Device
/tl-wa860re-v1
1011 $(Device
/tplink-4mlzma
)
1012 BOARDNAME
:= TL-WA860RE
1013 DEVICE_PROFILE
:= TLWA860
1014 TPLINK_HWID
:= 0x08600001
1016 TARGET_DEVICES
+= tl-wa801nd-v1 tl-wa801nd-v2 tl-wa830re-v1 tl-wa830re-v2 tl-wa850re-v1 tl-wa860re-v1
1018 define Device
/tl-wa901nd-v1
1020 BOARDNAME
:= TL-WA901ND
1021 DEVICE_PROFILE
:= TLWA901
1022 TPLINK_HWID
:= 0x09010001
1025 define Device
/tl-wa901nd-v2
1027 BOARDNAME
:= TL-WA901ND-v2
1028 DEVICE_PROFILE
:= TLWA901
1029 TPLINK_HWID
:= 0x09010002
1032 define Device
/tl-wa901nd-v3
1033 $(Device
/tplink-4mlzma
)
1034 BOARDNAME
:= TL-WA901ND-v3
1035 DEVICE_PROFILE
:= TLWA901
1036 TPLINK_HWID
:= 0x09010003
1038 TARGET_DEVICES
+= tl-wa901nd-v1 tl-wa901nd-v2 tl-wa901nd-v3
1040 define Device
/tl-wa7210n-v2
1041 $(Device
/tplink-4mlzma
)
1042 BOARDNAME
:= TL-WA7210N-v2
1043 DEVICE_PROFILE
:= TLWA7210
1044 TPLINK_HWID
:= 0x72100002
1045 CONSOLE
:= ttyATH0
,115200
1047 TARGET_DEVICES
+= tl-wa7210n-v2
1049 define Device
/smart-300
1050 $(Device
/tplink-8mlzma
)
1051 BOARDNAME
:= SMART-300
1052 DEVICE_PROFILE
:= SMART-300
1053 TPLINK_HWID
:= 0x93410001
1055 TARGET_DEVICES
+= smart-300
1057 define Device
/oolite
1058 $(Device
/tplink-16mlzma
)
1059 BOARDNAME
:= GS-OOLITE
1060 DEVICE_PROFILE
:= OOLITE
1061 TPLINK_HWID
:= 0x3C000101
1062 CONSOLE
:= ttyATH0
,115200
1064 TARGET_DEVICES
+= oolite
1066 # UBNT_BOARD e.g. one of (XS2, XS5, RS, XM)
1067 # UBNT_TYPE e.g. one of (BZ, XM, XW)
1068 # UBNT_CHIP e.g. one of (ar7240, ar933x, ar934x)
1069 define Device
/ubnt-xm
1070 DEVICE_PROFILE
:= UBNT
1072 MTDPARTS
= spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,7552k
(firmware
),256k
(cfg
)ro
,64k
(EEPROM
)ro
1076 IMAGES
:= sysupgrade.bin factory.bin
1077 IMAGE
/factory.bin
= $$(IMAGE
/sysupgrade.bin
) | mkubntimage-split
1078 IMAGE
/sysupgrade.bin
= append-kernel
$$$$(BLOCKSIZE
) | append-rootfs | pad-rootfs | check-size
$$$$(IMAGE_SIZE
)
1081 define Device
/ubnt-xw
1082 DEVICE_PROFILE
:= UBNT
1084 MTDPARTS
= spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,7552k
(firmware
),256k
(cfg
)ro
,64k
(EEPROM
)ro
1088 IMAGES
:= sysupgrade.bin factory.bin
1089 IMAGE
/factory.bin
= $$(IMAGE
/sysupgrade.bin
) | mkubntimage-split
1090 IMAGE
/sysupgrade.bin
= append-kernel
$$$$(BLOCKSIZE
) | append-rootfs | pad-rootfs | check-size
$$$$(IMAGE_SIZE
)
1093 define Device
/ubnt-bz
1094 DEVICE_PROFILE
:= UBNT
1096 MTDPARTS
= spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,7552k
(firmware
),256k
(cfg
)ro
,64k
(EEPROM
)ro
1100 IMAGES
:= sysupgrade.bin factory.bin
1101 IMAGE
/factory.bin
= $$(IMAGE
/sysupgrade.bin
) | mkubntimage-split
1102 IMAGE
/sysupgrade.bin
= append-kernel
$$$$(BLOCKSIZE
) | append-rootfs | pad-rootfs | check-size
$$$$(IMAGE_SIZE
)
1105 define Device
/rw2458n
1107 BOARDNAME
:= RW2458N
1110 define Device
/ubnt-airrouter
1112 BOARDNAME
:= UBNT-AR
1115 define Device
/ubnt-bullet-m
1117 BOARDNAME
:= UBNT-BM
1120 define Device
/ubnt-rocket-m
1122 BOARDNAME
:= UBNT-RM
1125 define Device
/ubnt-nano-m
1127 BOARDNAME
:= UBNT-NM
1129 TARGET_DEVICES
+= rw2458n ubnt-airrouter ubnt-bullet-m ubnt-rocket-m ubnt-nano-m
1131 define Device
/ubnt-unifi
1133 BOARDNAME
:= UBNT-UF
1134 DEVICE_PROFILE
:= UBNT UBNTUNIFI
1137 define Device
/ubnt-unifi-outdoor
1139 BOARDNAME
:= UBNT-U20
1140 DEVICE_PROFILE
:= UBNT UBNTUNIFIOUTDOOR
1142 TARGET_DEVICES
+= ubnt-unifi ubnt-unifi-outdoor
1144 define Device
/ubnt-nano-m-xw
1146 BOARDNAME
:= UBNT-NM-XW
1149 define Device
/ubnt-loco-m-xw
1151 BOARDNAME
:= UBNT-LOCO-XW
1154 define Device
/ubnt-rocket-m-xw
1156 BOARDNAME
:= UBNT-RM-XW
1159 define Device
/ubnt-rocket-m-ti
1161 BOARDNAME
:= UBNT-RM-TI
1165 TARGET_DEVICES
+= ubnt-nano-m-xw ubnt-loco-m-xw ubnt-rocket-m-xw ubnt-rocket-m-ti
1167 define Device
/ubnt-air-gateway
1169 BOARDNAME
:= UBNT-AGW
1173 CONSOLE
= ttyATH0
,115200
1175 TARGET_DEVICES
+= ubnt-air-gateway
1177 define Device
/ubnt-air-gateway-pro
1179 BOARDNAME
:= UBNT-AGWP
1182 CONSOLE
= ttyS0
,115200
1184 TARGET_DEVICES
+= ubnt-air-gateway-pro
1186 define Device
/ubdev01
1188 MTDPARTS
:= spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,7488k
(firmware
),64k
(certs
),256k
(cfg
)ro
,64k
(EEPROM
)ro
1189 BOARDNAME
:= UBNT-UF
1195 TARGET_DEVICES
+= ubdev01
1197 define Device
/ubnt-routerstation
1198 IMAGE_SIZE
:= 16128k
1199 IMAGES
:= sysupgrade.bin factory.bin
1200 IMAGE
/factory.bin
= append-rootfs | pad-rootfs | mkubntimage
1201 IMAGE
/sysupgrade.bin
= append-rootfs | pad-rootfs | combined-image | check-size
$$$$(IMAGE_SIZE
)
1202 KERNEL
:= kernel-bin | patch-cmdline | lzma | pad-to
$$(BLOCKSIZE
)
1205 define Device
/ubnt-rs
1206 $(Device
/ubnt-routerstation
)
1207 BOARDNAME
:= UBNT-RS
1208 DEVICE_PROFILE
:= Madwifi UBNT UBNTRS
1214 define Device
/ubnt-rspro
1215 $(Device
/ubnt-routerstation
)
1216 BOARDNAME
:= UBNT-RSPRO
1217 DEVICE_PROFILE
:= Madwifi UBNT UBNTRSPRO
1220 UBNT_CHIP
:= ar7100pro
1223 define Device
/ubnt-ls-sr71
1224 $(Device
/ubnt-routerstation
)
1225 BOARDNAME
:= UBNT-LS-SR71
1226 DEVICE_PROFILE
:= Madwifi UBNT
1227 UBNT_BOARD
:= LS-SR71
1228 UBNT_TYPE
:= LS-SR71
1232 TARGET_DEVICES
+= ubnt-rs ubnt-rspro ubnt-ls-sr71
1234 define Device
/ubnt-uap-pro
1235 KERNEL_SIZE
:= 1536k
1236 IMAGE_SIZE
:= 15744k
1237 MTDPARTS
:= spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,1536k
(kernel
),14208k
(rootfs
),256k
(cfg
)ro
,64k
(EEPROM
)ro
,15744k@
0x50000(firmware
)
1240 BOARDNAME
:= UAP-PRO
1241 DEVICE_PROFILE
:= UBNT UAPPRO
1242 KERNEL
:= kernel-bin | patch-cmdline | lzma | uImage lzma | jffs2 kernel0
1243 IMAGES
:= sysupgrade.bin factory.bin
1244 IMAGE
/sysupgrade.bin
= append-kernel
$$$$(KERNEL_SIZE
) | append-rootfs | pad-rootfs | check-size
$$$$(IMAGE_SIZE
)
1245 IMAGE
/factory.bin
= $$(IMAGE
/sysupgrade.bin
) | mkubntimage2
1248 define Device
/ubnt-unifi-outdoor-plus
1249 $(Device
/ubnt-uap-pro
)
1251 BOARDNAME
:= UBNT-UOP
1252 DEVICE_PROFILE
:= UBNT
1255 TARGET_DEVICES
+= ubnt-uap-pro ubnt-unifi-outdoor-plus
1257 rootfs_type
=$(patsubst jffs2-
%,jffs2
,$(patsubst squashfs-
%,squashfs
,$(1)))
1259 # $(1): rootfs type.
1262 $(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(call rootfs_type
,$(1))
1266 $(patsubst %-256k
,0x40000,$(patsubst %-128k
,0x20000,$(patsubst %-64k
,0x10000,$(patsubst squashfs
%,0x4,$(patsubst root.
%,%,$(1))))))
1270 $(call imgname
,$(1),$(2))-sysupgrade.bin
1274 $(call imgname
,$(1),$(2))-factory.bin
1280 $(if
$(1),board
=$(1) )$(if
$(2),console
=$(2)$(COMMA
)$(3))
1284 $(shell sz
=`echo '$(2)' | sed -ne 's/.*[:$(COMMA)]\([0-9]*\)k[@]*[0-9a-zx]*($(1)).*/\1/p'`; [ -n
"$$sz" ] && echo
$$(($$sz * 1024)))
1289 # $(1) : name of image build method to be used, e.g., AthLzma.
1290 # $(2) : name of the build template to be used, e.g. 64k, 64kraw, 128k, etc.
1291 # $(3) : name of the profile to be defined.
1292 # $(4) : board name.
1293 # $(5)~$(7) : arguments for $(mkcmdline)
1294 # board=$(1) console=$(2),$(3)
1295 # $(8)~$(14): extra arguments.
1296 define SingleProfile
1297 # $(1): action name, e.g. loader, buildkernel, squashfs, etc.
1298 define Image
/Build
/Profile
/$(3)
1299 $$(call Image
/Build
/Template
/$(2)/$$(1),$(1),$(4),$$(call mkcmdline
,$(5),$(6),$(7)),$(8),$(9),$(10),$(11),$(12),$(13),$(14))
1301 SINGLE_PROFILES
+= $(3)
1304 # $(1), name of the MultiProfile to be added.
1305 # $(2), name of Profiles to be included in the MultiProfile.
1307 define Image
/Build
/Profile
/$(1)
1309 $$(call Image
/Build
/Profile
/$p,$$(1))
1314 LOADER_MAKE
:= $(NO_TRACE_MAKE
) -C lzma-loader KDIR
=$(KDIR
)
1316 VMLINUX
:=$(BIN_DIR
)/$(IMG_PREFIX
)-vmlinux
1317 UIMAGE
:=$(BIN_DIR
)/$(IMG_PREFIX
)-uImage
1320 # $(2): output file.
1321 # $(3): extra arguments for lzma.
1323 $(STAGING_DIR_HOST
)/bin
/lzma e
$(1) -lc1
-lp2
-pb2
$(3) $(2)
1327 cp
$(KDIR
)/vmlinux
$(3) $(KDIR_TMP
)/vmlinux
$(3)-$(1)
1328 $(STAGING_DIR_HOST
)/bin
/patch-cmdline
$(KDIR_TMP
)/vmlinux
$(3)-$(1) "$(strip $(2))"
1331 define PatchKernel
/initramfs
1332 $(call PatchKernel
,$(1),$(2),-initramfs
)
1333 cp
$(KDIR_TMP
)/vmlinux-initramfs-
$(1) $(call imgname
,initramfs
,$(1)).bin
1337 # $(2): kernel command line.
1338 # $(3): extra argumetns for lzma.
1339 # $(4): name suffix, e.g. "-initramfs".
1340 define PatchKernelLzma
1341 cp
$(KDIR
)/vmlinux
$(4) $(KDIR_TMP
)/vmlinux
$(4)-$(1)
1342 $(STAGING_DIR_HOST
)/bin
/patch-cmdline
$(KDIR_TMP
)/vmlinux
$(4)-$(1) "$(strip $(2))"
1343 $(call CompressLzma
,$(KDIR_TMP
)/vmlinux
$(4)-$(1),$(KDIR_TMP
)/vmlinux
$(4)-$(1).bin.lzma
,$(3))
1346 define PatchKernelGzip
1347 cp
$(KDIR
)/vmlinux
$(3) $(KDIR_TMP
)/vmlinux
$(3)-$(1)
1348 $(STAGING_DIR_HOST
)/bin
/patch-cmdline
$(KDIR_TMP
)/vmlinux
$(3)-$(1) "$(strip $(2))"
1349 gzip
-9n
-c
$(KDIR_TMP
)/vmlinux
$(3)-$(1) > $(KDIR_TMP
)/vmlinux
$(3)-$(1).bin.gz
1352 ifneq ($(SUBTARGET
),mikrotik
)
1353 # $(1): compression method of the data.
1354 # $(2): extra arguments.
1355 # $(3): input data file.
1356 # $(4): output file.
1358 mkimage
-A mips
-O linux
-T kernel
-a
0x80060000 -C
$(1) $(2) \
1359 -e
0x80060000 -n
'MIPS OpenWrt Linux-$(LINUX_VERSION)' \
1364 # $(2): kernel command line.
1365 # $(3): extra arguments for lzma.
1366 # $(4): name suffix, e.g. "-initramfs".
1367 # $(5): extra arguments for mkimage.
1369 $(call PatchKernelLzma
,$(1),$(2),$(3),$(4))
1370 $(call MkuImage
,lzma
,$(5),$(KDIR_TMP
)/vmlinux
$(4)-$(1).bin.lzma
,$(KDIR_TMP
)/vmlinux
$(4)-$(1).uImage
)
1373 define MkuImageLzma
/initramfs
1374 $(call PatchKernelLzma
,$(1),$(2),$(3),-initramfs
)
1375 $(call MkuImage
,lzma
,$(4),$(KDIR_TMP
)/vmlinux-initramfs-
$(1).bin.lzma
,$(call imgname
,initramfs
,$(1))-uImage.bin
)
1379 $(call PatchKernelGzip
,$(1),$(2))
1380 $(call MkuImage
,gzip
,,$(KDIR_TMP
)/vmlinux-
$(1).bin.gz
,$(KDIR_TMP
)/vmlinux-
$(1).uImage
)
1383 define MkuImageGzip
/initramfs
1384 $(call PatchKernelGzip
,$(1),$(2),-initramfs
)
1385 $(call MkuImage
,gzip
,,$(KDIR_TMP
)/vmlinux-initramfs-
$(1).bin.gz
,$(call imgname
,initramfs
,$(1))-uImage.bin
)
1389 $(call MkuImage
,lzma
,-M
0x4f4b4c49,$(KDIR
)/vmlinux.bin.lzma
,$(KDIR_TMP
)/vmlinux-
$(1).okli
)
1393 # $(1): name of the 1st file.
1394 # $(2): size limit of the 1st file if it is greater than 262144, or
1395 # the erase size of the flash if it is greater than zero and less
1397 # $(3): name of the 2nd file.
1398 # $(4): size limit of the 2nd file if $(2) is greater than 262144, otherwise
1399 # it is the size limit of the output file
1400 # $(5): name of the output file.
1401 # $(6): padding size.
1403 if
[ $(2) -eq
0 ]; then \
1404 filename
="$(3)"; fstype
=$$$${filename
##*\.}; \
1405 case
"$$$${fstype}" in \
1406 "jffs2-64k") bs
=65536;; \
1407 "jffs2-128k") bs
=131072;; \
1408 "jffs2-256k") bs
=262144;; \
1409 *) bs
=`stat -c%s $(1)`;; \
1411 ( dd if
=$(1) bs
=$$$${bs} conv
=sync
; cat
$(3) ) > $(5); \
1412 if
[ -n
"$(6)" ]; then \
1413 case
"$$$${fstype}" in \
1415 padjffs2
$(5) $(6); \
1419 if
[ `stat -c%s $(5)` -gt
$(4) ]; then \
1420 echo
"Warning: $(5) is too big (> $(4) bytes)" >&2; \
1423 else if
[ $(2) -gt
262144 ]; then \
1424 if
[ `stat -c%s "$(1)"` -gt
$(2) ]; then \
1425 echo
"Warning: $(1) is too big (> $(2) bytes)" >&2; \
1426 else if
[ `stat -c%s $(3)` -gt
$(4) ]; then \
1427 echo
"Warning: $(3) is too big (> $(4) bytes)" >&2; \
1429 ( dd if
=$(1) bs
=$(2) conv
=sync
; dd if
=$(3) ) > $(5); \
1432 ( dd if
=$(1) bs
=$(2) conv
=sync
; dd if
=$(3) ) > $(5); \
1433 if
[ `stat -c%s $(5)` -gt
$(4) ]; then \
1434 echo
"Warning: $(5) is too big (> $(4) bytes)" >&2; \
1440 # $(1): rootfs type.
1442 # $(3): kernel image size limit.
1443 # $(4): rootfs image size limit.
1444 # $(5): padding argument for padjffs2.
1445 Sysupgrade
/KR
=$(call CatFiles
,$(2),$(3),$(KDIR
)/root.
$(1),$(4),$(call sysupname
,$(1),$(5)))
1446 Sysupgrade
/KRuImage
=$(call CatFiles
,$(KDIR_TMP
)/vmlinux-
$(2).uImage
,$(3),$(KDIR
)/root.
$(1),$(4),$(call sysupname
,$(1),$(2)),$(5))
1447 Sysupgrade
/RKuImage
=$(call CatFiles
,$(KDIR
)/root.
$(1),$(4),$(KDIR_TMP
)/vmlinux-
$(2).uImage
,$(3),$(call sysupname
,$(1),$(2)))
1449 # $(1): ubinize ini file
1450 # $(2): working directory
1452 # $(4): physical erase block size
1453 # $(5): minimum I/O unit size
1454 # $(6): custom options
1457 ( cd
$(2); $(STAGING_DIR_HOST
)/bin
/ubinize
-o
$(3) -p
$(4) -m
$(5) $(6) $(1))
1461 # Embed lzma-compressed kernel inside lzma-loader.
1463 # $(1), suffix of output filename, e.g. generic, lowercase board name, etc.
1464 # $(2), suffix of target file to build, e.g. bin, gz, elf
1465 # $(3), kernel command line to pass from lzma-loader to kernel
1467 # $(5), suffix of kernel filename, e.g. -initramfs, or empty
1468 define Image
/BuildLoader
1469 -rm -rf
$(KDIR
)/lzma-loader
1470 $(LOADER_MAKE
) LOADER
=loader-
$(1).
$(2) KERNEL_CMDLINE
="$(3)"\
1471 LZMA_TEXT_START
=0x80a00000 LOADADDR
=0x80060000 \
1472 LOADER_DATA
="$(KDIR)/vmlinux$(5).bin.lzma" BOARD
="$(1)" \
1474 -$(CP
) $(KDIR
)/loader-
$(1).
$(2) $(KDIR
)/loader-
$(1)$(5).
$(2)
1478 # Embed patched lzma-compressed kernel inside lzma-loader.
1480 # Specifying the command line via the lzma-loader doesn't work with some
1481 # models (like the TP-LINK CPE series), so this version first patches the
1482 # command line in the image and then builds the loader around it.
1484 # $(1), suffix of output filename, e.g. generic, lowercase board name, etc.
1485 # $(2), suffix of target file to build, e.g. bin, gz, elf
1486 # $(3), kernel command line to pass from lzma-loader to kernel
1488 # $(5), suffix of kernel filename, e.g. -initramfs, or empty
1489 define Image
/BuildLoaderPatched
1490 $(call PatchKernelLzma
,$(1),$(3))
1491 -rm -rf
$(KDIR
)/lzma-loader
1492 $(LOADER_MAKE
) LOADER
=loader-
$(1).
$(2) \
1493 LZMA_TEXT_START
=0x80a00000 LOADADDR
=0x80060000 \
1494 LOADER_DATA
="$(KDIR_TMP)/vmlinux-$(1)$(5).bin.lzma" BOARD
="$(1)" \
1496 -$(CP
) $(KDIR
)/loader-
$(1).
$(2) $(KDIR
)/loader-
$(1)$(5).
$(2)
1500 # Build lzma-loader alone which will search for lzma-compressed kernel identified by
1501 # uImage header with magic "OKLI" at boot time.
1503 # $(4), offset into the flash space to start searching uImage magic "OKLI".
1504 # $(5), size of search range starting at $(4). With 0 as the value, uImage
1505 # header is expected to be at precisely $(4)
1506 define Image
/BuildLoaderAlone
1507 -rm -rf
$(KDIR
)/lzma-loader
1508 $(LOADER_MAKE
) LOADER
=loader-
$(1).
$(2) KERNEL_CMDLINE
="$(3)" \
1509 LZMA_TEXT_START
=0x80a00000 LOADADDR
=0x80060000 \
1510 BOARD
="$(1)" FLASH_OFFS
=$(4) FLASH_MAX
=$(5) \
1515 $(LOADER_MAKE
) clean
1518 alfa_ap96_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,256k
(u-boot-env
)ro
,13312k
(rootfs
),2048k
(kernel
),512k
(caldata
)ro
,15360k@
0x80000(firmware
)
1519 alfa_mtdlayout_8M
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,6144k
(rootfs
),1600k
(kernel
),64k
(nvram
),64k
(art
)ro
,7744k@
0x50000(firmware
)
1520 alfa_mtdlayout_16M
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,15936k
(firmware
),64k
(nvram
),64k
(art
)ro
1521 all0258n_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
),64k
(u-boot-env
),6272k
(firmware
),1536k
(failsafe
),64k
(art
)
1522 all0315n_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,256k
(u-boot-env
),13568k
(firmware
),2048k
(failsafe
),256k
(art
)ro
1523 ap81_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,5120k
(rootfs
),2688k
(kernel
),64k
(art
)ro
,7808k@
0x50000(firmware
)
1524 ap83_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,128k
(u-boot-env
)ro
,4096k
(rootfs
),3648k
(kernel
),64k
(art
)ro
,7744k@
0x60000(firmware
)
1525 ap96_mtdlayout
=mtdparts
=spi0.0
:192k
(u-boot
)ro
,64k
(u-boot-env
)ro
,6144k
(rootfs
),1728k
(kernel
),64k
(art
)ro
,7872k@
0x40000(firmware
)
1526 ap113_mtd_layout
=mtdparts
=spi0.0
:64k
(u-boot
),3008k
(rootfs
),896k
(uImage
),64k
(NVRAM
),64k
(ART
),3904k@
0x10000(firmware
)
1527 ap121_mtdlayout_2M
=mtdparts
=spi0.0
:64k
(u-boot
)ro
,1216k
(rootfs
),704k
(kernel
),64k
(art
)ro
,1920k@
0x10000(firmware
)
1528 ap121_mtdlayout_4M
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,2448k
(rootfs
),1200k
(kernel
),64k
(nvram
),64k
(art
)ro
,3648k@
0x50000(firmware
)
1529 ap121_mtdlayout_8M
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,6144k
(rootfs
),1600k
(kernel
),64k
(nvram
),64k
(art
)ro
,7744k@
0x50000(firmware
)
1530 ap121_mtdlayout_16M
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,10944k
(rootfs
),4992k
(kernel
),64k
(nvram
),64k
(art
)ro
,15936k@
0x50000(firmware
)
1531 ap132_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,1408k
(kernel
),6400k
(rootfs
),64k
(art
),7808k@
0x50000(firmware
)
1532 ap135_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,14528k
(rootfs
),1472k
(kernel
),64k
(art
)ro
,16000k@
0x50000(firmware
)
1533 ap136_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,6336k
(rootfs
),1408k
(kernel
),64k
(mib0
),64k
(art
)ro
,7744k@
0x50000(firmware
)
1534 ap143_mtdlayout_8M
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,6336k
(rootfs
),1472k
(kernel
),64k
(art
)ro
,7744k@
0x50000(firmware
)
1535 ap143_mtdlayout_16M
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,14528k
(rootfs
),1472k
(kernel
),64k
(art
)ro
,16000k@
0x50000(firmware
)
1536 ap147_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,14528k
(rootfs
),1472k
(kernel
),64k
(art
),16000k@
0x50000(firmware
)
1537 ap152_mtdlayout_16M
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,14528k
(rootfs
),1472k
(kernel
),64k
(art
)ro
,16000k@
0x50000(firmware
)
1538 bxu2000n2_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,1408k
(kernel
),8448k
(rootfs
),6016k
(user
),64k
(cfg
),64k
(oem
),64k
(art
)ro
1539 cameo_ap81_mtdlayout
=mtdparts
=spi0.0
:128k
(u-boot
)ro
,64k
(config
)ro
,3840k
(firmware
),64k
(art
)ro
1540 cameo_ap91_mtdlayout
=mtdparts
=spi0.0
:192k
(u-boot
)ro
,64k
(nvram
)ro
,3712k
(firmware
),64k
(mac
)ro
,64k
(art
)ro
1541 cameo_ap99_mtdlayout
=mtdparts
=spi0.0
:192k
(u-boot
)ro
,64k
(nvram
)ro
,3520k
(firmware
),64k
(mac
)ro
,192k
(lp
)ro
,64k
(art
)ro
1542 cameo_ap121_mtdlayout
=mtdparts
=spi0.0
:64k
(u-boot
)ro
,64k
(art
)ro
,64k
(mac
)ro
,64k
(nvram
)ro
,192k
(language
)ro
,3648k
(firmware
)
1543 cameo_ap121_mtdlayout_8M
=mtdparts
=spi0.0
:64k
(u-boot
)ro
,64k
(art
)ro
,64k
(mac
)ro
,64k
(nvram
)ro
,256k
(language
)ro
,7680k@
0x80000(firmware
)
1544 cameo_ap123_mtdlayout_4M
=mtdparts
=spi0.0
:64k
(u-boot
)ro
,64k
(nvram
)ro
,3712k
(firmware
),192k
(lang
)ro
,64k
(art
)ro
1545 cameo_db120_mtdlayout
=mtdparts
=spi0.0
:64k
(uboot
)ro
,64k
(nvram
)ro
,15936k
(firmware
),192k
(lang
)ro
,64k
(mac
)ro
,64k
(art
)ro
1546 cameo_db120_mtdlayout_8M
=mtdparts
=spi0.0
:64k
(uboot
)ro
,64k
(nvram
)ro
,7872k
(firmware
),128k
(lang
)ro
,64k
(art
)ro
1547 cap4200ag_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
),64k
(u-boot-env
),320k
(custom
)ro
,1536k
(kernel
),12096k
(rootfs
),2048k
(failsafe
),64k
(art
),13632k@
0xa0000(firmware
)
1548 cpe510_mtdlayout
=mtdparts
=spi0.0
:128k
(u-boot
)ro
,64k
(pation-table
)ro
,64k
(product-info
)ro
,1536k
(kernel
),6144k
(rootfs
),192k
(config
)ro
,64k
(ART
)ro
,7680k@
0x40000(firmware
)
1549 eap300v2_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
),320k
(custom
),13632k
(firmware
),2048k
(failsafe
),64k
(art
)ro
1550 db120_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,6336k
(rootfs
),1408k
(kernel
),64k
(nvram
),64k
(art
)ro
,7744k@
0x50000(firmware
)
1551 dgl_5500_mtdlayout
=mtdparts
=spi0.0
:192k
(u-boot
)ro
,64k
(nvram
)ro
,15296k
(firmware
),192k
(lang
)ro
,512k
(my-dlink
)ro
,64k
(mac
)ro
,64k
(art
)ro
1552 dlan_hotspot_mtdlayout
=mtdparts
=spi0.0
:128k
(u-boot
)ro
,64k
(Config1
)ro
,64k
(Config2
)ro
,7872k@
0x40000(firmware
),64k
(art
)ro
1553 dlan_pro_500_wp_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,64k
(Config1
)ro
,64k
(Config2
)ro
,7680k@
0x70000(firmware
),64k
(art
)ro
1554 dlan_pro_1200_ac_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,64k
(Config1
)ro
,64k
(Config2
)ro
,15872k@
0x70000(firmware
),64k
(art
)ro
1555 cameo_ap94_mtdlayout
=mtdparts
=spi0.0
:256k
(uboot
)ro
,64k
(config
)ro
,6208k
(firmware
),64k
(caldata
)ro
,1600k
(unknown
)ro
,64k@
0x7f0000(caldata_copy
)
1556 cameo_ap94_mtdlayout_fat
=mtdparts
=spi0.0
:256k
(uboot
)ro
,64k
(config
)ro
,7808k
(firmware
),64k
(caldata
)ro
,64k@
0x660000(caldata_orig
),6208k@
0x50000(firmware_orig
)
1557 esr900_mtdlayout
=mtdparts
=spi0.0
:192k
(u-boot
)ro
,64k
(u-boot-env
)ro
,1408k
(kernel
),13248k
(rootfs
),1024k
(manufacture
)ro
,64k
(backup
)ro
,320k
(storage
)ro
,64k
(caldata
)ro
,14656k@
0x40000(firmware
)
1558 esr1750_mtdlayout
=mtdparts
=spi0.0
:192k
(u-boot
)ro
,64k
(u-boot-env
)ro
,1408k
(kernel
),13248k
(rootfs
),1024k
(manufacture
)ro
,64k
(backup
)ro
,320k
(storage
)ro
,64k
(caldata
)ro
,14656k@
0x40000(firmware
)
1559 epg5000_mtdlayout
=mtdparts
=spi0.0
:192k
(u-boot
)ro
,64k
(u-boot-env
)ro
,1408k
(kernel
),13248k
(rootfs
),1024k
(manufacture
)ro
,64k
(backup
)ro
,320k
(storage
)ro
,64k
(caldata
)ro
,14656k@
0x40000(firmware
)
1560 ew-dorin_mtdlayout_4M
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
),3712k
(firmware
),64k
(art
)
1561 ew-dorin_mtdlayout_16M
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
),16000k
(firmware
),64k
(art
)ro
1562 f9k1115v2_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
),14464k
(rootfs
),1408k
(kernel
),64k
(nvram
)ro
,64k
(envram
)ro
,64k
(art
)ro
,15872k@
0x50000(firmware
)
1563 dlrtdev_mtdlayout
=mtdparts
=spi0.0
:256k
(uboot
)ro
,64k
(config
)ro
,6208k
(firmware
),64k
(caldata
)ro
,640k
(certs
),960k
(unknown
)ro
,64k@
0x7f0000(caldata_copy
)
1564 dlrtdev_mtdlayout_fat
=mtdparts
=spi0.0
:256k
(uboot
)ro
,64k
(config
)ro
,7168k
(firmware
),640k
(certs
),64k
(caldata
)ro
,64k@
0x660000(caldata_orig
),6208k@
0x50000(firmware_orig
)
1565 dragino2_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,16000k
(firmware
),64k
(config
)ro
,64k
(art
)ro
1566 hiwifi_hc6361_mtdlayout
=mtdparts
=spi0.0
:64k
(u-boot
)ro
,64k
(bdinfo
)ro
,1280k
(kernel
),14848k
(rootfs
),64k
(backup
)ro
,64k
(art
)ro
,16128k@
0x20000(firmware
)
1567 mr12_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,256k
(u-boot-env
)ro
,13440k
(rootfs
),2304k
(kernel
),128k
(art
)ro
,15744k@
0x80000(firmware
)
1568 mr16_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,256k
(u-boot-env
)ro
,13440k
(rootfs
),2304k
(kernel
),128k
(art
)ro
,15744k@
0x80000(firmware
)
1569 pb92_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,2752k
(rootfs
),896k
(kernel
),64k
(nvram
),64k
(art
)ro
,3648k@
0x50000(firmware
)
1570 planex_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,7744k
(firmware
),128k
(art
)ro
1571 ubntxm_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,7552k
(firmware
),256k
(cfg
)ro
,64k
(EEPROM
)ro
1572 uap_pro_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,1536k
(kernel
),14208k
(rootfs
),256k
(cfg
)ro
,64k
(EEPROM
)ro
,15744k@
0x50000(firmware
)
1573 ubdev_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,7488k
(firmware
),64k
(certs
),256k
(cfg
)ro
,64k
(EEPROM
)ro
1574 whrhpg300n_mtdlayout
=mtdparts
=spi0.0
:248k
(u-boot
)ro
,8k
(u-boot-env
)ro
,3712k
(firmware
),64k
(art
)ro
1575 wlr8100_mtdlayout
=mtdparts
=spi0.0
:192k
(u-boot
)ro
,64k
(u-boot-env
)ro
,1408k
(kernel
),14080k
(rootfs
),192k
(unknown
)ro
,64k
(art
)ro
,384k
(unknown2
)ro
,15488k@
0x40000(firmware
)
1576 wpj344_mtdlayout_16M
=mtdparts
=spi0.0
:192k
(u-boot
)ro
,16128k
(firmware
),64k
(art
)ro
1577 dr344_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,6336k
(rootfs
),1408k
(kernel
),64k
(nvram
),64k
(art
)ro
,7744k@
0x50000(firmware
)
1578 wpj531_mtdlayout_16M
=mtdparts
=spi0.0
:192k
(u-boot
)ro
,16128k
(firmware
),64k
(art
)ro
1579 wpj558_mtdlayout_16M
=mtdparts
=spi0.0
:192k
(u-boot
)ro
,16128k
(firmware
),64k
(art
)ro
1580 wndap360_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,1728k
(kernel
),6016k
(rootfs
),64k
(nvram
)ro
,64k
(art
)ro
,7744k@
0x50000(firmware
)
1581 wnr2200_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,7808k
(firmware
),64k
(art
)ro
1582 wnr2000v3_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,3712k
(firmware
),64k
(art
)ro
1583 wnr2000v4_mtdlayout
=mtdparts
=spi0.0
:192k
(u-boot
)ro
,64k
(u-boot-env
)ro
,3776k
(firmware
),64k
(art
)ro
1584 r6100_mtdlayout
=mtdparts
=ar934x-nfc
:128k
(u-boot
)ro
,256k
(caldata
),256k
(caldata-backup
),512k
(config
),512k
(pot
),2048k
(kernel
),122240k
(ubi
),25600k@
0x1a0000(firmware
),2048k
(language
),3072k
(traffic_meter
)
1585 tew823dru_mtdlayout
=mtdparts
=spi0.0
:192k
(u-boot
)ro
,64k
(nvram
)ro
,15296k
(firmware
),192k
(lang
)ro
,512k
(my-dlink
)ro
,64k
(mac
)ro
,64k
(art
)ro
1586 wndr4300_mtdlayout
=mtdparts
=ar934x-nfc
:256k
(u-boot
)ro
,256k
(u-boot-env
)ro
,256k
(caldata
),512k
(pot
),2048k
(language
),512k
(config
),3072k
(traffic_meter
),2048k
(kernel
),23552k
(ubi
),25600k@
0x6c0000(firmware
),256k
(caldata_backup
),-(reserved
)
1587 zcn1523h_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,6208k
(rootfs
),1472k
(kernel
),64k
(configure
)ro
,64k
(mfg
)ro
,64k
(art
)ro
,7680k@
0x50000(firmware
)
1588 mynet_n600_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,64k
(devdata
)ro
,64k
(devconf
)ro
,15872k
(firmware
),64k
(radiocfg
)ro
1589 mynet_rext_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,7808k
(firmware
),64k
(nvram
)ro
,64k
(ART
)ro
1590 zyx_nbg6716_mtdlayout
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(env
)ro
,64k
(RFdata
)ro
,-(nbu
);ar934x-nfc
:2048k
(zyxel_rfsd
),2048k
(romd
),1024k
(header
),2048k
(kernel
),-(ubi
)
1591 qihoo_c301_mtdlayout
=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
)
1592 yun_mtdlayout_8M
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,6464k
(rootfs
),1280k
(kernel
),64k
(nvram
),64k
(art
),7744k@
0x50000(firmware
)
1593 yun_mtdlayout_16M
=mtdparts
=spi0.0
:256k
(u-boot
)ro
,64k
(u-boot-env
)ro
,14656k
(rootfs
),1280k
(kernel
),64k
(nvram
),64k
(art
),15936k@
0x50000(firmware
)
1596 define Image
/BuildKernel
1597 cp
$(KDIR
)/vmlinux.elf
$(VMLINUX
).elf
1598 cp
$(KDIR
)/vmlinux
$(VMLINUX
).bin
1599 dd if
=$(KDIR
)/vmlinux.bin.lzma of
=$(VMLINUX
).lzma bs
=65536 conv
=sync
1600 dd if
=$(KDIR
)/vmlinux.bin.gz of
=$(VMLINUX
).gz bs
=65536 conv
=sync
1601 $(call MkuImage
,gzip
,,$(KDIR
)/vmlinux.bin.gz
,$(UIMAGE
)-gzip.bin
)
1602 $(call MkuImage
,lzma
,,$(KDIR
)/vmlinux.bin.lzma
,$(UIMAGE
)-lzma.bin
)
1603 cp
$(KDIR
)/loader-generic.elf
$(VMLINUX
)-lzma.elf
1604 -mkdir
-p
$(KDIR_TMP
)
1605 $(call Image
/Build
/Profile
/$(IMAGE_PROFILE
),buildkernel
)
1608 define Image
/BuildKernel
/Initramfs
1609 cp
$(KDIR
)/vmlinux-initramfs.elf
$(VMLINUX
)-initramfs.elf
1610 cp
$(KDIR
)/vmlinux-initramfs
$(VMLINUX
)-initramfs.bin
1611 dd if
=$(KDIR
)/vmlinux-initramfs.bin.lzma of
=$(VMLINUX
)-initramfs.lzma bs
=65536 conv
=sync
1612 dd if
=$(KDIR
)/vmlinux-initramfs.bin.gz of
=$(VMLINUX
)-initramfs.gz bs
=65536 conv
=sync
1613 $(call MkuImage
,gzip
,,$(KDIR
)/vmlinux-initramfs.bin.gz
,$(UIMAGE
)-initramfs-gzip.bin
)
1614 $(call MkuImage
,lzma
,,$(KDIR
)/vmlinux-initramfs.bin.lzma
,$(UIMAGE
)-initramfs-lzma.bin
)
1615 cp
$(KDIR
)/loader-generic-initramfs.elf
$(VMLINUX
)-initramfs-lzma.elf
1616 $(call Image
/Build
/Initramfs
)
1619 Image
/Build
/WRT400N
/buildkernel
=$(call MkuImageLzma
,$(2),$(3))
1621 define Image
/Build
/WRT400N
1622 $(call Sysupgrade
/KRuImage
,$(1),$(2),1310720,6488064)
1623 if
[ -e
"$(call sysupname,$(1),$(2))" ]; then \
1624 wrt400n
$(KDIR_TMP
)/vmlinux-
$(2).uImage
$(KDIR
)/root.
$(1) $(call factoryname
,$(1),$(2)); \
1629 define Image
/Build
/CameoAP94
/buildkernel
1630 $(call MkuImageLzma
,$(2),$(3) $(4))
1631 $(call MkuImageLzma
,$(2)-fat
,$(3) $(5))
1634 define Image
/Build
/CameoAP94
1635 $(eval fwsize
=$(call mtdpartsize
,firmware
,$(4)))
1636 $(eval fwsize_fat
=$(call mtdpartsize
,firmware
,$(5)))
1637 $(call Sysupgrade
/KRuImage
,$(1),$(2),0,$$$$(($(fwsize
)-4*64*1024)),64)
1638 if
[ -e
"$(call sysupname,$(1),$(2))" ]; then \
1640 dd if
=$(call sysupname
,$(1),$(2)); \
1642 ) > $(call imgname
,$(1),$(2))-backup-loader.bin
; \
1643 if
[ `stat -c%s $(call sysupname,$(1),$(2))` -gt
4194304 ]; then \
1644 echo
"Warning: $(call sysupname,$(1),$(2)) is too big" >&2; \
1647 dd if
=$(call sysupname
,$(1),$(2)) bs
=4096k conv
=sync
; \
1649 ) > $(call factoryname
,$(1),$(2)); \
1652 $(call CatFiles
,$(KDIR_TMP
)/vmlinux-
$(2)-fat.uImage
,0,$(KDIR
)/root.
$(1),$$$$(($(fwsize_fat
)-4*64*1024)),$(KDIR_TMP
)/$(2)-fat.bin
,64)
1653 if
[ -e
"$(KDIR_TMP)/$(2)-fat.bin" ]; then \
1654 echo
-n
"" > $(KDIR_TMP
)/$(2)-fat.dummy
; \
1655 sh
$(TOPDIR
)/scripts
/combined-image.sh \
1656 "$(KDIR_TMP)/$(2)-fat.bin" \
1657 "$(KDIR_TMP)/$(2)-fat.dummy" \
1658 $(call sysupname
,$(1),$(2)-fat
); \
1662 define Image
/Build
/WZRHP
1663 $(call Sysupgrade
/KRuImage
,$(1),$(2),0,$$$$(($(3)-4*$(4)*1024)),$(4))
1664 if
[ -e
"$(call sysupname,$(1),$(2))" ]; then \
1666 echo
-n
-e
"# Airstation Public Fmt1\x00\x00\x00\x00\x00\x00\x00\x00"; \
1667 dd if
=$(call sysupname
,$(1),$(2)); \
1668 ) > $(call imgname
,$(1),$(2))-tftp.bin
; \
1669 buffalo-enc
-p
$(5) -v
1.99 \
1670 -i
$(call sysupname
,$(1),$(2)) \
1671 -o
$(KDIR_TMP
)/$(2).enc
; \
1672 buffalo-tag
-b
$(5) -p
$(5) -a ath
-v
1.99 -m
1.01 -l mlang8 \
1673 -w
3 -c
0x80041000 -d
0x801e8000 -f
1 -r M_ \
1674 -i
$(KDIR_TMP
)/$(2).enc \
1675 -o
$(call factoryname
,$(1),$(2)); \
1679 Image
/Build
/WZRHP64K
/buildkernel
=$(call MkuImageLzma
,$(2),$(3))
1680 Image
/Build
/WZRHP64K
/initramfs
=$(call MkuImageLzma
/initramfs
,$(2),$(3) $(4))
1681 Image
/Build
/WZRHP64K
=$(call Image
/Build
/WZRHP
,$(1),$(2),33095680,64,$(4))
1683 Image
/Build
/WZRHP128K
/buildkernel
=$(call MkuImageLzma
,$(2),$(3))
1684 Image
/Build
/WZRHP128K
/initramfs
=$(call MkuImageLzma
/initramfs
,$(2),$(3) $(4))
1685 Image
/Build
/WZRHP128K
=$(call Image
/Build
/WZRHP
,$(1),$(2),33030144,128,$(4))
1688 Image
/Build
/WHRHPG300N
/buildkernel
=$(call MkuImageLzma
,$(2),$(3) $(4))
1689 Image
/Build
/WHRHPG300N
/initramfs
=$(call MkuImageLzma
/initramfs
,$(2),$(3) $(4))
1691 define Image
/Build
/WHRHPG300N
1692 $(eval fwsize
=$(call mtdpartsize
,firmware
,$(4)))
1693 $(call Sysupgrade
/KRuImage
,$(1),$(2),0,$$$$(($(fwsize
)-4*64*1024)),64)
1694 if
[ -e
"$(call sysupname,$(1),$(2))" ]; then \
1696 echo
-n
-e
"# Airstation Public Fmt1\x00\x00\x00\x00\x00\x00\x00\x00"; \
1697 dd if
=$(call sysupname
,$(1),$(2)); \
1698 ) > $(call imgname
,$(1),$(2))-tftp.bin
; \
1699 buffalo-enc
-p
$(5) -v
1.99 \
1700 -i
$(call sysupname
,$(1),$(2)) \
1701 -o
$(KDIR_TMP
)/$(2).enc
; \
1702 buffalo-tag
-b
$(5) -p
$(5) -a ath
-v
1.99 -m
1.01 -l mlang8 \
1703 -w
3 -c
0x80041000 -d
0x801e8000 -f
1 -r M_ \
1704 -i
$(KDIR_TMP
)/$(2).enc \
1705 -o
$(call factoryname
,$(1),$(2)); \
1710 define Image
/Build
/Cameo
1711 $(eval fwsize
=$(call mtdpartsize
,firmware
,$(4)))
1712 $(call Sysupgrade
/KRuImage
,$(1),$(2),0,$$$$(($(fwsize
)-4*64*1024)),64)
1713 if
[ -e
"$(call sysupname,$(1),$(2))" ]; then \
1714 factory_size
=$$$$(($(fwsize
) - $(6))); \
1716 dd if
=$(call sysupname
,$(1),$(2)) bs
=$$$${factory_size} conv
=sync
; \
1718 ) > $(call factoryname
,$(1),$(2)); \
1722 Image
/Build
/CameoAP81
/buildkernel
=$(call MkuImageLzma
,$(2),$(3) $(cameo_ap81_mtdlayout
))
1723 Image
/Build
/CameoAP81
=$(call Image
/Build
/Cameo
,$(1),$(2),$(3),$(cameo_ap81_mtdlayout
),$(4),65536)
1724 Image
/Build
/CameoAP81
/initramfs
=$(call MkuImageLzma
/initramfs
,$(2),$(3) $(cameo_ap81_mtdlayout
))
1726 Image
/Build
/CameoAP91
/buildkernel
=$(call MkuImageLzma
,$(2),$(3) $(cameo_ap91_mtdlayout
))
1727 Image
/Build
/CameoAP91
=$(call Image
/Build
/Cameo
,$(1),$(2),$(3),$(cameo_ap91_mtdlayout
),$(4),65536)
1728 Image
/Build
/CameoAP91
/initramfs
=$(call MkuImageLzma
/initramfs
,$(2),$(3) $(cameo_ap91_mtdlayout
))
1730 Image
/Build
/CameoAP99
/buildkernel
=$(call MkuImageLzma
,$(2),$(3) $(cameo_ap99_mtdlayout
))
1731 Image
/Build
/CameoAP99
=$(call Image
/Build
/Cameo
,$(1),$(2),$(3),$(cameo_ap99_mtdlayout
),$(4),65536)
1732 Image
/Build
/CameoAP99
/initramfs
=$(call MkuImageLzma
/initramfs
,$(2),$(3) $(cameo_ap99_mtdlayout
))
1734 Image
/Build
/CameoAP123_4M
/buildkernel
=$(call MkuImageLzma
,$(2),$(3) $(cameo_ap123_mtdlayout_4M
))
1735 Image
/Build
/CameoAP123_4M
=$(call Image
/Build
/Cameo
,$(1),$(2),$(3),$(cameo_ap123_mtdlayout_4M
),$(4),26)
1736 Image
/Build
/CameoAP123_4M
/initramfs
=$(call MkuImageLzma
/initramfs
,$(2),$(3) $(cameo_ap123_mtdlayout_4M
))
1738 Image
/Build
/CameoAP135
/buildkernel
=$(call MkuImageLzma
,$(2),$(3) $(4))
1739 Image
/Build
/CameoAP135
=$(call Image
/Build
/Cameo
,$(1),$(2),$(3),$(4),$(5),26)
1740 Image
/Build
/CameoAP135
/initramfs
=$(call MkuImageLzma
/initramfs
,$(2),$(3) $(4))
1742 Image
/Build
/CameoDB120
/buildkernel
=$(call MkuImageLzma
,$(2),$(3) $(cameo_db120_mtdlayout
))
1743 Image
/Build
/CameoDB120
=$(call Image
/Build
/Cameo
,$(1),$(2),$(3),$(cameo_db120_mtdlayout
),$(4),26)
1744 Image
/Build
/CameoDB120
/initramfs
=$(call MkuImageLzma
/initramfs
,$(2),$(3) $(cameo_db120_mtdlayout
))
1746 Image
/Build
/CameoDB120_8M
/buildkernel
=$(call MkuImageLzma
,$(2),$(3) $(cameo_db120_mtdlayout_8M
))
1747 Image
/Build
/CameoDB120_8M
=$(call Image
/Build
/Cameo
,$(1),$(2),$(3),$(cameo_db120_mtdlayout_8M
),$(4),26)
1748 Image
/Build
/CameoDB120_8M
/initramfs
=$(call MkuImageLzma
/initramfs
,$(2),$(3) $(cameo_db120_mtdlayout_8M
))
1750 define Image
/Build
/CameoHornet
1751 $(eval fwsize
=$(call mtdpartsize
,firmware
,$(4)))
1752 $(call Sysupgrade
/KRuImage
,$(1),$(2),0,$$$$(($(fwsize
)-4*64*1024)),64)
1753 if
[ -e
"$(call sysupname,$(1),$(2))" ]; then \
1755 [ -n
"$$$$r" ] && dashr
="-$$$$r" || dashr
=; \
1756 [ -z
"$$$$r" ] && r
="DEF"; \
1757 mkcameofw
-M HORNET
-R
"$$$$r" -S
$(5) -V
$(6) -c \
1758 -K
$(8) -I
$(fwsize
) \
1759 -k
"$(call sysupname,$(1),$(2))" \
1760 -o
$(call imgname
,$(1),$(2))-factory
$$$$dashr.bin
; \
1766 Image
/Build
/CameoAP121
/buildkernel
=$(call MkuImageLzma
,$(2),$(3) $(cameo_ap121_mtdlayout
))
1767 Image
/Build
/CameoAP121
=$(call Image
/Build
/CameoHornet
,$(1),$(2),$(3),$(cameo_ap121_mtdlayout
),$(4),$(5),$(6),0xe0000)
1768 Image
/Build
/CameoAP121
/initramfs
=$(call MkuImageLzma
/initramfs
,$(2),$(3) $(cameo_ap121_mtdlayout
))
1770 Image
/Build
/CameoAP121_8M
/buildkernel
=$(call MkuImageLzma
,$(2),$(3) $(cameo_ap121_mtdlayout_8M
))
1771 Image
/Build
/CameoAP121_8M
=$(call Image
/Build
/CameoHornet
,$(1),$(2),$(3),$(cameo_ap121_mtdlayout_8M
),$(4),$(5),$(6),0x100000)
1772 Image
/Build
/CameoAP121_8M
/initramfs
=$(call MkuImageLzma
/initramfs
,$(2),$(3) $(cameo_ap121_mtdlayout_8M
))
1774 define Image
/Build
/dLAN
1775 $(eval fwsize
=$(call mtdpartsize
,firmware
,$(4)))
1776 $(eval rootsize
=$(call mtdpartsize
,rootfs
,$(4)))
1777 $(eval kernsize
=$(call mtdpartsize
,kernel
,$(4)))
1778 $(call Sysupgrade
/$(5),$(1),$(2),$(if
$(6),$(6),$(kernsize
)),$(if
$(rootsize
),$(rootsize
),$(fwsize
)))
1779 if
[ -e
"$(call factoryname,$(1),$(2))" ]; then \
1780 dd if
=$(KDIR_TMP
)/vmlinux-
$(2).uImage \
1781 of
=$(call imgname
,kernel
,$(2)).bin bs
=64k conv
=sync
; \
1782 dd if
=$(KDIR
)/root.
$(1) \
1783 of
=$(call imgname
,$(1),$(2)-rootfs
).bin bs
=128k conv
=sync
; \
1787 Image
/Build
/dLANLzma
/buildkernel
=$(call MkuImageLzma
,$(2),$(3) $(4))
1788 Image
/Build
/dLANLzma
=$(call Image
/Build
/dLAN
,$(1),$(2),$(3),$(4),$(5),$(6),$(7))
1789 Image
/Build
/dLANLzma
/initramfs
=$(call MkuImageLzma
/initramfs
,$(2),$(3) $(4))
1791 define Image
/Build
/Ath
1792 $(eval fwsize
=$(call mtdpartsize
,firmware
,$(4)))
1793 $(eval rootsize
=$(call mtdpartsize
,rootfs
,$(4)))
1794 $(eval kernsize
=$(call mtdpartsize
,kernel
,$(4)))
1795 $(call Sysupgrade
/$(5),$(1),$(2),$(if
$(6),$(6),$(kernsize
)),$(if
$(rootsize
),$(rootsize
),$(fwsize
)))
1796 if
[ -e
"$(call sysupname,$(1),$(2))" ]; then \
1797 dd if
=$(KDIR_TMP
)/vmlinux-
$(2).uImage \
1798 of
=$(call imgname
,kernel
,$(2)).bin bs
=64k conv
=sync
; \
1799 dd if
=$(KDIR
)/root.
$(1) \
1800 of
=$(call imgname
,$(1),$(2)-rootfs
).bin bs
=128k conv
=sync
; \
1804 Image
/Build
/AthGzip
/buildkernel
=$(call MkuImageGzip
,$(2),$(3) $(4))
1805 Image
/Build
/AthGzip
=$(call Image
/Build
/Ath
,$(1),$(2),$(3),$(4),$(5),$(6),$(7))
1806 Image
/Build
/AthGzip
/initramfs
=$(call MkuImageGzip
/initramfs
,$(2),$(3) $(4))
1808 Image
/Build
/AthLzma
/buildkernel
=$(call MkuImageLzma
,$(2),$(3) $(4))
1809 Image
/Build
/AthLzma
=$(call Image
/Build
/Ath
,$(1),$(2),$(3),$(4),$(5),$(6),$(7))
1810 Image
/Build
/AthLzma
/initramfs
=$(call MkuImageLzma
/initramfs
,$(2),$(3) $(4))
1813 Image
/Build
/Belkin
/buildkernel
=$(call MkuImageLzma
,$(2),$(3) $(4))
1814 Image
/Build
/Belkin
/initramfs
=$(call MkuImageLzma
/initramfs
,$(2),$(3) $(4))
1816 define Image
/Build
/Belkin
1817 $(eval fwsize
=$(call mtdpartsize
,firmware
,$(4)))
1818 $(eval kernsize
=$(call mtdpartsize
,kernel
,$(4)))
1819 $(eval rootsize
=$(call mtdpartsize
,rootfs
,$(4)))
1820 $(call Sysupgrade
/RKuImage
,$(1),$(2),$(kernsize
),$(rootsize
))
1821 if
[ -e
"$(call sysupname,$(1),$(2))" ]; then \
1822 edimax_fw_header
-m
$(5) -v
"OpenWrt$(REVISION)" \
1824 -i
$(KDIR_TMP
)/vmlinux-
$(2).uImage \
1825 -o
$(KDIR_TMP
)/$(2)-uImage
; \
1826 edimax_fw_header
-m
$(5) -v
"OpenWrt$(REVISION)" \
1828 -i
$(KDIR
)/root.
$(1) \
1829 -o
$(KDIR_TMP
)/$(2)-rootfs
; \
1831 dd if
=$(KDIR_TMP
)/$(2)-rootfs
; \
1832 dd if
=$(KDIR_TMP
)/$(2)-uImage
; \
1833 ) > "$(call factoryname,$(1),$(2))"; \
1837 define Image
/Build
/EnGenius
1838 $(eval fwsize
=$(call mtdpartsize
,firmware
,$(4)))
1839 $(eval rootsize
=$(call mtdpartsize
,rootfs
,$(4)))
1840 $(eval kernsize
=$(call mtdpartsize
,kernel
,$(4)))
1841 $(call Sysupgrade
/$(5),$(1),$(2),$(if
$(6),$(6),$(kernsize
)),$(if
$(rootsize
),$(rootsize
),$(fwsize
)))
1842 if
[ -e
"$(call sysupname,$(1),$(2))" ]; then \
1843 dd if
=$(KDIR_TMP
)/vmlinux-
$(2).uImage \
1844 of
=$(call imgname
,kernel
,$(2)).bin bs
=64k conv
=sync
; \
1845 dd if
=$(KDIR
)/root.
$(1) \
1846 of
=$(call imgname
,$(1),$(2)-rootfs
).bin bs
=128k conv
=sync
; \
1847 mksenaofw
-e
$(call sysupname
,$(1),$(2)) \
1848 -o
$(call imgname
,$(1),$(2))-factory.dlf \
1849 -r
0x101 -p
$(7) -t
2; \
1853 Image
/Build
/EnGenius
/buildkernel
=$(call MkuImageLzma
,$(2),$(3) $(4))
1854 Image
/Build
/EnGenius
/initramfs
=$(call MkuImageLzma
/initramfs
,$(2),$(3) $(4))
1857 define MkuImageHiWiFi
1858 # Field ih_name needs to start with "tw150v1"
1859 mkimage
-A mips
-O linux
-T kernel
-a
0x80060000 -C
$(1) $(2) \
1860 -e
0x80060000 -n
'tw150v1 MIPS OpenWrt Linux-$(LINUX_VERSION)' \
1864 define MkuImageLzmaHiWiFi
1865 $(call PatchKernelLzma
,$(1),$(2),$(3),$(4))
1866 $(call MkuImageHiWiFi
,lzma
,$(5),$(KDIR_TMP
)/vmlinux
$(4)-$(1).bin.lzma
,$(KDIR_TMP
)/vmlinux
$(4)-$(1).uImage
)
1869 Image
/Build
/HiWiFi
/buildkernel
=$(call MkuImageLzmaHiWiFi
,$(2),$(3) $(4))
1870 Image
/Build
/HiWiFi
=$(call Image
/Build
/Ath
,$(1),$(2),$(3),$(4),$(5),$(6),$(7))
1871 Image
/Build
/HiWiFi
/initramfs
=$(call MkuImageLzma
/initramfs
,$(2),$(3) $(4))
1873 Image
/Build
/PB4X
/buildkernel
=$(call PatchKernelLzma
,$(2),$(3))
1875 define Image
/Build
/PB4X
1876 dd if
=$(KDIR_TMP
)/vmlinux-
$(2).bin.lzma \
1877 of
=$(call imgname
,kernel
,$(2)).bin bs
=64k conv
=sync
1878 dd if
=$(KDIR
)/root.
$(1) \
1879 of
=$(call imgname
,$(1),$(2)-rootfs
).bin bs
=128k conv
=sync
1880 -sh
$(TOPDIR
)/scripts
/combined-image.sh \
1881 "$(call imgname,kernel,$(2)).bin" \
1882 "$(call imgname,$(1),$(2)-rootfs).bin" \
1883 $(call sysupname
,$(1),$(2))
1887 Image
/Build
/MyLoader
/buildkernel
=$(call PatchKernelLzma
,$(2),$(3))
1888 Image
/Build
/MyLoader
/initramfs
=$(call PatchKernel
/initramfs
,$(2),$(3))
1890 define Image
/Build
/MyLoader
1891 $(eval fwsize
=$(shell echo
$$(($(4)-0x30000-4*64*1024))))
1892 $(eval fwimage
=$(KDIR_TMP
)/$(2)-$(5)-firmware.bin
)
1893 $(call CatFiles
,$(KDIR_TMP
)/vmlinux-
$(2).bin.lzma
,65536,$(KDIR
)/root.
$(1),$(fwsize
),$(fwimage
))
1894 if
[ -e
"$(fwimage)" ]; then \
1895 $(STAGING_DIR_HOST
)/bin
/mkmylofw
-B
$(2) -s
$(4) -v \
1896 -p0x00030000
:0:al
:0x80060000:firmware
:$(fwimage
) \
1897 $(call imgname
,$(1),$(2))-$(5)-factory.img
; \
1898 echo
-n
"" > $(KDIR_TMP
)/empty.bin
; \
1899 sh
$(TOPDIR
)/scripts
/combined-image.sh \
1900 $(fwimage
) $(KDIR_TMP
)/empty.bin \
1901 $(call imgname
,$(1),$(2))-$(5)-sysupgrade.bin
; \
1905 Image
/Build
/Planex
/initramfs
=$(call MkuImageGzip
/initramfs
,$(2),$(3) $(planex_mtdlayout
))
1906 Image
/Build
/Planex
/loader
=$(call Image
/BuildLoaderAlone
,$(1),gz
,$(2) $(planex_mtdlayout
),0x52000,0)
1908 define Image
/Build
/Planex
/buildkernel
1909 [ -e
"$(KDIR)/loader-$(2).gz" ]
1910 $(call MkuImageOKLI
,$(2))
1912 dd if
=$(KDIR
)/loader-
$(2).gz bs
=8128 count
=1 conv
=sync
; \
1913 dd if
=$(KDIR_TMP
)/vmlinux-
$(2).okli
; \
1914 ) > $(KDIR_TMP
)/kernel-
$(2).bin
1915 $(call MkuImage
,gzip
,,$(KDIR_TMP
)/kernel-
$(2).bin
,$(KDIR_TMP
)/vmlinux-
$(2).uImage
)
1918 define Image
/Build
/Planex
1919 $(eval fwsize
=$(call mtdpartsize
,firmware
,$(planex_mtdlayout
)))
1920 $(call Sysupgrade
/KRuImage
,$(1),$(2),0,$$$$(($(fwsize
)-4*64*1024)),64)
1921 if
[ -e
"$(call sysupname,$(1),$(2))" ]; then \
1922 $(STAGING_DIR_HOST
)/bin
/mkplanexfw \
1925 -i
$(call sysupname
,$(1),$(2)) \
1926 -o
$(call factoryname
,$(1),$(2)); \
1931 Image
/Build
/ALFA
/buildkernel
=$(call MkuImageLzma
,$(2),$(3) $(4))
1932 Image
/Build
/ALFA
/initramfs
=$(call MkuImageLzma
/initramfs
,$(2),$(3) $(4))
1934 define Image
/Build
/ALFA
1935 $(call Sysupgrade
/RKuImage
,$(1),$(2),$(5),$(6))
1936 if
[ -e
"$(call sysupname,$(1),$(2))" ]; then \
1937 rm -rf
$(KDIR
)/$(1); \
1938 mkdir
-p
$(KDIR
)/$(1); \
1940 cp
$(KDIR_TMP
)/vmlinux-
$(2).uImage
$(KDIR
)/$(1)/$(7); \
1941 cp
$(KDIR
)/root.
$(1) $(KDIR
)/$(1)/$(8); \
1942 $(TAR
) zcf
$(call factoryname
,$(1),$(2)) -C
$(KDIR
)/$(1) $(7) $(8); \
1944 echo WRM7222C | dd bs
=32 count
=1 conv
=sync
; \
1946 ) >> $(call factoryname
,$(1),$(2)); \
1951 Image
/Build
/Seama
/loader
=$(call Image
/BuildLoader
,$(1),bin
,$(2) $(3),0x80060000)
1953 define Image
/Build
/Seama
1954 [ -e
"$(KDIR)/loader-$(2).bin" ]
1955 $(call CompressLzma
,$(KDIR
)/loader-
$(2).bin
,$(KDIR_TMP
)/loader-
$(2).bin.lzma
)
1956 -rm -f
$(KDIR_TMP
)/image-
$(2).tmp
1957 $(call CatFiles
,$(KDIR_TMP
)/loader-
$(2).bin.lzma
,$$$$(($(6) - 64)),$(KDIR
)/root.
$(1),$(7),$(KDIR_TMP
)/image-
$(2).tmp
)
1958 [ -e
"$(KDIR_TMP)/image-$(2).tmp" ] && { \
1959 head
-c
-4 "$(KDIR_TMP)/image-$(2).tmp" > "$(KDIR_TMP)/image-$(2).no-jffs2mark.tmp"; \
1960 $(STAGING_DIR_HOST
)/bin
/seama \
1961 -i
$(KDIR_TMP
)/image-
$(2).no-jffs2mark.tmp \
1962 -m
"dev=/dev/mtdblock/1" -m
"type=firmware"; \
1963 $(STAGING_DIR_HOST
)/bin
/seama \
1964 -s
$(call imgname
,$(1),$(2))-factory.bin \
1965 -m
"signature=$(5)" \
1966 -i
$(KDIR_TMP
)/image-
$(2).no-jffs2mark.tmp.seama
; \
1967 tail
-c
4 "$(KDIR_TMP)/image-$(2).tmp" >> $(call imgname
,$(1),$(2))-factory.bin
; \
1969 cat
$(KDIR_TMP
)/loader-
$(2).bin.lzma
> $(KDIR_TMP
)/image-
$(2)-sysupgrade.tmp
1970 $(STAGING_DIR_HOST
)/bin
/seama \
1971 -i
$(KDIR_TMP
)/image-
$(2)-sysupgrade.tmp \
1972 -m
"dev=/dev/mtdblock/1" -m
"type=firmware"
1973 $(call CatFiles
,$(KDIR_TMP
)/image-
$(2)-sysupgrade.tmp.seama
,$(6),$(KDIR
)/root.
$(1),$(7),$(call sysupname
,$(1),$(2)))
1976 define Image
/Build
/Seama
/initramfs
1977 $(call PatchKernelLzma
,$(2),$(3) $(4),,-initramfs
)
1978 $(STAGING_DIR_HOST
)/bin
/seama \
1979 -i
$(KDIR_TMP
)/vmlinux-initramfs-
$(2).bin.lzma \
1980 -m
"dev=/dev/mtdblock/1" -m
"type=firmware"
1981 cat
$(KDIR_TMP
)/vmlinux-initramfs-
$(2).bin.lzma.seama
> $(call imgname
,initramfs
,$(2))-seama.bin
1984 Image
/Build
/Senao
/buildkernel
=$(call MkuImageLzma
,$(2),$(3) $(4))
1985 Image
/Build
/Senao
/initramfs
=$(call MkuImageLzma
/initramfs
,$(2),$(3) $(4))
1987 define Image
/Build
/Senao
1988 mkdir
-p
$(KDIR_TMP
)/$(2)/
1989 touch
$(KDIR_TMP
)/$(2)/FWINFO-OpenWrt-
$(REVISION
)-$(2)
1990 -$(CP
) .
/$(2)/* $(KDIR_TMP
)/$(2)/
1991 dd if
=$(KDIR_TMP
)/vmlinux-
$(2).uImage \
1992 of
=$(KDIR_TMP
)/$(2)/openwrt-senao-
$(2)-uImage-lzma.bin bs
=64k conv
=sync
1993 dd if
=$(KDIR
)/root.
$(1) \
1994 of
=$(KDIR_TMP
)/$(2)/openwrt-senao-
$(2)-root.
$(1) bs
=64k conv
=sync
1996 cd
$(KDIR_TMP
)/$(2)/; \
1997 $(TAR
) -cz
-f
$(call factoryname
,$(1),$(2)) * \
1999 -rm -rf
$(KDIR_TMP
)/$(2)/
2000 -sh
$(TOPDIR
)/scripts
/combined-image.sh \
2001 $(KDIR_TMP
)/vmlinux-
$(2).uImage \
2003 $(call sysupname
,$(1),$(2))
2006 Image
/Build
/TPLINK-SAFELOADER
/loader
= $(call Image
/BuildLoaderPatched
,$(1),elf
,$(2) $(3))
2008 define Image
/Build
/TPLINK-SAFELOADER
2009 [ -e
"$(KDIR)/loader-$(2).elf" ]
2011 -$(STAGING_DIR_HOST
)/bin
/tplink-safeloader \
2013 -k
$(KDIR
)/loader-
$(2).elf \
2014 -r
$(KDIR
)/root.
$(1) \
2017 -o
$(call factoryname
,$(1),$(2))
2018 -$(STAGING_DIR_HOST
)/bin
/tplink-safeloader \
2020 -k
$(KDIR
)/loader-
$(2).elf \
2021 -r
$(KDIR
)/root.
$(1) \
2024 -o
$(call sysupname
,$(1),$(2))
2028 define Image
/Build
/CyberTAN
2029 echo
-n
'' > $(KDIR_TMP
)/empty.bin
2030 $(STAGING_DIR_HOST
)/bin
/trx
-o
$(KDIR
)/image.tmp \
2031 -f
$(KDIR_TMP
)/vmlinux-
$(2).uImage
-F
$(KDIR_TMP
)/empty.bin \
2032 -x
32 -a
0x10000 -x
-32 -f
$(KDIR
)/root.
$(1)
2033 -$(STAGING_DIR_HOST
)/bin
/addpattern
-B
$(2) -v v
$(5) \
2034 -i
$(KDIR
)/image.tmp \
2035 -o
$(call sysupname
,$(1),$(2))
2036 $(STAGING_DIR_HOST
)/bin
/trx
-o
$(KDIR
)/image.tmp
-f
$(KDIR_TMP
)/vmlinux-
$(2).uImage \
2037 -x
32 -a
0x10000 -x
-32 -f
$(KDIR
)/root.
$(1)
2038 -$(STAGING_DIR_HOST
)/bin
/addpattern
-B
$(2) -v v
$(5) -g \
2039 -i
$(KDIR
)/image.tmp \
2040 -o
$(call factoryname
,$(1),$(2))
2041 rm $(KDIR
)/image.tmp
2044 Image
/Build
/CyberTANGZIP
/loader
=$(call Image
/BuildLoader
,$(1),gz
,$(2),0x80060000)
2045 Image
/Build
/CyberTANGZIP
/buildkernel
=$(call MkuImage
,gzip
,,$(KDIR
)/loader-
$(2).gz
,$(KDIR_TMP
)/vmlinux-
$(2).uImage
)
2046 Image
/Build
/CyberTANGZIP
=$(call Image
/Build
/CyberTAN
,$(1),$(2),$(3),$(4),$(5))
2048 Image
/Build
/CyberTANLZMA
/buildkernel
=$(call MkuImageLzma
,$(2),$(3) $(4))
2049 Image
/Build
/CyberTANLZMA
=$(call Image
/Build
/CyberTAN
,$(1),$(2),$(3),$(4),$(5))
2052 define Build
/MerakiNAND
2053 -$(STAGING_DIR_HOST
)/bin
/mkmerakifw \
2054 -B
$(BOARDNAME
) -s \
2060 Image
/Build
/Netgear
/initramfs
=$(call MkuImageLzma
/initramfs
,$(2),$(3) $(4),,-M
$(5))
2062 define Image
/Build
/Netgear
/buildkernel
2063 $(call MkuImageLzma
,$(2),$(3) $(4),-d20
,,-M
$(5))
2064 -rm -rf
$(KDIR_TMP
)/$(2)
2065 mkdir
-p
$(KDIR_TMP
)/$(2)/image
2066 cat
$(KDIR_TMP
)/vmlinux-
$(2).uImage
> $(KDIR_TMP
)/$(2)/image
/uImage
2067 $(STAGING_DIR_HOST
)/bin
/mksquashfs-lzma \
2068 $(KDIR_TMP
)/$(2) $(KDIR_TMP
)/vmlinux-
$(2).uImage.squashfs.tmp1 \
2069 -noappend
-root-owned
-be
-b
65536 \
2070 $(if
$(SOURCE_DATE_EPOCH
),-fixed-time
$(SOURCE_DATE_EPOCH
))
2072 cat
$(KDIR_TMP
)/vmlinux-
$(2).uImage.squashfs.tmp1
; \
2073 dd if
=/dev
/zero bs
=1k count
=1 \
2074 ) > $(KDIR_TMP
)/vmlinux-
$(2).uImage.squashfs.tmp2
2075 mkimage
-A mips
-O linux
-T filesystem
-C none
-M
$(5) \
2076 -a
0xbf070000 -e
0xbf070000 \
2077 -n
'MIPS OpenWrt Linux-$(LINUX_VERSION)' \
2078 -d
$(KDIR_TMP
)/vmlinux-
$(2).uImage.squashfs.tmp2 \
2079 $(KDIR_TMP
)/vmlinux-
$(2).uImage.squashfs
2082 define Image
/Build
/Netgear
2083 $(eval fwsize
=$(call mtdpartsize
,firmware
,$(4)))
2084 $(call CatFiles
,$(KDIR_TMP
)/vmlinux-
$(2).uImage.squashfs
,0,$(KDIR
)/root.
$(1),$(fwsize
),$(call sysupname
,$(1),$(2)),64)
2085 if
[ -e
$(call sysupname
,$(1),$(2)) ]; then \
2086 for r in
$(7) ; do \
2087 [ -n
"$$$$r" ] && dashr
="-$$$$r" || dashr
= ; \
2088 $(STAGING_DIR_HOST
)/bin
/mkdniimg \
2089 -B
$(6) -v OpenWrt.
$(REVISION
) -r
"$$$$r" $(8) \
2090 -i
$(call sysupname
,$(1),$(2)) \
2091 -o
$(call imgname
,$(1),$(2))-factory
$$$$dashr.img
; \
2097 Image
/Build
/NetgearLzma
/initramfs
=$(call MkuImageLzma
/initramfs
,$(2),$(3) $(4),,-M
$(5))
2098 Image
/Build
/NetgearLzma
/buildkernel
=$(call MkuImageLzma
,$(2),$(3) $(4),-d20
,,-M
$(5))
2100 define Image
/Build
/NetgearLzma
2101 $(eval fwsize
=$(call mtdpartsize
,firmware
,$(4)))
2102 $(call CatFiles
,$(KDIR_TMP
)/vmlinux-
$(2).uImage
,0,$(KDIR
)/root.
$(1),$(fwsize
),$(call sysupname
,$(1),$(2)),64)
2106 Image
/Build
/NetgearNAND
/initramfs
=$(call MkuImageLzma
/initramfs
,$(2),$(3) $(4),,-M
$(5))
2109 # $(2): Board name (small caps)
2110 # $(3): Kernel board specific cmdline
2111 # $(4): Kernel mtdparts definition
2112 # $(5): U-Boot magic
2113 define Image
/Build
/NetgearNAND
/buildkernel
2114 $(eval kernelsize
=$(call mtdpartsize
,kernel
,$(4)))
2115 $(call PatchKernelLzma
,$(2),$(3) $(4),-d20
)
2116 dd if
=$(KDIR_TMP
)/vmlinux-
$(2).bin.lzma \
2117 of
=$(KDIR_TMP
)/vmlinux-
$(2).bin.tmp \
2118 bs
=$$$$(($(kernelsize
)-131072-2*64-1)) \
2120 $(call MkuImage
,lzma
,-M
$(5),$(KDIR_TMP
)/vmlinux-
$(2).bin.tmp
,$(KDIR_TMP
)/vmlinux-
$(2).uImage
)
2121 echo
-ne
'\xff' >> $(KDIR_TMP
)/vmlinux-
$(2).uImage
2122 # create a fake rootfs image
2123 dd if
=/dev
/zero of
=$(KDIR_TMP
)/fakeroot-
$(2) bs
=131072 count
=1
2124 mkimage
-A mips
-O linux
-T filesystem
-C none \
2125 -a
0xbf070000 -e
0xbf070000 \
2126 -n
'MIPS OpenWrt fakeroot' \
2127 -d
$(KDIR_TMP
)/fakeroot-
$(2) \
2129 $(KDIR_TMP
)/fakeroot-
$(2).uImage
2130 # append the fake rootfs image to the kernel, it will reside in the last
2131 # erase block of the kernel partition
2132 cat
$(KDIR_TMP
)/fakeroot-
$(2).uImage
>> $(KDIR_TMP
)/vmlinux-
$(2).uImage
2136 # $(1): rootfs image suffix
2137 # $(2): Board name (small caps)
2138 # $(3): Kernel board specific cmdline
2139 # $(4): Kernel mtdparts definition
2140 # $(5): U-Boot magic
2141 # $(6): Board name (upper caps)
2142 # $(7): firmware region code (not used yet)
2143 # $(8): DNI Hardware version
2144 # $(9): suffix of the configuration file for ubinize
2145 define Image
/Build
/NetgearNAND
2146 $(eval firmwaresize
=$(call mtdpartsize
,firmware
,$(4)))
2147 $(eval kernelsize
=$(call mtdpartsize
,kernel
,$(4)))
2148 $(eval imageraw
=$(KDIR_TMP
)/$(2)-raw.img
)
2149 $(CP
) $(KDIR
)/root.squashfs-raw
$(KDIR_TMP
)/root.squashfs
2150 echo
-ne
'\xde\xad\xc0\xde' > $(KDIR_TMP
)/jffs2.eof
2151 $(call ubinize
,ubinize-
$(9).ini
,$(KDIR_TMP
),$(KDIR_TMP
)/$(2)-root.ubi
,128KiB
,2048,-E
5)
2153 dd if
=$(KDIR_TMP
)/vmlinux-
$(2).uImage
; \
2154 dd if
=$(KDIR_TMP
)/$(2)-root.ubi \
2156 $(STAGING_DIR_HOST
)/bin
/mkdniimg \
2157 -B
$(6) -v OpenWrt.
$(REVISION
) -r
"$$$$r" $(8) \
2159 -o
$(call imgname
,ubi
,$(2))-factory.img
2161 $(call Image
/Build
/SysupgradeNAND
,$(2),squashfs
,$(KDIR_TMP
)/vmlinux-
$(2).uImage
)
2165 ifdef CONFIG_PACKAGE_uboot-ar71xx-nbg460n_550n_550nh
2166 Image
/Build
/ZyXEL
/buildkernel
=$(call MkuImageLzma
,$(2),$(3))
2168 define Image
/Build
/ZyXEL
2169 $(call Sysupgrade
/KRuImage
,$(1),$(2),917504,2752512)
2170 if
[ -e
"$(call sysupname,$(1),$(2))" ]; then \
2171 if
[ ! -f
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-u-boot.bin
]; then \
2172 echo
"Warning: $(IMG_PREFIX)-$(2)-u-boot.bin not found" >&2; \
2174 $(STAGING_DIR_HOST
)/bin
/mkzynfw \
2176 -b
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-u-boot.bin \
2177 -r
$(call sysupname
,$(1),$(2)):0x10000 \
2178 -o
$(call factoryname
,$(1),$(2)); \
2183 define Device
/NBG6616
2187 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
)
2189 IMAGES
:= sysupgrade.bin
2190 KERNEL
:= kernel-bin | patch-cmdline | lzma | uImage lzma | jffs2 boot
/vmlinux.lzma.uImage
2191 IMAGE
/sysupgrade.bin
= append-kernel
$$$$(KERNEL_SIZE
) | append-rootfs | pad-rootfs | check-size
$$$$(IMAGE_SIZE
)
2192 # We cannot currently build a factory image. It is the sysupgrade image
2193 # prefixed with a header (which is actually written into the MTD device).
2194 # The header is 2kiB and is filled with 0xff. The format seems to be:
2196 # 2 bytes: checksum of the data partition (big endian)
2197 # 4 bytes: length of the contained image file (big endian)
2198 # 32 bytes: Firmware Version string (NUL terminated, 0xff padded)
2200 # 2 bytes: checksum over the header partition (big endian)
2201 # 32 bytes: Model (e.g. "NBG6616", NUL termiated, 0xff padded)
2202 # rest: 0xff padding
2204 # The checksums are calculated by adding up all bytes and if a 16bit
2205 # overflow occurs, one is added and the sum is masked to 16 bit:
2206 # csum = csum + databyte; if (csum > 0xffff) { csum += 1; csum &= 0xffff };
2207 # Should the file have an odd number of bytes then the byte len-0x800 is
2208 # used additionally.
2209 # The checksum for the header is calcualted over the first 2048 bytes with
2210 # the firmware checksum as the placeholder during calculation.
2212 # The header is padded with 0xff to the erase block size of the device.
2215 TARGET_DEVICES
+= NBG6616
2217 define Image
/Build
/ZyXELNAND
/buildkernel
2218 $(eval kernelsize
=$(call mtdpartsize
,kernel
,$(5)))
2219 $(call MkuImageLzma
,$(2),$(3) $(5) $(6))
2220 mkdir
-p
$(KDIR_TMP
)/$(2)/image
/boot
2221 cp
$(KDIR_TMP
)/vmlinux-
$(2).uImage
$(KDIR_TMP
)/$(2)/image
/boot
/vmlinux.lzma.uImage
2222 $(STAGING_DIR_HOST
)/bin
/mkfs.jffs2 \
2223 --pad
=$(kernelsize
) --big-endian
--squash-uids
-v
-e
128KiB \
2224 -o
$(KDIR_TMP
)/$(2)-kernel.jffs2 \
2225 -d
$(KDIR_TMP
)/$(2)/image \
2226 2>&1 1>/dev
/null | awk
'/^.+$$$$/'
2227 -rm -rf
$(KDIR_TMP
)/$(2)
2230 define Image
/Build
/ZyXELNAND
2231 if
[ "$(1)" != "squashfs" ]; then \
2232 echo Only squashfs is supported
; \
2235 $(eval firmwaresize
=$(call mtdpartsize
,firmware
,$(4)))
2236 $(eval kernelsize
=$(call mtdpartsize
,kernel
,$(4)))
2237 $(eval imageraw
=$(KDIR_TMP
)/$(2)-raw.img
)
2238 $(CP
) $(KDIR
)/root.
$(1) $(KDIR_TMP
)/ubi_root.img
2239 $(call ubinize
,ubinize-
$(2).ini
,$(KDIR_TMP
),$(KDIR_TMP
)/$(2)-root.ubi
,128KiB
,2048,-E
5)
2241 dd if
=$(KDIR_TMP
)/$(2)-kernel.jffs2
; \
2242 dd if
=$(KDIR_TMP
)/$(2)-root.ubi \
2244 dd if
=$(imageraw
) of
=$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory.bin \
2246 $(call Image
/Build
/SysupgradeNAND
,$(2),squashfs
,$(KDIR_TMP
)/$(2)-kernel.jffs2
)
2250 Image
/Build
/OpenMesh
/buildkernel
=$(call MkuImageLzma
,$(2))
2252 define Image
/Build
/OpenMesh
2253 -sh
$(TOPDIR
)/scripts
/om-fwupgradecfg-gen.sh \
2255 "$(BUILD_DIR)/fwupgrade.cfg-$(4)" \
2256 "$(KDIR_TMP)/vmlinux-$(2).uImage" \
2258 -sh
$(TOPDIR
)/scripts
/combined-ext-image.sh \
2259 "$(4)" "$(call factoryname,$(1),$(2))" \
2260 "$(BUILD_DIR)/fwupgrade.cfg-$(4)" "fwupgrade.cfg" \
2261 "$(KDIR_TMP)/vmlinux-$(2).uImage" "kernel" \
2262 "$(KDIR)/root.$(1)" "rootfs"
2266 Image
/Build
/Zcomax
/buildkernel
=$(call MkuImageLzma
,$(2),$(3) $(4))
2267 Image
/Build
/Zcomax
/initramfs
=$(call MkuImageLzma
/initramfs
,$(2),$(3) $(4))
2269 define Image
/Build
/Zcomax
2270 $(call Sysupgrade
/RKuImage
,$(1),$(2),1507328,6356992)
2271 if
[ -e
"$(call sysupname,$(1),$(2))" ]; then \
2272 $(STAGING_DIR_HOST
)/bin
/mkzcfw \
2274 -k
$(KDIR_TMP
)/vmlinux-
$(2).uImage \
2275 -r
$(BIN_DIR
)/$(IMG_PREFIX
)-root.
$(1) \
2276 -o
$(call imgname
,$(1),$(2))-factory.img
; \
2281 # $(1): template name to be defined, etc. squashfs-only, 64k, 64kraw, etc.
2282 # $(2): jffs2 blocksize.
2283 define Jffs2Template
2284 define Image
/Build
/Template
/$(1)/jffs2-
$(2)
2285 $$(call Image
/Build
/$$(1),jffs2-
$(2),$$(2),$$(3),$$(4),$$(5),$$(6),$$(7),$$(8),$$(9),$$(10))
2289 # $(1): template name to be defined.
2290 # $(2): squashfs suffix to be used.
2291 # $(3): jffs2 suffix to be used.
2292 define BuildTemplate
2293 # $(1) : name of build method.
2294 # $(2) : board name.
2295 # $(3) : kernel command line.
2296 # $(4)~$(8): extra arguments.
2297 define Image
/Build
/Template
/$(1)/initramfs
2298 $$(call Image
/Build
/$$(1)/initramfs
,initramfs
,$$(2),$$(3),$$(4),$$(5),$$(6),$$(7),$$(8),$$(9),$$(10))
2300 define Image
/Build
/Template
/$(1)/loader
2301 $$(call Image
/Build
/$$(1)/loader
,$$(2),$$(3),$$(4),$$(5),$$(6),$$(7),$$(8),$$(9),$$(10))
2303 define Image
/Build
/Template
/$(1)/buildkernel
2304 $$(call Image
/Build
/$$(1)/buildkernel
,,$$(2),$$(3),$$(4),$$(5),$$(6),$$(7),$$(8),$$(9),$$(10))
2306 define Image
/Build
/Template
/$(1)/squashfs
2307 $$(call Image
/Build
/$$(1),squashfs
$(2),$$(2),$$(3),$$(4),$$(5),$$(6),$$(7),$$(8),$$(9),$$(10))
2309 $(if
$(3),$(foreach bs
,$(3),$(eval
$(call Jffs2Template
,$(1),$(bs
)))))
2312 $(eval
$(call BuildTemplate
,squashfs-only
))
2313 $(eval
$(call BuildTemplate
,64k
,-64k
,64k
))
2314 $(eval
$(call BuildTemplate
,64kraw
,-raw
,64k
))
2315 $(eval
$(call BuildTemplate
,64kraw-nojffs
,-raw
))
2316 $(eval
$(call BuildTemplate
,128k
,,128k
))
2317 $(eval
$(call BuildTemplate
,128kraw
,-raw
,128k
))
2318 $(eval
$(call BuildTemplate
,256k
,,256k
))
2319 $(eval
$(call BuildTemplate
,all,,64k
128k
256k
))
2321 ifeq ($(SUBTARGET
),generic
)
2326 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
)
2327 IMAGE
/sysupgrade.bin
= append-kernel
$$$$(KERNEL_SIZE
) | append-rootfs | pad-rootfs | check-size
$$$$(IMAGE_SIZE
)
2330 TARGET_DEVICES
+= c-55
2332 $(eval
$(call SingleProfile
,ALFA
,64k
,ALFANX
,alfa-nx
,ALFA-NX
,ttyS0
,115200,$$(alfa_mtdlayout_8M
),1638400,6291456,vmlinux.gz.uImage
,pb9x-2.6
.31-jffs2
))
2333 $(eval
$(call SingleProfile
,ALFA
,64k
,HORNETUB
,hornet-ub
,HORNET-UB
,ttyATH0
,115200,$$(alfa_mtdlayout_8M
),1638400,6291456,kernel_image
,rootfs_image
))
2334 $(eval
$(call SingleProfile
,ALFA
,64k
,TUBE2H8M
,tube2h-8M
,TUBE2H
,ttyATH0
,115200,$$(alfa_mtdlayout_8M
),1638400,6291456,kernel.image
,rootfs.image
))
2336 $(eval
$(call SingleProfile
,AthGzip
,64k
,AP81
,ap81
,AP81
,ttyS0
,115200,$$(ap81_mtdlayout
),RKuImage
))
2337 $(eval
$(call SingleProfile
,AthGzip
,64k
,AP83
,ap83
,AP83
,ttyS0
,115200,$$(ap83_mtdlayout
),RKuImage
))
2338 $(eval
$(call SingleProfile
,AthGzip
,64k
,AP96
,ap96
,AP96
,ttyS0
,115200,$$(ap96_mtdlayout
),RKuImage
))
2339 $(eval
$(call SingleProfile
,AthGzip
,64k
,WNDAP360
,wndap360
,WNDAP360
,ttyS0
,9600,$$(wndap360_mtdlayout
),KRuImage
))
2341 $(eval
$(call SingleProfile
,AthLzma
,64k
,ALFAAP96
,alfa-ap96
,ALFA-AP96
,ttyS0
,115200,$$(alfa_ap96_mtdlayout
),RKuImage
))
2342 $(eval
$(call SingleProfile
,AthLzma
,64k
,ALL0258N
,all0258n
,ALL0258N
,ttyS0
,115200,$$(all0258n_mtdlayout
),KRuImage
,65536))
2343 $(eval
$(call SingleProfile
,AthLzma
,256k
,ALL0315N
,all0315n
,ALL0315N
,ttyS0
,115200,$$(all0315n_mtdlayout
),KRuImage
,262144))
2344 $(eval
$(call SingleProfile
,AthLzma
,64k
,AP113
,ap113
,AP113
,ttyS0
,115200,$$(ap113_mtd_layout
),RK
))
2345 $(eval
$(call SingleProfile
,AthLzma
,64k
,AP121_2M
,ap121-2M
,AP121
,ttyATH0
,115200,$$(ap121_mtdlayout_2M
),RKuImage
))
2346 $(eval
$(call SingleProfile
,AthLzma
,64k
,AP121_4M
,ap121-4M
,AP121
,ttyATH0
,115200,$$(ap121_mtdlayout_4M
),RKuImage
))
2347 $(eval
$(call SingleProfile
,AthLzma
,64k
,AP121_8M
,ap121-8M
,AP121
,ttyATH0
,115200,$$(ap121_mtdlayout_8M
),RKuImage
))
2348 $(eval
$(call SingleProfile
,AthLzma
,64k
,AP121_16M
,ap121-16M
,AP121
,ttyATH0
,115200,$$(ap121_mtdlayout_16M
),RKuImage
))
2349 $(eval
$(call SingleProfile
,AthLzma
,64k
,AP121MINI
,ap121-mini
,AP121-MINI
,ttyATH0
,115200,$$(ap121_mtdlayout_4M
),RKuImage
))
2350 $(eval
$(call SingleProfile
,AthLzma
,64k
,AP132
,ap132
,AP132
,ttyS0
,115200,$$(ap132_mtdlayout
),KRuImage
))
2351 $(eval
$(call SingleProfile
,AthLzma
,64k
,AP135
,ap135-020
,AP135-020
,ttyS0
,115200,$$(ap135_mtdlayout
),RKuImage
))
2352 $(eval
$(call SingleProfile
,AthLzma
,64k
,AP136_010
,ap136-010
,AP136-010
,ttyS0
,115200,$$(ap136_mtdlayout
),RKuImage
))
2353 $(eval
$(call SingleProfile
,AthLzma
,64k
,AP136_020
,ap136-020
,AP136-020
,ttyS0
,115200,$$(ap136_mtdlayout
),RKuImage
))
2354 $(eval
$(call SingleProfile
,AthLzma
,64k
,AP143_8M
,ap143-8M
,AP143
,ttyS0
,115200,$$(ap143_mtdlayout_8M
),RKuImage
))
2355 $(eval
$(call SingleProfile
,AthLzma
,64k
,AP143_16M
,ap143-16M
,AP143
,ttyS0
,115200,$$(ap143_mtdlayout_16M
),RKuImage
))
2356 $(eval
$(call SingleProfile
,AthLzma
,64k
,AP147_010
,ap147-010
,AP147-010
,ttyS0
,115200,$$(ap147_mtdlayout
),RKuImage
))
2357 $(eval
$(call SingleProfile
,AthLzma
,64k
,AP152_16M
,ap152-16M
,AP152
,ttyS0
,115200,$$(ap152_mtdlayout_16M
),RKuImage
))
2358 $(eval
$(call SingleProfile
,AthLzma
,64k
,BXU2000N2
,bxu2000n-2-a1
,BXU2000n-2-A1
,ttyS0
,115200,$$(bxu2000n2_mtdlayout
),RKuImage
))
2359 $(eval
$(call SingleProfile
,AthLzma
,64k
,CAP4200AG
,cap4200ag
,CAP4200AG
,ttyS0
,115200,$$(cap4200ag_mtdlayout
),KRuImage
))
2360 $(eval
$(call SingleProfile
,AthLzma
,64k
,DB120
,db120
,DB120
,ttyS0
,115200,$$(db120_mtdlayout
),RKuImage
))
2361 $(eval
$(call SingleProfile
,AthLzma
,64k
,DRAGINO2
,dragino2
,DRAGINO2
,ttyATH0
,115200,$$(dragino2_mtdlayout
),KRuImage
,65536))
2362 $(eval
$(call SingleProfile
,AthLzma
,64k
,EWDORINAP
,ew-dorin
,EW-DORIN
,ttyATH0
,115200,$$(ew-dorin_mtdlayout_4M
),KRuImage
,65536))
2363 $(eval
$(call SingleProfile
,AthLzma
,64k
,EWDORINRT
,ew-dorin-router
,EW-DORIN-ROUTER
,ttyATH0
,115200,$$(ew-dorin_mtdlayout_4M
),KRuImage
,65536))
2364 $(eval
$(call SingleProfile
,AthLzma
,64k
,EWDORIN16M
,ew-dorin-16M
,EW-DORIN
,ttyATH0
,115200,$$(ew-dorin_mtdlayout_16M
),KRuImage
,65536))
2365 $(eval
$(call SingleProfile
,AthLzma
,64k
,HORNETUBx2
,hornet-ub-x2
,HORNET-UB
,ttyATH0
,115200,$$(alfa_mtdlayout_16M
),KRuImage
,65536))
2366 $(eval
$(call SingleProfile
,AthLzma
,64k
,MR12
,mr12
,MR12
,ttyS0
,115200,$$(mr12_mtdlayout
),RKuImage
))
2367 $(eval
$(call SingleProfile
,AthLzma
,64k
,MR16
,mr16
,MR16
,ttyS0
,115200,$$(mr16_mtdlayout
),RKuImage
))
2368 $(eval
$(call SingleProfile
,AthLzma
,64k
,PB92
,pb92
,PB92
,ttyS0
,115200,$$(pb92_mtdlayout
),KRuImage
))
2369 $(eval
$(call SingleProfile
,AthLzma
,64k
,TUBE2H16M
,tube2h-16M
,TUBE2H
,ttyATH0
,115200,$$(alfa_mtdlayout_16M
),KRuImage
,65536))
2370 $(eval
$(call SingleProfile
,AthLzma
,64k
,WLR8100
,wlr8100
,WLR8100
,ttyS0
,115200,$$(wlr8100_mtdlayout
),KRuImage
))
2371 $(eval
$(call SingleProfile
,AthLzma
,64k
,WPJ344_16M
,wpj344-16M
,WPJ344
,ttyS0
,115200,$$(wpj344_mtdlayout_16M
),KRuImage
,65536))
2372 $(eval
$(call SingleProfile
,AthLzma
,64k
,DR344
,dr344
,DR344
,ttyS0
,115200,$$(dr344_mtdlayout
),RKuImage
))
2373 $(eval
$(call SingleProfile
,AthLzma
,64k
,WPJ531_16M
,wpj531-16M
,WPJ531
,ttyS0
,115200,$$(wpj531_mtdlayout_16M
),KRuImage
,65536))
2374 $(eval
$(call SingleProfile
,AthLzma
,64k
,WPJ558_16M
,wpj558-16M
,WPJ558
,ttyS0
,115200,$$(wpj558_mtdlayout_16M
),KRuImage
,65536))
2375 $(eval
$(call SingleProfile
,AthLzma
,64k
,YUN_8M
,yun-8M
,Yun
,ttyATH0
,250000,$$(yun_mtdlayout_8M
),RKuImage
))
2376 $(eval
$(call SingleProfile
,AthLzma
,64k
,YUN_16M
,yun-16M
,Yun
,ttyATH0
,250000,$$(yun_mtdlayout_16M
),RKuImage
))
2378 $(eval
$(call SingleProfile
,Belkin
,64k
,F9K1115V2
,f9k1115v2
,F9K1115V2
,ttyS0
,115200,$$(f9k1115v2_mtdlayout
),BR-6679BAC
))
2380 $(eval
$(call SingleProfile
,CameoAP91
,64kraw
,DIR600A1
,dir-600-a1
,DIR-600-A1
,ttyS0
,115200,"AP91-AR7240-RT-090223-00"))
2381 $(eval
$(call SingleProfile
,CameoAP91
,64kraw
,DIR601A1
,dir-601-a1
,DIR-600-A1
,ttyS0
,115200,"AP91-AR7240-RT-090223-02"))
2382 $(eval
$(call SingleProfile
,CameoAP91
,64kraw
,FR54RTR
,fr-54rtr
,DIR-600-A1
,ttyS0
,115200,"AP91-AR7240-RT-090223-01"))
2384 $(eval
$(call SingleProfile
,CameoAP99
,64kraw
,DIR615E1
,dir-615-e1
,DIR-615-E1
,ttyS0
,115200,"AP93-AR7240-RT-081028-00"))
2385 $(eval
$(call SingleProfile
,CameoAP99
,64kraw
,DIR615E4
,dir-615-e4
,DIR-615-E4
,ttyS0
,115200,"AP99-AR7240-RT-091105-05"))
2387 $(eval
$(call SingleProfile
,CameoAP123_4M
,64kraw
,DIR615I1
,dir-615-i1
,DIR-615-I1
,ttyS0
,115200,"00DB120AR9341-RT-1012I1-00"))
2388 $(eval
$(call SingleProfile
,CameoAP123_4M
,64kraw
,DIR615I3
,dir-615-i3
,DIR-615-I1
,ttyS0
,115200,"00DB120AR9341-RT-101214-00"))
2390 $(eval
$(call SingleProfile
,CameoAP81
,64kraw-nojffs
,A02RBW300N
,a02-rb-w300n
,TEW-632BRP
,ttyS0
,115200,"AP81-AR9130-RT-070614-03"))
2391 $(eval
$(call SingleProfile
,CameoAP81
,64kraw-nojffs
,DIR615C1
,dir-615-c1
,DIR-615-C1
,ttyS0
,115200,"AP81-AR9130-RT-070614-02"))
2392 $(eval
$(call SingleProfile
,CameoAP81
,64kraw-nojffs
,TEW632BRP
,tew-632brp
,TEW-632BRP
,ttyS0
,115200,"AP81-AR9130-RT-070614-00"))
2393 $(eval
$(call SingleProfile
,CameoAP81
,64kraw-nojffs
,TEW652BRP_FW
,tew-652brp
,TEW-632BRP
,ttyS0
,115200,"AP81-AR9130-RT-080609-05"))
2394 $(eval
$(call SingleProfile
,CameoAP81
,64kraw-nojffs
,TEW652BRP_RECOVERY
,tew-652brp-recovery
,TEW-632BRP
,ttyS0
,115200,"AP81-AR9130-RT-070614-02"))
2396 $(eval
$(call SingleProfile
,CameoAP121
,64kraw-nojffs
,TEW712BR
,tew-712br
,TEW-712BR
,ttyATH0
,115200,"HORNET-RT-TEW712BR-3",1.99,""))
2397 $(eval
$(call SingleProfile
,CameoAP121
,64kraw-nojffs
,DIR601B1
,dir-601-b1
,TEW-712BR
,ttyATH0
,115200,"HORNET-RT-DIR601B1-3",2.99.99,"" "NA"))
2398 $(eval
$(call SingleProfile
,CameoAP121_8M
,64kraw-nojffs
,DIR505A1
,dir-505-a1
,DIR-505-A1
,ttyATH0
,115200,"HORNET-PACKET-DIR505A1-3",1.99.99,""))
2400 $(eval
$(call SingleProfile
,CameoAP135
,64kraw
,DGL5500A1
,dgl-5500-a1
,DGL-5500-A1
,ttyS0
,115200,$$(dgl_5500_mtdlayout
),"00AP135AR9558-RT-130508-00"))
2401 $(eval
$(call SingleProfile
,CameoAP135
,64kraw
,TEW823DRU
,tew-823dru
,TEW-823DRU
,ttyS0
,115200,$$(tew823dru_mtdlayout
) mem
=256M
,"00AP135AR9558-RT-131129-00"))
2403 $(eval
$(call SingleProfile
,CameoDB120
,64kraw
,DHP1565A1
,dhp-1565-a1
,DHP-1565-A1
,ttyS0
,115200,"00DB120AR9344-RT-101214-00"))
2404 $(eval
$(call SingleProfile
,CameoDB120
,64kraw
,DIR825C1
,dir-825-c1
,DIR-825-C1
,ttyS0
,115200,"00DB120AR9344-RT-101214-00"))
2405 $(eval
$(call SingleProfile
,CameoDB120
,64kraw
,DIR835A1
,dir-835-a1
,DIR-835-A1
,ttyS0
,115200,"00DB120AR9344-RT-101214-00"))
2407 $(eval
$(call SingleProfile
,CameoDB120_8M
,64kraw
,TEW732BR
,tew-732br
,TEW-732BR
,ttyS0
,115200,"00DB120AR9341-RT-120906-NA"))
2409 $(eval
$(call SingleProfile
,CyberTANGZIP
,64k
,WRT160NL
,wrt160nl
,WRT160NL
,ttyS0
,115200,,1.00.01))
2411 $(eval
$(call SingleProfile
,CyberTANLZMA
,64k
,MYNETREXT
,mynet-rext
,MYNET-REXT
,ttyS0
,115200,$$(mynet_rext_mtdlayout
) root
=31:2,1.00.01))
2413 $(eval
$(call SingleProfile
,CameoAP94
,64kraw
,DIR825B1
,dir-825-b1
,DIR-825-B1
,ttyS0
,115200,$$(cameo_ap94_mtdlayout
),$$(cameo_ap94_mtdlayout_fat
),01AP94-AR7161-RT-080619-00
,00AP94-AR7161-RT-080619-00
))
2414 $(eval
$(call SingleProfile
,CameoAP94
,64kraw
,TEW673GRU
,tew-673gru
,TEW-673GRU
,ttyS0
,115200,$$(cameo_ap94_mtdlayout
),$$(cameo_ap94_mtdlayout_fat
),01AP94-AR7161-RT-080619-01
,00AP94-AR7161-RT-080619-01
))
2415 $(eval
$(call SingleProfile
,CameoAP94
,64kraw
,DLRTDEV01
,dlrtdev01
,DIR-825-B1
,ttyS0
,115200,$$(dlrtdev_mtdlayout
),$$(dlrtdev_mtdlayout_fat
),01AP94-AR7161-RT-080619-00
,00AP94-AR7161-RT-080619-00
))
2417 $(eval
$(call SingleProfile
,dLANLzma
,64k
,dLAN_Hotspot
,dlan-hotspot
,dLAN-Hotspot
,ttyATH0
,115200,$$(dlan_hotspot_mtdlayout
) mem
=64M
,KRuImage
,65536))
2418 $(eval
$(call SingleProfile
,dLANLzma
,64k
,dLAN_pro_500_wp
,dlan-pro-500-wp
,dLAN-pro-500-wp
,ttyS0
,115200,$$(dlan_pro_500_wp_mtdlayout
) mem
=128M
,KRuImage
,65536))
2419 $(eval
$(call SingleProfile
,dLANLzma
,64k
,dLAN_pro_1200_ac
,dlan-pro-1200-ac
,dLAN-pro-1200-ac
,ttyS0
,115200,$$(dlan_pro_1200_ac_mtdlayout
) mem
=128M
,KRuImage
,65536))
2421 $(eval
$(call SingleProfile
,EnGenius
,64k
,ESR900
,esr900
,ESR900
,ttyS0
,115200,$$(esr900_mtdlayout
),KRuImage
,,0x4e))
2422 $(eval
$(call SingleProfile
,EnGenius
,64k
,ESR1750
,esr1750
,ESR1750
,ttyS0
,115200,$$(esr1750_mtdlayout
),KRuImage
,,0x61))
2423 $(eval
$(call SingleProfile
,EnGenius
,64k
,EPG5000
,epg5000
,EPG5000
,ttyS0
,115200,$$(epg5000_mtdlayout
),KRuImage
,,0x71))
2425 $(eval
$(call SingleProfile
,HiWiFi
,64k
,HIWIFI_HC6361
,hiwifi-hc6361
,HiWiFi-HC6361
,ttyATH0
,115200,$$(hiwifi_hc6361_mtdlayout
),KRuImage
))
2427 $(eval
$(call SingleProfile
,MyLoader
,64k
,WP543_2M
,wp543
,,ttyS0
,115200,0x200000,2M
))
2428 $(eval
$(call SingleProfile
,MyLoader
,64k
,WP543_4M
,wp543
,,ttyS0
,115200,0x400000,4M
))
2429 $(eval
$(call SingleProfile
,MyLoader
,64k
,WP543_8M
,wp543
,,ttyS0
,115200,0x800000,8M
))
2430 $(eval
$(call SingleProfile
,MyLoader
,64k
,WP543_16M
,wp543
,,ttyS0
,115200,0x1000000,16M
))
2431 $(eval
$(call SingleProfile
,MyLoader
,64k
,WPE72_4M
,wpe72
,,ttyS0
,115200,0x400000,4M
))
2432 $(eval
$(call SingleProfile
,MyLoader
,64k
,WPE72_8M
,wpe72
,,ttyS0
,115200,0x800000,8M
))
2433 $(eval
$(call SingleProfile
,MyLoader
,64k
,WPE72_16M
,wpe72
,,ttyS0
,115200,0x1000000,16M
))
2435 $(eval
$(call SingleProfile
,Netgear
,64kraw
,WNR2000V3
,wnr2000v3
,WNR2000V3
,ttyS0
,115200,$$(wnr2000v3_mtdlayout
),0x32303033,WNR2000V3
,"" NA
,-H
29763551+04+32))
2436 $(eval
$(call SingleProfile
,NetgearLzma
,64kraw
,WNR2000V4
,wnr2000v4
,WNR2000V4
,ttyS0
,115200,$$(wnr2000v4_mtdlayout
),0x32303034,WNR2000V4
,"" NA
,))
2437 $(eval
$(call SingleProfile
,Netgear
,64kraw
,WNR2200
,wnr2200
,WNR2200
,ttyS0
,115200,$$(wnr2200_mtdlayout
),0x32323030,wnr2200
,"" NA
,))
2438 $(eval
$(call SingleProfile
,Netgear
,64kraw
,REALWNR612V2
,wnr612v2
,WNR612V2
,ttyS0
,115200,$$(wnr2000v3_mtdlayout
),0x32303631,WNR612V2
,"",))
2439 $(eval
$(call SingleProfile
,Netgear
,64kraw
,N150R
,n150r
,WNR612V2
,ttyS0
,115200,$$(wnr2000v3_mtdlayout
),0x32303631,N150R
,"",))
2440 $(eval
$(call SingleProfile
,Netgear
,64kraw
,REALWNR1000V2
,wnr1000v2
,WNR1000V2
,ttyS0
,115200,$$(wnr2000v3_mtdlayout
),0x31303031,WNR1000V2
,"",))
2441 $(eval
$(call SingleProfile
,Netgear
,64kraw
,WNR1000V2_VC
,wnr1000v2-vc
,WNR1000V2
,ttyS0
,115200,$$(wnr2000v3_mtdlayout
),0x31303030,WNR1000V2-VC
,"",))
2442 $(eval
$(call SingleProfile
,Netgear
,64kraw
,WPN824N
,wpn824n
,WPN824N
,ttyS0
,115200,$$(wnr2000v3_mtdlayout
),0x31313030,WPN824N
,"" NA
,))
2444 $(eval
$(call SingleProfile
,OpenMesh
,squashfs-only
,OM2P
,om2p
,,,,OM2P
))
2445 $(eval
$(call SingleProfile
,OpenMesh
,squashfs-only
,OM5P
,om5p
,,,,OM5P
))
2446 $(eval
$(call SingleProfile
,OpenMesh
,squashfs-only
,MR600
,mr600
,,,,MR600
))
2447 $(eval
$(call SingleProfile
,OpenMesh
,squashfs-only
,MR900
,mr900
,,,,MR900
))
2448 $(eval
$(call SingleProfile
,OpenMesh
,squashfs-only
,MR1750
,mr1750
,,,,MR1750
))
2450 $(eval
$(call SingleProfile
,PB4X
,128k
,ALL0305
,all0305
,ALL0305
,ttyS0
,115200))
2451 $(eval
$(call SingleProfile
,PB4X
,128k
,EAP7660D
,eap7660d
,EAP7660D
,ttyS0
,115200))
2452 $(eval
$(call SingleProfile
,PB4X
,64k
,JA76PF
,ja76pf
,JA76PF
,ttyS0
,115200))
2453 $(eval
$(call SingleProfile
,PB4X
,64k
,JA76PF2
,ja76pf2
,JA76PF2
,ttyS0
,115200))
2454 $(eval
$(call SingleProfile
,PB4X
,64k
,JWAP003
,jwap003
,JWAP003
,ttyS0
,115200))
2455 $(eval
$(call SingleProfile
,PB4X
,64k
,PB42
,pb42
,PB42
,ttyS0
,115200))
2456 $(eval
$(call SingleProfile
,PB4X
,64k
,PB44
,pb44
,PB44
,ttyS0
,115200))
2458 $(eval
$(call SingleProfile
,Planex
,64kraw
,MZKW04NU
,mzk-w04nu
,MZK-W04NU
,ttyS0
,115200))
2459 $(eval
$(call SingleProfile
,Planex
,64kraw
,MZKW300NH
,mzk-w300nh
,MZK-W300NH
,ttyS0
,115200))
2461 $(eval
$(call SingleProfile
,Seama
,64k
,MYNETN600
,mynet-n600
,MYNET-N600
,ttyS0
,115200,$$(mynet_n600_mtdlayout
),wrgnd16_wd_db600
,65536,16187392))
2462 $(eval
$(call SingleProfile
,Seama
,64k
,MYNETN750
,mynet-n750
,MYNET-N750
,ttyS0
,115200,$$(mynet_n600_mtdlayout
),wrgnd13_wd_av
,65536,16187392))
2464 $(eval
$(call SingleProfile
,Seama
,64k
,QIHOO360
,qihoo-c301
,QIHOO-C301
,ttyS0
,115200,$$(qihoo_c301_mtdlayout
),wrgac26_qihoo360_360rg
,65536,16121856))
2466 $(eval
$(call SingleProfile
,Senao
,squashfs-only
,EAP300V2
,eap300v2
,EAP300V2
,ttyS0
,115200,$$(eap300v2_mtdlayout
)))
2468 $(eval
$(call SingleProfile
,TPLINK-SAFELOADER
,64kraw
,CPE510
,cpe210-220-510-520
,CPE510
,ttyS0
,115200,$$(cpe510_mtdlayout
),CPE510
))
2470 $(eval
$(call SingleProfile
,WHRHPG300N
,64kraw
,WHRG301N
,whr-g301n
,WHR-G301N
,ttyS0
,115200,$$(whrhpg300n_mtdlayout
),WHR-G301N
))
2471 $(eval
$(call SingleProfile
,WHRHPG300N
,64kraw
,WHRHPG300N
,whr-hp-g300n
,WHR-HP-G300N
,ttyS0
,115200,$$(whrhpg300n_mtdlayout
),WHR-HP-G300N
))
2472 $(eval
$(call SingleProfile
,WHRHPG300N
,64kraw
,WHRHPGN
,whr-hp-gn
,WHR-HP-GN
,ttyS0
,115200,$$(whrhpg300n_mtdlayout
),WHR-HP-GN
))
2473 $(eval
$(call SingleProfile
,WHRHPG300N
,64kraw
,WLAEAG300N
,wlae-ag300n
,WLAE-AG300N
,ttyS0
,115200,$$(whrhpg300n_mtdlayout
),WLAE-AG300N
))
2475 $(eval
$(call SingleProfile
,WRT400N
,64k
,WRT400N
,wrt400n
,WRT400N
,ttyS0
,115200))
2477 $(eval
$(call SingleProfile
,WZRHP128K
,128kraw
,WZRHPG300NH
,wzr-hp-g300nh
,WZR-HP-G300NH
,ttyS0
,115200,WZR-HP-G300NH
))
2478 $(eval
$(call SingleProfile
,WZRHP64K
,64kraw
,WZRHPG300NH2
,wzr-hp-g300nh2
,WZR-HP-G300NH2
,ttyS0
,115200,WZR-HP-G300NH2
))
2479 $(eval
$(call SingleProfile
,WZRHP64K
,64kraw
,WZRHPAG300H
,wzr-hp-ag300h
,WZR-HP-AG300H
,ttyS0
,115200,WZR-HP-AG300H
))
2480 $(eval
$(call SingleProfile
,WZRHP64K
,64kraw
,WZRHPG450H
,wzr-hp-g450h
,WZR-HP-G450H
,ttyS0
,115200,WZR-HP-AG450H
))
2481 $(eval
$(call SingleProfile
,WZRHP64K
,64kraw
,WZR600DHP
,wzr-600dhp
,WZR-HP-AG300H
,ttyS0
,115200,WZR-600DHP
))
2482 $(eval
$(call SingleProfile
,WZRHP64K
,64kraw
,WZR450HP2
,wzr-450hp2
,WZR-450HP2
,ttyS0
,115200,WZR-450HP2
))
2484 $(eval
$(call SingleProfile
,Zcomax
,64k
,ZCN1523H28
,zcn-1523h-2-8
,ZCN-1523H-2
,ttyS0
,115200,$$(zcn1523h_mtdlayout
)))
2485 $(eval
$(call SingleProfile
,Zcomax
,64k
,ZCN1523H516
,zcn-1523h-5-16
,ZCN-1523H-5
,ttyS0
,115200,$$(zcn1523h_mtdlayout
)))
2487 $(eval
$(call SingleProfile
,ZyXEL
,64k
,NBG_460N_550N_550NH
,nbg460n_550n_550nh
,NBG460N
,ttyS0
,115200,NBG-460N
))
2489 $(eval
$(call MultiProfile
,AP121
,AP121_2M AP121_4M AP121_8M AP121_16M
))
2490 $(eval
$(call MultiProfile
,AP136
,AP136_010 AP136_020
))
2491 $(eval
$(call MultiProfile
,AP143
,AP143_8M AP143_16M
))
2492 $(eval
$(call MultiProfile
,AP147
,AP147_010
))
2493 $(eval
$(call MultiProfile
,AP152
,AP152_16M
))
2494 $(eval
$(call MultiProfile
,DIR615IX
,DIR615I1 DIR615I3
))
2495 $(eval
$(call MultiProfile
,EWDORIN
, EWDORINAP EWDORINRT EWDORIN16M
))
2496 $(eval
$(call MultiProfile
,OPENMESH
,OM2P OM5P MR600 MR900 MR1750
))
2497 $(eval
$(call MultiProfile
,TEW652BRP
,TEW652BRP_FW TEW652BRP_RECOVERY
))
2498 $(eval
$(call MultiProfile
,TUBE2H
,TUBE2H8M TUBE2H16M
))
2499 $(eval
$(call MultiProfile
,WNR612V2
,REALWNR612V2 N150R
))
2500 $(eval
$(call MultiProfile
,WNR1000V2
,REALWNR1000V2 WNR1000V2_VC
))
2501 $(eval
$(call MultiProfile
,WP543
,WP543_2M WP543_4M WP543_8M WP543_16M
))
2502 $(eval
$(call MultiProfile
,WPE72
,WPE72_4M WPE72_8M WPE72_16M
))
2503 $(eval
$(call MultiProfile
,WPJ344
,WPJ344_16M
))
2504 $(eval
$(call MultiProfile
,WPJ531
,WPJ531_16M
))
2505 $(eval
$(call MultiProfile
,WPJ558
,WPJ558_16M
))
2506 $(eval
$(call MultiProfile
,Yun
,YUN_16M YUN_8M
))
2508 $(eval
$(call MultiProfile
,Minimal
,$(SINGLE_PROFILES
)))
2509 $(eval
$(call MultiProfile
,Madwifi
,EAP7660D WP543
))
2510 endif # ifeq ($(SUBTARGET),generic)
2512 ifeq ($(SUBTARGET
),nand
)
2517 CONSOLE
= ttyS0
,115200
2518 MTDPARTS
= ar934x-nfc
:512k
(nandloader
)ro
,8M
(kernel
),8M
(recovery
),113664k
(ubi
),128k@
130944k
(odm-caldata
)ro
2519 IMAGES
:= sysupgrade.
tar
2520 KERNEL
:= kernel-bin | patch-cmdline | MerakiNAND
2521 KERNEL_INITRAMFS
:= kernel-bin | patch-cmdline | MerakiNAND
2522 IMAGE
/sysupgrade.
tar := sysupgrade-nand
2524 TARGET_DEVICES
+= mr18
2526 $(eval
$(call SingleProfile
,NetgearNAND
,64k
,WNDR3700V4
,wndr3700v4
,WNDR3700_V4
,ttyS0
,115200,$$(wndr4300_mtdlayout
),0x33373033,WNDR3700v4
,"",-H
29763948+128+128,wndr4300
))
2527 $(eval
$(call SingleProfile
,NetgearNAND
,64k
,WNDR4300V1
,wndr4300
,WNDR4300
,ttyS0
,115200,$$(wndr4300_mtdlayout
),0x33373033,WNDR4300
,"",-H
29763948+0+128+128+2x2
+3x3
,wndr4300
))
2528 $(eval
$(call SingleProfile
,NetgearNAND
,64k
,R6100
,r6100
,R6100
,ttyS0
,115200,$$(r6100_mtdlayout
),0x36303030,R6100
,"",-H
29764434+0+128+128+2x2
+2x2
,wndr4300
))
2530 $(eval
$(call SingleProfile
,ZyXELNAND
,128k
,NBG6716
,nbg6716
,NBG6716
,ttyS0
,115200,NBG6716
,$$(zyx_nbg6716_mtdlayout
),mem
=256M
))
2532 $(eval
$(call MultiProfile
,WNDR4300
,WNDR3700V4 WNDR4300V1
))
2533 endif # ifeq ($(SUBTARGET),nand)
2536 $(eval
$(call MultiProfile
,Default
,$(SINGLE_PROFILES
)))
2538 define Image
/Build
/squashfs
2539 cp
$(KDIR
)/root.squashfs
$(KDIR
)/root.squashfs-raw
2540 cp
$(KDIR
)/root.squashfs
$(KDIR
)/root.squashfs-64k
2541 $(STAGING_DIR_HOST
)/bin
/padjffs2
$(KDIR
)/root.squashfs-64k
64
2542 cp
$(KDIR
)/root.squashfs-64k
$(BIN_DIR
)/$(IMG_PREFIX
)-root.squashfs-64k
2543 $(call prepare_generic_squashfs
,$(KDIR
)/root.squashfs
)
2544 dd if
=$(KDIR
)/root.
$(1) of
=$(BIN_DIR
)/$(IMG_PREFIX
)-root.
$(1) bs
=128k conv
=sync
2547 define Image
/Build
/jffs2
2548 dd if
=$(KDIR
)/root.
$(1) of
=$(BIN_DIR
)/$(IMG_PREFIX
)-root.
$(1) bs
=128k conv
=sync
2551 define Image
/Build
/Initramfs
2552 $(call Image
/Build
/Profile
/$(IMAGE_PROFILE
),initramfs
)
2555 define Image
/Prepare
2556 gzip
-9n
-c
$(KDIR
)/vmlinux
> $(KDIR
)/vmlinux.bin.gz
2557 $(call CompressLzma
,$(KDIR
)/vmlinux
,$(KDIR
)/vmlinux.bin.lzma
)
2558 ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS
),)
2559 gzip
-9n
-c
$(KDIR
)/vmlinux-initramfs
> $(KDIR
)/vmlinux-initramfs.bin.gz
2560 $(call CompressLzma
,$(KDIR
)/vmlinux-initramfs
,$(KDIR
)/vmlinux-initramfs.bin.lzma
)
2561 $(call Image
/BuildLoader
,generic
,elf
,,,-initramfs
)
2563 $(call Image
/BuildLoader
,generic
,elf
)
2564 $(call Image
/Build
/Profile
/$(if
$(CONFIG_IB
),Default
,$(IMAGE_PROFILE
)),loader
)
2567 # $(1): filesystem type.
2569 $(call Image
/Build
/$(call rootfs_type
,$(1)),$(1))
2570 $(call Image
/Build
/Profile
/$(IMAGE_PROFILE
),$(1))
2573 $(eval
$(call BuildImage
))