2 # Copyright (C) 2006-2015 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
7 include $(TOPDIR
)/rules.mk
8 include $(INCLUDE_DIR
)/image.mk
10 LOADADDR
= 0x80010000 # RAM start + 64K
11 KERNEL_ENTRY
= $(LOADADDR
) # Newer kernels add a jmp to the kernel_entry at the start of the binary
12 LOADER_ENTRY
= 0x80a00000 # RAM start + 10M, for relocate
13 RAMSIZE
= 0x02000000 # 32MB
14 LZMA_TEXT_START
= 0x81800000 # 32MB - 8MB
18 LOADADDR
=$(LOADADDR
) \
19 KERNEL_ENTRY
=$(KERNEL_ENTRY
) \
21 LZMA_TEXT_START
=$(LZMA_TEXT_START
) \
25 KERNEL_ADDR
=$(KERNEL_ENTRY
) \
26 CROSS_COMPILE
=$(TARGET_CROSS
) \
27 LZMA_TEXT_START
=$(LOADER_ENTRY
)
30 rm -rf
$(KDIR
)/relocate
31 $(CP
) ..
/..
/generic
/image
/relocate
$(KDIR
)
32 $(MAKE
) -C
$(KDIR
)/relocate
$(RELOCATE_MAKEOPTS
)
35 ### Kernel scripts ###
36 define Build
/append-dtb
37 $(call Image
/BuildDTB
,..
/dts
/$(DEVICE_DTS
).dts
,$@.dtb
)
41 define Build
/hcs-initramfs
42 $(STAGING_DIR_HOST
)/bin
/hcsmakeimage
--magic_bytes
=$(HCS_MAGIC_BYTES
) \
43 --rev_maj
=$(HCS_REV_MAJ
) --rev_min
=$(HCS_REV_MIN
) --input_file
=$@ \
44 --output_file
=$@.hcs
--ldaddress
=$(LOADADDR
)
48 define Build
/loader-lzma
50 $(MAKE
) -C lzma-loader \
52 PKG_BUILD_DIR
="$@.src" \
53 TARGET_DIR
="$(dir $@)" \
55 LOADER_NAME
="$(notdir $@)" \
62 # CFE is a LZMA nazi! It took me hours to find out the parameters!
63 # Also I think lzma has a bug cause it generates different output depending on
64 # if you use stdin / stdout or not. Use files instead of stdio here, cause
65 # otherwise CFE will complain and not boot the image.
66 $(STAGING_DIR_HOST
)/bin
/lzma e
$@
-d22
-fb64
-a1
$@.lzma
71 # Strip out the length, CFE doesn't like this
72 dd if
=$@ of
=$@.lzma.cfe bs
=5 count
=1
73 dd if
=$@ of
=$@.lzma.cfe ibs
=13 obs
=5 skip
=1 seek
=1 conv
=notrunc
77 define Build
/relocate-kernel
78 # CFE only allows ~4 MiB for the uncompressed kernels, but uncompressed
79 # kernel might get larger than that, so let CFE unpack and load at a
80 # higher address and make the kernel relocate itself to the expected
83 dd if
=$(KDIR
)/relocate
/loader.bin bs
=32 conv
=sync
&& \
84 perl
-e
'@s = stat("$@"); print pack("N", @s[7])' && \
91 define rootfspad
/jffs2-128k
94 define rootfspad
/jffs2-64k
97 define rootfspad
/squashfs
100 define Image
/LimitName16
101 $(shell expr substr
"$(1)" 1 16)
104 define Image
/FileSystemStrip
105 $(subst root.
,,$(notdir $(1)))
109 $(STAGING_DIR_HOST
)/bin
/imagetag
-i
$(word 1,$^
) -f
$(word 2,$^
) \
110 --output
$@
--boardid
$(CFE_BOARD_ID
) --chipid
$(CFE_CHIP_ID
) \
111 --entry
$(LOADER_ENTRY
) --load-addr
$(LOADER_ENTRY
) \
112 --info1
"$(call Image/LimitName16,$(DEVICE_NAME))" \
113 --info2
"$(call Image/FileSystemStrip,$(word 2,$^))" \
114 $(call rootfspad
/$(call Image
/FileSystemStrip
,$(word 2,$^
))) \
118 define Build
/cfe-old-bin
119 $(TOPDIR
)/scripts
/brcmImage.pl
-t
-p \
120 -o
$@
-b
$(CFE_BOARD_ID
) -c
$(CFE_CHIP_ID
) \
121 -e
$(LOADER_ENTRY
) -a
$(LOADER_ENTRY
) \
122 -k
$(word 1,$^
) -r
$(word 2,$^
) \
126 define Build
/cfe-spw303v-bin
127 $(STAGING_DIR_HOST
)/bin
/imagetag
-i
$(word 1,$^
) -f
$(word 2,$^
) \
128 --output
$@
--boardid
$(CFE_BOARD_ID
) --chipid
$(CFE_CHIP_ID
) \
129 --entry
$(LOADER_ENTRY
) --load-addr
$(LOADER_ENTRY
) \
130 $(call rootfspad
/$(call Image
/FileSystemStrip
,$(word 2,$^
))) \
134 define Build
/spw303v-bin
135 $(STAGING_DIR_HOST
)/bin
/spw303v
-i
$@
-o
$@.spw303v
139 define Build
/xor-image
140 $(STAGING_DIR_HOST
)/bin
/xorimage
-i
$@
-o
$@.xor
144 define Build
/zyxel-bin
145 $(STAGING_DIR_HOST
)/bin
/zyxbcm
-i
$@
-o
$@.zyxel
149 define Build
/redboot-bin
150 # Prepare kernel and rootfs
151 dd if
=$(word 1,$^
) of
=$(BIN_DIR
)/$(REDBOOT_PREFIX
)-vmlinux.gz bs
=65536 conv
=sync
152 dd if
=$(word 2,$^
) of
=$(BIN_DIR
)/$(REDBOOT_PREFIX
)-$(notdir $(word 2,$^
)) bs
=64k conv
=sync
153 echo
-ne
\\xDE
\\xAD
\\xC0
\\xDE
>> $(BIN_DIR
)/$(REDBOOT_PREFIX
)-$(notdir $(word 2,$^
))
154 # Generate the scripted image
155 $(TOPDIR
)/scripts
/redboot-script.pl \
156 -k
$(BIN_DIR
)/$(REDBOOT_PREFIX
)-vmlinux.gz \
157 -r
$(BIN_DIR
)/$(REDBOOT_PREFIX
)-$(notdir $(word 2,$^
)) \
158 -a
$(strip $(LOADADDR
)) -f
0xbe430000 -l
0x7c0000 \
159 -s
0x1000 -t
20 -o
$@.redbootscript
160 dd if
="$@.redbootscript" of
="$@.redbootscript.padded" bs
=4096 conv
=sync
162 "$@.redbootscript.padded" \
163 "$(BIN_DIR)/$(REDBOOT_PREFIX)-vmlinux.gz" \
164 "$(BIN_DIR)/$(REDBOOT_PREFIX)-$(notdir $(word 2,$^))" \
168 # Shared device definition: applies to every defined device
169 define Device
/Default
170 PROFILES
= Default
$$(DEVICE_PROFILE
)
171 KERNEL_INITRAMFS_IMAGE
= $$(KERNEL_INITRAMFS_PREFIX
).elf
175 DEVICE_VARS
+= DEVICE_PROFILE DEVICE_DTS
177 # BCM33xx HCS devices: only generates ramdisks (unsupported bin images)
178 define Device
/bcm33xxHcsRamdisk
179 KERNEL_INITRAMFS
:= kernel-bin | append-dtb | lzma | loader-lzma bin | hcs-initramfs
185 DEVICE_VARS
+= HCS_MAGIC_BYTES HCS_REV_MIN HCS_REV_MAJ
187 # Shared BCM63xx CFE device definitios
188 define Device
/bcm63xxCfeCommon
189 FILESYSTEMS
:= squashfs jffs2-64k jffs2-128k
190 KERNEL
:= kernel-bin | append-dtb | relocate-kernel | lzma | lzma-cfe
191 KERNEL_INITRAMFS
:= kernel-bin | append-dtb | lzma | loader-lzma elf
194 # BCM63xx CFE devices: only generates ramdisks (unsupported bin images)
195 define Device
/bcm63xxCfeRamdisk
196 $(Device
/bcm63xxCfeCommon
)
200 # BCM63xx CFE devices: both ramdisks and parallel/spi bin images
201 # New versions of CFE bootloader compatible with imagetag
202 define Device
/bcm63xxCfe
203 $(Device
/bcm63xxCfeCommon
)
205 IMAGE
/cfe.bin
:= cfe-bin
210 DEVICE_VARS
+= CFE_BOARD_ID CFE_CHIP_ID CFE_EXTRAS
212 # BCM63xx CFE BC221 devices: both ramdisks and parallel/spi bin images
213 # Generates a generic image and a layout version 5 image
214 define Device
/bcm63xxCfeBc221
215 $(Device
/bcm63xxCfeCommon
)
216 IMAGES
:= cfe.bin cfe-bc221.bin
217 IMAGE
/cfe.bin
:= cfe-bin
218 IMAGE
/cfe-bc221.bin
:= cfe-bin
--layoutver
5
224 # BCM63xx CFE MultiFlash devices: both ramdisks and parallel/spi bin images
225 # Generates generic images padded for 4M/8M/16M flashes
226 define Device
/bcm63xxCfeMultiFlash
227 $(Device
/bcm63xxCfeCommon
)
228 IMAGES
:= cfe-4M.bin cfe-8M.bin cfe-16M.bin
229 IMAGE
/cfe-4M.bin
:= cfe-bin
--pad
2
230 IMAGE
/cfe-8M.bin
:= cfe-bin
--pad
4
231 IMAGE
/cfe-16M.bin
:= cfe-bin
--pad
8
237 # BCM63xx CFE NETGEAR devices: both ramdisks and parallel/spi bin images
238 # factory.chk: netgear images for bootloader/original firmware upgrades
239 # sysupgrade.bin: openwrt images for sysupgrades
240 define Device
/bcm63xxCfeNetgear
241 $(Device
/bcm63xxCfeCommon
)
242 IMAGES
:= factory.chk sysupgrade.bin
243 IMAGE
/factory.chk
:= cfe-bin | netgear-chk
244 IMAGE
/sysupgrade.bin
:= cfe-bin
251 DEVICE_VARS
+= NETGEAR_BOARD_ID NETGEAR_REGION
253 # BCM63xx Old CFE devices: both ramdisks and parallel/spi bin images
254 # Old versions of CFE bootloader not compatible with imagetag
255 define Device
/bcm63xxCfeOld
256 $(Device
/bcm63xxCfeCommon
)
257 IMAGES
:= cfe-old.bin
258 IMAGE
/cfe-old.bin
:= cfe-old-bin
264 # BCM63xx CFE SPW303V devices: both ramdisks and parallel/spi bin images
265 # factory.bin: SPW303V images for bootloader/original firmware upgrades
266 # sysupgrade.bin: openwrt images for sysupgrades
267 define Device
/bcm63xxCfeSpw303v
268 $(Device
/bcm63xxCfeCommon
)
269 IMAGES
:= factory.bin sysupgrade.bin
270 IMAGE
/factory.bin
:= cfe-spw303v-bin | spw303v-bin | xor-image
271 IMAGE
/sysupgrade.bin
:= cfe-spw303v-bin | spw303v-bin
277 # BCM63xx CFE ZyXEL devices: both ramdisks and parallel/spi bin images
278 # factory.bin: ZyXEL specific CFE images (sysupgrade compatible)
279 define Device
/bcm63xxCfeZyxel
280 $(Device
/bcm63xxCfeCommon
)
281 IMAGES
:= factory.bin
282 IMAGE
/factory.bin
:= cfe-bin | zyxel-bin
288 # BCM63xx RedBoot devices: both ramdisks and parallel/spi bin images
289 # Generates images compatible with RedBoot bootloader
290 define Device
/bcm63xxRedBoot
291 FILESYSTEMS
:= squashfs
292 KERNEL
:= kernel-bin | append-dtb | gzip
293 IMAGES
:= redboot.bin
294 IMAGE
/redboot.bin
:= redboot-bin
295 REDBOOT_PREFIX
:= $$(IMAGE_PREFIX
)
297 DEVICE_VARS
+= REDBOOT_PREFIX
299 ### Device macros ###
303 # $(4) = hcs magic bytes
305 # $(6) = hcs rev major
306 define bcm33xxHcsRamdisk
308 $$(Device
/bcm33xxHcsRamdisk
)
309 DEVICE_PROFILE
:= $(1)
311 HCS_MAGIC_BYTES
:= $(4)
315 TARGET_DEVICES
+= $(2)
321 define bcm63xxCfeRamdisk
323 $$(Device
/bcm63xxCfeRamdisk
)
324 DEVICE_PROFILE
:= $(1)
327 TARGET_DEVICES
+= $(2)
333 # $(4) = cfe board name
335 # $(6) = cfe additional options
338 $$(Device
/bcm63xxCfe
)
339 DEVICE_PROFILE
:= $(1)
345 TARGET_DEVICES
+= $(2)
351 # $(4) = cfe board name
353 # $(6) = cfe additional options
354 define bcm63xxCfeMultiFlash
356 $$(Device
/bcm63xxCfeMultiFlash
)
357 DEVICE_PROFILE
:= $(1)
363 TARGET_DEVICES
+= $(2)
369 # $(4) = cfe board name
371 # $(6) = cfe additional options
372 define bcm63xxCfeBc221
374 $$(Device
/bcm63xxCfeBc221
)
375 DEVICE_PROFILE
:= $(1)
381 TARGET_DEVICES
+= $(2)
387 # $(4) = cfe board name
389 # $(6) = cfe additional options
391 # $(8) = netgear region
392 define bcm63xxCfeNetgear
394 $$(Device
/bcm63xxCfeNetgear
)
395 DEVICE_PROFILE
:= $(1)
400 NETGEAR_BOARD_ID
:= $(7)
401 NETGEAR_REGION
:= $(8)
403 TARGET_DEVICES
+= $(2)
409 # $(4) = cfe board name
411 # $(6) = cfe additional options
414 $$(Device
/bcm63xxCfeOld
)
415 DEVICE_PROFILE
:= $(1)
421 TARGET_DEVICES
+= $(2)
427 # $(4) = cfe board name
429 # $(6) = cfe additional options
430 define bcm63xxCfeSpw303v
432 $$(Device
/bcm63xxCfeSpw303v
)
433 DEVICE_PROFILE
:= $(1)
439 TARGET_DEVICES
+= $(2)
445 # $(4) = cfe board name
447 # $(6) = cfe additional options
448 define bcm63xxCfeZyxel
450 $$(Device
/bcm63xxCfeZyxel
)
451 DEVICE_PROFILE
:= $(1)
457 TARGET_DEVICES
+= $(2)
463 define bcm63xxRedBoot
465 $$(Device
/bcm63xxRedBoot
)
466 DEVICE_PROFILE
:= $(1)
469 TARGET_DEVICES
+= $(2)
474 $(eval
$(call bcm63xxCfeMultiFlash
,963281TAN
,963281TAN-generic
,bcm963281TAN
,963281TAN
,6328))
476 $(eval
$(call bcm63xxCfeMultiFlash
,96328avng
,96328avng-generic
,bcm96328avng
,96328avng
,6328))
478 $(eval
$(call bcm63xxCfe
,96338GW
,96338GW-generic
,bcm96338GW
,6338GW
,6338))
480 $(eval
$(call bcm63xxCfe
,96338W
,96338W-generic
,bcm96338W
,6338W
,6338))
482 $(eval
$(call bcm63xxCfeBc221
,96345GW2
,96345GW2-generic
,bcm96345GW2
,96345GW2
,6345))
484 $(eval
$(call bcm63xxCfeBc221
,96348GW
,96348GW-generic
,bcm96348GW
,96348GW
,6348))
486 $(eval
$(call bcm63xxCfe
,96348GW_10
,96348GW-10-generic
,bcm96348GW-10
,96348GW-10
,6348))
488 $(eval
$(call bcm63xxCfe
,96348GW_11
,96348GW-11-generic
,bcm96348GW-11
,96348GW-11
,6348))
490 $(eval
$(call bcm63xxCfe
,96348R
,96348R-generic
,bcm96348R
,96348R
,6348))
492 $(eval
$(call bcm63xxCfe
,96358VW
,96358VW-generic
,bcm96358VW
,96358VW
,6358))
494 $(eval
$(call bcm63xxCfe
,96358VW2
,96358VW2-generic
,bcm96358VW2
,96358VW2
,6358))
496 $(eval
$(call bcm63xxCfe
,96368MVNgr
,96368MVNgr-generic
,bcm96368MVNgr
,96368MVNgr
,6368))
498 $(eval
$(call bcm63xxCfe
,96368MVWG
,96368MVWG-generic
,bcm96368MVWG
,96368MVWG
,6368))
501 $(eval
$(call bcm63xxCfe
,A4001N
,A4001N
,a4001n
,96328dg2x2
,6328,--pad
4))
503 $(eval
$(call bcm63xxCfe
,A4001N1
,A4001N1
,a4001n1
,963281T_TEF
,6328,--pad
8))
505 $(eval
$(call bcm63xxCfe
,RG100A
,RG100A
,rg100a
,96358VW2
,6358,--block-size
0x20000 --image-offset
0x20000))
507 $(eval
$(call bcm63xxCfe
,AR1004G
,AR1004G
,ar1004g
,96348GW-10
,6348))
509 $(eval
$(call bcm63xxCfe
,F5D7633
,F5D7633
,f5d7633
,96348GW-10
,6348,--block-size
0x20000 --image-offset
0x20000))
510 # Broadcom BCM96318REF
511 $(eval
$(call bcm63xxCfeRamdisk
,BCM96318REF
,BCM96318REF
,bcm96318ref
,96318REF
,6318))
512 # Broadcom BCM96318REF_P300
513 $(eval
$(call bcm63xxCfeRamdisk
,BCM96318REF_P300
,BCM96318ref_P300
,bcm96318ref_p300
,96318REF_P300
,6318))
514 # Broadcom BCM963268BU_P300
515 $(eval
$(call bcm63xxCfeRamdisk
,BCM963268BU_P300
,BCM963268BU_P300
,bcm963268bu_p300
,963268BU_P300
,63268))
516 # Broadcom BCM963269BHR
517 $(eval
$(call bcm63xxCfeRamdisk
,BCM963269BHR
,BCM963269BHR
,bcm963269bhr
,963269BHR
,63268))
519 $(eval
$(call bcm63xxCfe
,BTHOMEHUB2A
,HomeHub2A
,homehub2a
,HOMEHUB2A
,6358,--image-offset
0x20000 --block-size
0x20000))
520 # BT Voyager V2110, V2110_AA, V2110_ROI
521 $(eval
$(call bcm63xxCfe
,BTV2110
,BTV2110
,v2110
,V2110
,6348,--layoutver
5))
522 # BT Voyager V2500V, V2500V_SIP_CLUB, V2500V_AA
523 $(eval
$(call bcm63xxCfe
,BTV2500V
,BTV2500V
,v2500v-bb
,V2500V_BB
,6348,--layoutver
5))
525 $(eval
$(call bcm63xxCfe
,AR5381u
,AR-5381u
,ar-5381u
,96328A-1241N
,6328,--pad
8))
527 $(eval
$(call bcm63xxCfe
,AR5387un
,AR-5387un
,ar-5387un
,96328A-1441N1
,6328,--pad
8))
529 $(eval
$(call bcm63xxCfe
,CT536_CT5621
,CT536_CT5621
,ct536plus
,96348GW-11
,6348))
531 $(eval
$(call bcm63xxCfe
,CT5365
,CT-5365
,ct-5365
,96348A-122
,6348))
533 $(eval
$(call bcm63xxCfe
,CT6373
,CT-6373
,ct-6373
,CT6373-1
,6358))
535 $(eval
$(call bcm63xxCfe
,VR3025u
,VR-3025u
,vr-3025u
,96368M-1541N
,6368,--pad
16 --image-offset
0x20000 --block-size
0x20000))
537 $(eval
$(call bcm63xxCfe
,VR3025un
,VR-3025un
,vr-3025un
,96368M-1341N
,6368,--pad
4))
539 $(eval
$(call bcm63xxCfe
,VR3026e
,VR-3026e
,vr-3026e
,96368MT-1341N1
,6368,--pad
4))
541 $(eval
$(call bcm63xxCfe
,WAP5813n
,WAP-5813n
,wap-5813n
,96369R-1231N
,6368,--pad
4))
542 # D-Link DSL-2640B, rev B2
543 $(eval
$(call bcm63xxCfe
,DSL2640B-B2
,DSL2640B_B
,dsl-2640b-b
,D-4P-W
,6348))
544 # D-Link DSL-2640U, rev C1
545 $(eval
$(call bcm63xxCfe
,DSL2640U
,DSL2640U
,dsl-2640u
,96338W2_E7T
,6338))
547 $(eval
$(call bcm63xxCfe
,DSL2650U
,DSL2650U
,dsl-2650u
,96358VW2
,6358))
548 # D-Link DSL-2740B/DSL-2741B, rev C2
549 $(eval
$(call bcm63xxCfe
,DSL274XB_C
,DSL274XB-C2
,dsl-274xb-c
,96358GW
,6358))
550 # D-Link DSL-2740B/DSL-2741B, rev C3
551 $(eval
$(call bcm63xxCfe
,DSL274XB_C
,DSL274XB-C3
,dsl-274xb-c
,AW4139
,6358))
552 # D-Link DSL-2740B/DSL-2741B, rev F1
553 $(eval
$(call bcm63xxCfe
,DSL274XB_F
,DSL274XB-F1-EU
,dsl-274xb-f
,AW4339U
,6328,--signature2
"4.06.01.EUF1" --pad
4))
554 $(eval
$(call bcm63xxCfe
,DSL274XB_F
,DSL274XB-F1-AU
,dsl-274xb-f
,AW4339U
,6328,--signature2
"4.06.01.AUF1" --pad
4))
555 # D-Link DSL-2750B/DSL-2751, rev D1
556 $(eval
$(call bcm63xxCfe
,DSL275XB_D
,DSL275XB-D1
,dsl-275xb-d
,AW5200B
,6318,--pad
4))
557 # D-Link DVA-G3810BN/TL
558 $(eval
$(call bcm63xxCfe
,DVAG3810BN
,DVAG3810BN
,dva-g3810bn_tl
,96358VW
,6358))
560 $(eval
$(call bcm63xxCfeOld
,DV201AMR
,DV-201AMR
,dv-201amr
,DV201AMR
,6348))
561 # Dynalink RTA770BW (Siemens SE515)
562 $(eval
$(call bcm63xxCfeRamdisk
,RTA770BW
,RTA770BW
,rta770bw
,RTA770BW
,6345,--layoutver
5))
564 $(eval
$(call bcm63xxCfeRamdisk
,RTA770W
,RTA770W
,rta770w
,RTA770W
,6345,--layoutver
5))
565 # Dynalink RTA1025W (numerous routers)
566 $(eval
$(call bcm63xxCfe
,RTA1025W
,RTA1025W_16
,rta1025w
,RTA1025W_16
,6348,--layoutver
5))
567 # Dynalink RTA1320 (numerous routers)
568 $(eval
$(call bcm63xxCfe
,RTA1320
,RTA1320_16M
,rta1320
,RTA1320_16M
,6338,--layoutver
5))
570 $(eval
$(call bcm63xxCfe
,HG520v
,HG520v
,hg520v
,HW6358GW_B
,6358,--rsa-signature
"EchoLife_HG520v"))
572 $(eval
$(call bcm63xxCfe
,HG553
,HG553
,hg553
,HW553
,6358,--rsa-signature
"EchoLife_HG553" --image-offset
0x20000 --block-size
0x20000 --tag-version
7))
574 $(eval
$(call bcm63xxCfe
,HG556a_AB
,HG556a_A
,hg556a-a
,HW556
,6358,--rsa-signature
"EchoLife_HG556a" --image-offset
0x20000 --block-size
0x10000 --tag-version
8))
575 $(eval
$(call bcm63xxCfe
,HG556a_AB
,HG556a_B
,hg556a-b
,HW556
,6358,--rsa-signature
"EchoLife_HG556a" --image-offset
0x20000 --block-size
0x20000 --tag-version
8))
576 $(eval
$(call bcm63xxCfe
,HG556a_C
,HG556a_C
,hg556a-c
,HW556
,6358,--rsa-signature
"EchoLife_HG556a" --image-offset
0x20000 --block-size
0x20000 --tag-version
8))
578 $(eval
$(call bcm63xxCfe
,HG655b
,HG655b
,hg655b
,HW65x
,6368,--image-offset
0x20000 --tag-version
7 --pad
4))
580 $(eval
$(call bcm63xxCfeRamdisk
,VG50
,vg50
,vg50
,VW6339GU
,63268))
582 $(eval
$(call bcm63xxRedBoot
,Livebox
,livebox
,livebox-blue-5g
))
584 $(eval
$(call bcm33xxHcsRamdisk
,CVG834G
,cvg834g
,cvg834g
,0xa020,0001,0022))
586 $(eval
$(call bcm63xxCfe
,DG834GTPN
,DG834GT_PN
,dg834gtpn
,96348GW-10
,6348))
588 $(eval
$(call bcm63xxCfeRamdisk
,DG834GV4
,DG834GTv4
,dg834g_v4
,96348W3
,6348))
589 # Netgear DGND3700 v1
590 $(eval
$(call bcm63xxCfeNetgear
,DGND3700v1_3800B
,DGND3700v1
,dgnd3700v1
,96368MVWG
,6368,--image-offset
0x20000 --block-size
0x20000,U12L144T01_NETGEAR_NEWLED
,1))
592 $(eval
$(call bcm63xxCfeNetgear
,DGND3700v1_3800B
,DGND3800B
,dgnd3700v1
,96368MVWG
,6368,--image-offset
0x20000 --block-size
0x20000,U12L144T11_NETGEAR_NEWLED
,1))
593 # Pirelli Alice Gate VoIP 2 Plus Wi-Fi AGPF-S0
594 $(eval
$(call bcm63xxCfe
,AGPF_S0
,AGV2
+W
,agpf-s0
,AGPF-S0
,6358,--block-size
0x20000 --image-offset
0x20000 --signature2 IMAGE
--tag-version
8))
596 $(eval
$(call bcm63xxCfe
,A226G
,A226G
,a226g
,DWV-S0
,6358,--signature2 IMAGE
--tag-version
8))
597 # Pirelli A226M/A226M-FWB
598 $(eval
$(call bcm63xxCfe
,A226M
,A226M
,a226m
,DWV-S0
,6358,--signature2 IMAGE
--tag-version
8))
599 $(eval
$(call bcm63xxCfe
,A226M
,A226M-FWB
,a226m-fwb
,DWV-S0
,6358,--block-size
0x20000 --image-offset
0x20000 --signature2 IMAGE
--tag-version
8))
601 $(eval
$(call bcm63xxCfe
,FAST2404
,F@ST2404
,fast2404
,F@ST2404
,6348))
603 $(eval
$(call bcm63xxCfe
,FAST2504n
,F@ST2504n
,fast2504n
,F@ST2504n
,6362))
605 $(eval
$(call bcm63xxCfe
,FAST2604
,F@ST2604
,fast2604
,F@ST2604
,6348))
606 # Sagem F@ST2704N V1 / Plusnet F@ST2704N V1
607 $(eval
$(call bcm63xxCfe
,FAST2704N
,FAST2704N
,fast2704n
,F@ST2704N
,6318,--pad
4))
609 $(eval
$(call bcm63xxCfe
,FAST2704V2
,F@ST2704V2
,fast2704v2
,F@ST2704V2
,6328))
611 $(eval
$(call bcm63xxCfe
,Neufbox4
,NEUFBOX4-SER
,nb4-ser-r0
,96358VW
,6358,--rsa-signature
"OpenWRT-$(REVISION)"))
612 $(eval
$(call bcm63xxCfe
,Neufbox4
,NEUFBOX4-FXC
,nb4-fxc-r1
,96358VW
,6358,--rsa-signature
"OpenWRT-$(REVISION)"))
614 $(eval
$(call bcm63xxCfe
,Neufbox6
,NEUFBOX6
,nb6-ser-r0
,NB6-SER-r0
,6362,--rsa-signature
"OpenWRT-$(REVISION)"))
615 # T-Com Speedport W 303V Typ B
616 $(eval
$(call bcm63xxCfeSpw303v
,SPW303V
,SPW303V
,spw303v
,96358-502V
,6358,--pad
4))
617 # T-Com Speedport W 500V
618 $(eval
$(call bcm63xxCfe
,SPW500V
,SPW500V
,spw500v
,96348GW
,6348))
620 $(eval
$(call bcm63xxCfe
,GW6000
,GW6000
,gw6000
,96348GW
,6348))
622 $(eval
$(call bcm63xxCfe
,GW6200
,GW6200
,gw6200
,96348GW
,6348,--rsa-signature
"$(shell printf '\x99')"))
624 $(eval
$(call bcm63xxCfeRamdisk
,CPVA502PLUS
,CVPA502PLUS
,cpva502plus
,CPVA502
+,6348,--signature
"Telsey Tlc" --signature2
"99.99.999" --second-image-flag
"0"))
625 # Telsey CPVA642-type (e.g. CPA-ZNTE60T)
626 $(eval
$(call bcm63xxCfe
,CPVA642
,CPA-ZNTE60T
,cpva642
,CPVA642
,6358,--signature
"Telsey Tlc" --signature2
"99.99.999" --second-image-flag
"0" --pad
4))
627 # Telsey MAGIC (Alice W-Gate)
628 $(eval
$(call bcm63xxCfeRamdisk
,MAGIC
,MAGIC
,magic
,MAGIC
,6348))
630 $(eval
$(call bcm63xxCfe
,TDW8900GB
,TD-W8900GB
,td-w8900gb
,96348GW-11
,6348,--rsa-signature
"$(shell printf 'PRID\x89\x10\x00\x02')" --image-offset
0x20000))
632 $(eval
$(call bcm63xxCfe
,USR9108
,USR9108
,usr9108
,96348GW-A
,6348))
633 # ZyXEL P870HW-51a v2
634 $(eval
$(call bcm63xxCfeZyxel
,P870HW_51a_v2
,P870HW-51a_v2
,p870hw-51a-v2
,96368VVW
,6368,--rsa-signature
"ZyXEL" --signature
"ZyXEL_0001"))
636 $(eval
$(call BuildImage
))