2 # Copyright (C) 2010-2016 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 # boards missing since devicetree update
11 JFFS2_BLOCKSIZE
= 64k
128k
256k
13 KERNEL_LOADADDR
= 0x80002000
14 KERNEL_ENTRY
= 0x80002000
16 include $(TOPDIR
)/rules.mk
17 include $(INCLUDE_DIR
)/image.mk
19 LOADER_MAKE
:= $(NO_TRACE_MAKE
) -C lzma-loader KDIR
=$(KDIR
)
21 define Image
/BuildLoader
/Template
22 -rm -rf
$(KDIR
)/lzma-loader
23 $(LOADER_MAKE
) LOADER
=loader
$(2)-$(1).bin\
24 LZMA_TEXT_START
=0x80a00000 \
26 LOADER_DATA
="$(KDIR)/vmlinux$(2)-$(1).lzma" BOARD
="$(1)" \
32 $(STAGING_DIR_HOST
)/bin
/lzma e
$(1) $(2)
35 define PatchKernelLzma
36 cp
$(KDIR
)/vmlinux
$(2) $(KDIR
)/vmlinux
$(2)-$(1)
37 $(LINUX_DIR
)/scripts
/dtc
/dtc
-O dtb
-o
$(KDIR
)/$(1).dtb ..
/dts
/$(1).dts
38 cat
$(KDIR
)/vmlinux
$(2)-$(1) $(KDIR
)/$(1).dtb
> $(KDIR
)/vmlinux
$(2)-$(1).tmp
39 $(call CompressLzma
,$(KDIR
)/vmlinux
$(2)-$(1).tmp
,$(KDIR
)/vmlinux
$(2)-$(1).lzma
)
43 mkimage
-A mips
-O linux
-T kernel
-a
0x80002000 -C lzma \
44 -e
0x80002000 -n
'MIPS OpenWrt Linux-$(LINUX_VERSION)' \
45 -d
$(KDIR
)/vmlinux
$(2)-$(1).lzma
$(KDIR
)/uImage-
$(1)$(2)
49 lzma2eva
0x80002000 0x80002000 $(KDIR
)/vmlinux
$(2)-$(1).lzma
$(KDIR
)/$(1)$(2).eva.prealign
50 dd if
=$(KDIR
)/$(1)$(2).eva.prealign of
=$(KDIR
)/$(1)$(2).eva.align
.64k bs
=64k conv
=sync
51 dd if
=$(KDIR
)/$(1)$(2).eva.prealign of
=$(KDIR
)/$(1)$(2).eva.align
.128k bs
=128k conv
=sync
52 cat .
/eva.dummy.squashfs
>> $(KDIR
)/$(1)$(2).eva.align
.64k
55 define Image
/Build
/squashfs
56 cat
$(KDIR
)/uImage-
$(2) $(KDIR
)/root.
$(1) > $(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1).image
57 $(call prepare_generic_squashfs
,$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1).image
)
60 DGN3500_SKERNEL
=0x50000
61 DGN3500_SKERNEL_DECIMAL
=327680
62 define Image
/BuildDGN3500
/squashfs
63 dd if
=/dev
/zero of
=$(BIN_DIR
)/$(IMG_PREFIX
)-pad bs
=$(DGN3500_SKERNEL_DECIMAL
) count
=1
64 cat
$(BIN_DIR
)/$(IMG_PREFIX
)-pad
$(KDIR
)/uImage-
$(2) $(KDIR
)/root.
$(1) > $(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepad.img
65 rm -r
$(BIN_DIR
)/$(IMG_PREFIX
)-pad
66 dd if
=/dev
/zero ibs
=16M count
=1 | tr
"\000" "\377" > $(BIN_DIR
)/$(IMG_PREFIX
)-pwf
67 cp
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepad.img
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepadNA.img
68 dgn3500sum
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepadNA.img
$(DGN3500_SKERNEL
) NA
69 $(call prepare_generic_squashfs
,$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepadNA.img
)
70 cp
$(BIN_DIR
)/$(IMG_PREFIX
)-pwf
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-NA.img
71 dd if
=$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepadNA.img of
=$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-NA.img conv
=notrunc
72 dd if
=$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepadNA.img of
=$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-sysupgrade-NA.image bs
=$(DGN3500_SKERNEL_DECIMAL
) skip
=1
73 rm -r
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepadNA.img
74 mv
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepad.img
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepadWW.img
75 dgn3500sum
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepadWW.img
$(DGN3500_SKERNEL
) WW
76 $(call prepare_generic_squashfs
,$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepadWW.img
)
77 mv
$(BIN_DIR
)/$(IMG_PREFIX
)-pwf
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-WW.img
78 dd if
=$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepadWW.img of
=$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-WW.img conv
=notrunc
79 dd if
=$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepadWW.img of
=$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-sysupgrade-WW.image bs
=$(DGN3500_SKERNEL_DECIMAL
) skip
=1
80 rm -r
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepadWW.img
83 define Image
/BuildDGN3500B
/squashfs
84 dd if
=/dev
/zero of
=$(BIN_DIR
)/$(IMG_PREFIX
)-pad bs
=327680 count
=1
85 cat
$(BIN_DIR
)/$(IMG_PREFIX
)-pad
$(KDIR
)/uImage-
$(2) $(KDIR
)/root.
$(1) > $(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepad.img
86 rm -r
$(BIN_DIR
)/$(IMG_PREFIX
)-pad
87 dd if
=/dev
/zero ibs
=16M count
=1 | tr
"\000" "\377" > $(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory.img
88 dgn3500sum
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepad.img
$(DGN3500_SKERNEL
) DE
89 $(call prepare_generic_squashfs
,$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepad.img
)
90 dd if
=$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepad.img of
=$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory.img conv
=notrunc
91 dd if
=$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepad.img of
=$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-sysupgrade.image bs
=$(DGN3500_SKERNEL_DECIMAL
) skip
=1
92 rm -r
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepad.img
93 dgn3500sum
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-sysupgrade.image
$(DGN3500_SKERNEL
) DE
97 define Image
/BuildEVA
/squashfs
98 cat
$(KDIR
)/$(2).eva.align
.64k
$(KDIR
)/root.
$(1) > $(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1).image.eva
99 $(call prepare_generic_squashfs
,$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1).image.eva
)
102 define Image
/BuildLoader
/squashfs
103 dd if
=$(KDIR
)/loader-
$(2).bin of
=$(KDIR
)/loader-
$(2).bin.padded bs
=3072k conv
=sync
104 cat
$(KDIR
)/loader-
$(2).bin.padded
$(KDIR
)/root.
$(1) > $(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1).image
105 $(call prepare_generic_squashfs
,$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1).image
)
108 define Image
/BuildEVA
/jffs2-128k
109 cat
$(KDIR
)/$(2).eva.align
.128k
$(KDIR
)/root.
$(1) > $(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1).image.eva
112 define Image
/Build
/jffs2-64k
113 dd if
=$(KDIR
)/uImage-
$(2) of
=$(KDIR
)/uImage-
$(2)-$(1) bs
=64k conv
=sync
114 cat
$(KDIR
)/uImage-
$(2)-$(1) $(KDIR
)/root.
$(1) > $(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1).image
117 define Image
/Build
/jffs2-128k
118 dd if
=$(KDIR
)/uImage-
$(2) of
=$(KDIR
)/uImage-
$(2)-$(1) bs
=128k conv
=sync
119 cat
$(KDIR
)/uImage-
$(2)-$(1) $(KDIR
)/root.
$(1) > $(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1).image
122 define Image
/Build
/jffs2-256k
123 dd if
=$(KDIR
)/uImage-
$(2) of
=$(KDIR
)/uImage-
$(2)-$(1) bs
=256k conv
=sync
124 cat
$(KDIR
)/uImage-
$(2)-$(1) $(KDIR
)/root.
$(1) > $(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1).image
127 ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS
),)
128 define Image
/BuildKernel
/InitramfsTemplate
129 $(call PatchKernelLzma
,$(1),-initramfs
)
130 $(call MkImageLzma
,$(1),-initramfs
)
131 $(CP
) $(KDIR
)/uImage-
$(1)-initramfs
$(BIN_DIR
)/$(IMG_PREFIX
)-$(1)-uImage-initramfs
135 define Image
/BuildKernel
/Template
136 $(call PatchKernelLzma
,$(1))
137 $(call MkImageLzma
,$(1))
138 $(CP
) $(KDIR
)/uImage-
$(1) $(BIN_DIR
)/$(IMG_PREFIX
)-$(1)-uImage
139 $(Image
/BuildKernel
/InitramfsTemplate
)
142 ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS
),)
143 define Image
/BuildKernelLoader
/InitramfsTemplate
144 $(CP
) $(KDIR
)/loader-initramfs-
$(1).bin
$(BIN_DIR
)/$(IMG_PREFIX
)-$(1)-vmlinux-initramfs-loader
145 $(CP
) $(KDIR
)/vmlinux-initramfs-
$(1) $(BIN_DIR
)/$(IMG_PREFIX
)-$(1)-vmlinux-initramfs
149 define Image
/BuildKernelLoader
/Template
150 $(CP
) $(KDIR
)/loader-
$(1).bin
$(BIN_DIR
)/$(IMG_PREFIX
)-$(1)-vmlinux-loader
151 $(CP
) $(KDIR
)/vmlinux-
$(1) $(BIN_DIR
)/$(IMG_PREFIX
)-$(1)-vmlinux
152 $(Image
/BuildKernelLoader
/InitramfsTemplate
)
155 ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS
),)
156 define Image
/Prepare
/InitramfsTemplate
157 $(call PatchKernelLzma
,$(1),-initramfs
)
158 $(call Image
/BuildLoader
/Template
,$(1),-initramfs
)
162 define Image
/Prepare
/Template
163 $(call PatchKernelLzma
,$(1))
164 $(call Image
/BuildLoader
/Template
,$(1))
165 $(Image
/Prepare
/InitramfsTemplate
)
168 define Image
/BuildKernelEVA
/Template
169 $(call PatchKernelLzma
,$(1))
170 $(call MkImageEVA
,$(1))
171 $(CP
) $(KDIR
)/$(1).eva.align
.64k
$(BIN_DIR
)/$(IMG_PREFIX
)-$(1).eva.align
.64k
172 $(CP
) $(KDIR
)/$(1).eva.align
.128k
$(BIN_DIR
)/$(IMG_PREFIX
)-$(1).eva.align
.128k
176 ### Kernel scripts ###
177 define Build
/append-dtb
178 $(call Image
/BuildDTB
,..
/dts
/$(DEVICE_DTS
).dts
,$@.dtb
)
182 define Build
/mkbrncmdline
183 mkbrncmdline
-i
$@
-o
$@.new BRN-BOOT
187 define Build
/mkbrnimg
188 mkbrnimg
-s
$(SIGNATURE
) -m
$(MAGIC
) -p
$(CRC32_POLY
) -o
$@
$(word 1,$^
) $(word 2,$^
)
191 define Build
/fullimage
192 mkimage
-A mips
-O linux
-C lzma
-T filesystem
-a
0x00 \
193 -e
0x00 -n
'LEDE RootFS' \
194 -d
$(word 2,$^
) $(word 2,$^
).new
196 cat
$(word 1,$^
) $(word 2,$^
).new
> $@.tmp
198 mkimage
-A mips
-O linux
-T multi
-a
0x00 -C none \
199 -e
0x00 -n
'OpenWrt fullimage' \
206 # Shared device definition: applies to every defined device
207 define Device
/Default
208 PROFILES
= Default
$$(DEVICE_PROFILE
)
209 KERNEL_DEPENDS
= $$(wildcard ..
/dts
/$$(DEVICE_DTS
).dts
)
210 KERNEL_INITRAMFS_NAME
= $$(KERNEL_NAME
)-initramfs
211 KERNEL
:= kernel-bin | append-dtb | lzma | uImage lzma
212 KERNEL_INITRAMFS
:= kernel-bin | append-dtb | lzma | uImage lzma
213 FILESYSTEMS
:= squashfs
215 DEVICE_DTS
= $$(DEVICE_PROFILE
)
217 IMAGES
:= sysupgrade.bin
218 IMAGE
/sysupgrade.bin
:= append-kernel | append-rootfs | pad-rootfs | check-size
$$$$(IMAGE_SIZE
)
220 DEVICE_VARS
+= DEVICE_PROFILE DEVICE_DTS IMAGE_SIZE
222 define Device
/lantiqBrnImage
223 KERNEL
:= kernel-bin | append-dtb | mkbrncmdline | lzma-no-dict
224 IMAGES
:= factory.bin
225 IMAGE
/factory.bin
:= mkbrnimg | check-size
$$$$(IMAGE_SIZE
)
227 DEVICE_VARS
+= SIGNATURE MAGIC CRC32_POLY
229 define Device
/lantiqFullImage
230 KERNEL
:= kernel-bin | append-dtb | lzma | uImage lzma | pad-offset
4 0
231 IMAGES
:= sysupgrade.bin fullimage.img
232 IMAGE
/fullimage.img
:= fullimage | check-size
$$$$(IMAGE_SIZE
)
235 ifeq ($(SUBTARGET
),xway_legacy
)
237 define Device
/ARV4520PW
238 DEVICE_PROFILE
:= ARV4520PW
240 DEVICE_TITLE
:= Easybox
800, WAV-281
- ARV4520PW
241 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube \
242 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
243 kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \
244 ltq-adsl-app ppp-mod-pppoa \
245 kmod-rt61-pci wpad-mini \
248 TARGET_DEVICES
+= ARV4520PW
250 define Device
/ARV4525PW
251 DEVICE_PROFILE
:= ARV4525PW
253 DEVICE_TITLE
:= Speedport W502V Typ A
- ARV4525PW
254 DEVICE_PACKAGES
:= kmod-ath5k wpad-mini \
255 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
256 kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \
257 ltq-adsl-app ppp-mod-pppoa
259 TARGET_DEVICES
+= ARV4525PW
261 define Device
/ARV452CQW
262 DEVICE_PROFILE
:= ARV452CQW
264 DEVICE_TITLE
:= Easybox
801 - ARV452CQW
265 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube \
266 kmod-ath5k wpad-mini \
267 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
268 kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \
269 ltq-adsl-app ppp-mod-pppoa \
272 TARGET_DEVICES
+= ARV452CQW
274 define Device
/ARV4518PWR01
275 DEVICE_PROFILE
:= ARV4518PWR01
277 DEVICE_TITLE
:= ARV4518PWR01
278 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
279 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
280 kmod-ltq-adsl-danube-fw-a kmod-ltq-atm-danube \
281 ltq-adsl-app ppp-mod-pppoa \
282 kmod-ath5k wpad-mini \
285 TARGET_DEVICES
+= ARV4518PWR01
287 define Device
/ARV4518PWR01A
288 DEVICE_PROFILE
:= ARV4518PWR01A
290 DEVICE_TITLE
:= ARV4518PWR01A
291 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
292 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
293 kmod-ltq-adsl-danube-fw-a kmod-ltq-atm-danube \
294 ltq-adsl-app ppp-mod-pppoa \
295 kmod-ath5k wpad-mini \
298 TARGET_DEVICES
+= ARV4518PWR01A
302 ifeq ($(SUBTARGET
),xway
)
305 DEVICE_BTHOMEHUBV2B_UBIFS_OPTS
:="-m 512 -e 15872 -c 1959"
306 DEVICE_BTHOMEHUBV2B_UBI_OPTS
:="-m 512 -p 16KiB -s 256"
308 Image
/BuildKernel
/Profile
/BTHOMEHUBV2B
=$(call Image
/BuildKernel
/Template
,BTHOMEHUBV2B
)
309 Image
/Build
/Profile
/BTHOMEHUBV2B
=$(call Image
/BuildNAND
/$(1),$(1),BTHOMEHUBV2B
)
311 define LegacyDevice
/BTHOMEHUBV2B
312 DEVICE_TITLE
:= BT Home Hub
2B
313 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
314 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
315 kmod-ltq-adsl-danube-fw-a kmod-ltq-atm-danube \
316 kmod-ltq-deu-danube \
317 ltq-adsl-app ppp-mod-pppoa \
318 kmod-ath9k wpad-mini \
321 LEGACY_DEVICES
+= BTHOMEHUBV2B
323 define Device
/EASY50712
324 DEVICE_PROFILE
:= EASY50712
326 DEVICE_TITLE
:= Lantiq Danube
- EASY50712
328 TARGET_DEVICES
+= EASY50712
330 define Device
/ACMP252
331 DEVICE_PROFILE
:= ACMP252
333 DEVICE_TITLE
:= AudioCodes MediaPack MP-252
334 DEVICE_PACKAGES
:= kmod-rt2x00-pci wpad-mini \
335 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
336 kmod-ltq-adsl-danube-fw-a kmod-ltq-ptm-danube \
339 TARGET_DEVICES
+= ACMP252
341 define Device
/ARV4510PW
342 DEVICE_PROFILE
:= ARV4510PW
344 DEVICE_TITLE
:= Wippies
, Elisa
- ARV4510PW
345 DEVICE_PACKAGES
:= kmod-ledtrig-usbdev kmod-usb2-pci kmod-usb-uhci \
346 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
347 kmod-ltq-adsl-danube-fw-a kmod-ltq-atm-danube \
348 ltq-adsl-app ppp-mod-pppoa \
349 kmod-ltq-tapi kmod-ltq-vmmc \
350 kmod-rt2800-pci kmod-ath5k wpad-mini \
353 TARGET_DEVICES
+= ARV4510PW
355 define Device
/ARV7525PW
356 DEVICE_PROFILE
:= ARV7525PW
358 DEVICE_TITLE
:= Speedport W303V Typ A
- ARV7525PW
359 DEVICE_PACKAGES
:= kmod-rt2800-pci wpad-mini \
360 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
361 kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \
362 ltq-adsl-app ppp-mod-pppoa
364 TARGET_DEVICES
+= ARV7525PW
366 define Device
/ARV4519PW
367 DEVICE_PROFILE
:= ARV4519PW
369 DEVICE_TITLE
:= Vodafone
, Pirelli
- ARV4519PW
370 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
371 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
372 kmod-ltq-adsl-danube-fw-a kmod-ltq-atm-danube \
373 ltq-adsl-app ppp-mod-pppoa \
376 TARGET_DEVICES
+= ARV4519PW
378 define Device
/ARV7510PW22
379 DEVICE_PROFILE
:= ARV7510PW22
381 DEVICE_TITLE
:= Astoria
- ARV7510PW22
382 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
383 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
384 kmod-ltq-adsl-danube-fw-a kmod-ltq-atm-danube \
385 ltq-adsl-app ppp-mod-pppoa \
386 kmod-ltq-tapi kmod-ltq-vmmc \
387 kmod-rt2800-pci wpad-mini \
388 kmod-usb-uhci kmod-usb2 kmod-usb2-pci \
391 TARGET_DEVICES
+= ARV7510PW22
393 define Device
/ARV7518PW
394 DEVICE_PROFILE
:= ARV7518PW
396 DEVICE_TITLE
:= Astoria
- ARV7518PW
397 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
398 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
399 kmod-ltq-adsl-danube-fw-a kmod-ltq-atm-danube \
400 ltq-adsl-app ppp-mod-pppoa \
401 kmod-ath9k wpad-mini \
404 TARGET_DEVICES
+= ARV7518PW
406 define Device
/ARV7519PW
407 DEVICE_PROFILE
:= ARV7519PW
409 DEVICE_TITLE
:= Astoria
- ARV7519PW
410 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
411 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
412 kmod-ltq-adsl-danube-fw-a kmod-ltq-atm-danube \
413 ltq-adsl-app ppp-mod-pppoa \
414 kmod-rt2800-pci wpad-mini \
417 TARGET_DEVICES
+= ARV7519PW
419 define Device
/ARV752DPW
420 DEVICE_PROFILE
:= ARV752DPW
422 DEVICE_TITLE
:= Easybox
802 - ARV752DPW
423 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
424 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
425 kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \
426 ltq-adsl-app ppp-mod-pppoa \
427 kmod-ltq-tapi kmod-ltq-vmmc \
428 kmod-rt2800-pci wpad-mini \
431 TARGET_DEVICES
+= ARV752DPW
433 define Device
/ARV752DPW22
434 DEVICE_PROFILE
:= ARV752DPW22
436 DEVICE_TITLE
:= Easybox
803 - ARV752DPW22
437 DEVICE_PACKAGES
:= kmod-usb2-pci kmod-usb-uhci kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
438 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
439 kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \
440 ltq-adsl-app ppp-mod-pppoa \
441 kmod-ltq-tapi kmod-ltq-vmmc \
442 kmod-rt2800-pci wpad-mini \
445 TARGET_DEVICES
+= ARV752DPW22
447 define Device
/ARV8539PW22
448 DEVICE_PROFILE
:= ARV8539PW22
450 DEVICE_TITLE
:= Speedport W504V Typ A
- ARV8539PW22
451 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube \
452 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
453 kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \
454 ltq-adsl-app ppp-mod-pppoa \
455 kmod-ath9k wpad-mini \
458 TARGET_DEVICES
+= ARV8539PW22
460 define Device
/GIGASX76X
461 DEVICE_PROFILE
:= GIGASX76X
463 DEVICE_TITLE
:= Gigaset sx76x
464 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
465 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
466 kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \
467 ltq-adsl-app ppp-mod-pppoe \
468 kmod-ath5k wpad-mini \
471 TARGET_DEVICES
+= GIGASX76X
476 DEVICE_BTHOMEHUBV3A_UBIFS_OPTS
:="-m 512 -e 15872 -c 1959"
477 DEVICE_BTHOMEHUBV3A_UBI_OPTS
:="-m 512 -p 16KiB -s 256"
479 Image
/BuildKernel
/Profile
/BTHOMEHUBV3A
=$(call Image
/BuildKernel
/Template
,BTHOMEHUBV3A
)
480 Image
/Build
/Profile
/BTHOMEHUBV3A
=$(call Image
/BuildNAND
/$(1),$(1),BTHOMEHUBV3A
)
482 define LegacyDevice
/BTHOMEHUBV3A
483 DEVICE_TITLE
:= BT Home Hub
3A
484 DEVICE_PACKAGES
:= kmod-usb-dwc2 kmod-ledtrig-usbdev \
485 kmod-ltq-adsl-ar9-mei kmod-ltq-adsl-ar9 \
486 kmod-ltq-adsl-ar9-fw-a kmod-ltq-atm-ar9 \
488 ltq-adsl-app ppp-mod-pppoa \
489 kmod-ath9k wpad-mini \
490 swconfig uboot-envtools
492 LEGACY_DEVICES
+= BTHOMEHUBV3A
494 Image
/BuildKernel
/Profile
/DGN3500
=$(call Image
/BuildKernel
/Template
,DGN3500
)
495 Image
/Build
/Profile
/DGN3500
=$(call Image
/BuildDGN3500
/$(1),$(1),DGN3500
)
497 define LegacyDevice
/DGN3500
498 DEVICE_TITLE
:= Netgear DGN3500
499 DEVICE_PACKAGES
:= kmod-usb-dwc2 kmod-ledtrig-usbdev \
500 kmod-ath9k wpad-mini \
501 kmod-ltq-adsl-ar9-mei kmod-ltq-adsl-ar9 \
502 kmod-ltq-adsl-ar9-fw-a kmod-ltq-atm-ar9 \
503 ltq-adsl-app ppp-mod-pppoa \
504 kmod-ltq-deu-ar9 swconfig
506 LEGACY_DEVICES
+= DGN3500
508 Image
/BuildKernel
/Profile
/DGN3500B
=$(call Image
/BuildKernel
/Template
,DGN3500B
)
509 Image
/Build
/Profile
/DGN3500B
=$(call Image
/BuildDGN3500B
/$(1),$(1),DGN3500B
)
511 define LegacyDevice
/DGN3500B
512 DEVICE_TITLE
:= Netgear DGN3500B
513 DEVICE_PACKAGES
:= kmod-usb-dwc2 kmod-ledtrig-usbdev \
514 kmod-ath9k wpad-mini \
515 kmod-ltq-adsl-ar9-mei kmod-ltq-adsl-ar9 \
516 kmod-ltq-adsl-ar9-fw-b kmod-ltq-atm-ar9 \
517 ltq-adsl-app ppp-mod-pppoa \
518 kmod-ltq-deu-ar9 swconfig
520 LEGACY_DEVICES
+= DGN3500B
523 DEVICE_PROFILE
:= WBMRA
526 DEVICE_TITLE
:= Buffalo WBMR-HP-G300H
(A
) - WBMR
527 DEVICE_PACKAGES
:= kmod-usb-dwc2 kmod-ledtrig-usbdev \
528 kmod-ltq-adsl-ar9-mei kmod-ltq-adsl-ar9 \
529 kmod-ltq-adsl-ar9-fw-a kmod-ltq-atm-ar9 \
530 ltq-adsl-app ppp-mod-pppoa \
531 kmod-ath9k wpad hostapd-utils \
534 TARGET_DEVICES
+= WBMRA
537 DEVICE_PROFILE
:= WBMRB
540 DEVICE_TITLE
:= Buffalo WBMR-HP-G300H
(B
) - WBMR
541 DEVICE_PACKAGES
:= kmod-usb-dwc2 kmod-ledtrig-usbdev \
542 kmod-ltq-adsl-ar9-mei kmod-ltq-adsl-ar9 \
543 kmod-ltq-adsl-ar9-fw-b kmod-ltq-atm-ar9 \
544 ltq-adsl-app ppp-mod-pppoa \
545 kmod-ath9k wpad hostapd-utils \
548 TARGET_DEVICES
+= WBMRB
550 Image
/BuildKernel
/Profile
/FRITZ7320
=$(call Image
/BuildKernelEVA
/Template
,FRITZ7320
)
551 Image
/Build
/Profile
/FRITZ7320
=$(call Image
/BuildEVA
/$(1),$(1),FRITZ7320
)
553 define LegacyDevice
/FRITZ7320
554 DEVICE_TITLE
:= 1&1 HomeServer
- FRITZ7320
555 DEVICE_PACKAGES
:= kmod-ath9k wpad-mini \
556 kmod-ltq-adsl-ar9-mei kmod-ltq-adsl-ar9 \
557 kmod-ltq-adsl-ar9-fw-b kmod-ltq-atm-ar9 \
558 ltq-adsl-app ppp-mod-pppoa \
559 kmod-ltq-deu-ar9 kmod-usb-dwc2 \
562 LEGACY_DEVICES
+= FRITZ7320
565 DEVICE_PROFILE
:= H201L
567 DEVICE_TITLE
:= ZTE H201L
- H201L
568 DEVICE_PACKAGES
:= kmod-ath9k-htc wpad-mini \
569 kmod-ltq-adsl-ar9-mei kmod-ltq-adsl-ar9 \
570 kmod-ltq-adsl-ar9-fw-b kmod-ltq-atm-ar9 \
571 ltq-adsl-app ppp-mod-pppoe \
572 kmod-ltq-deu-ar9 kmod-usb-dwc2 \
573 kmod-ltq-tapi kmod-ltq-vmmc \
576 TARGET_DEVICES
+= H201L
578 define Device
/P2601HNFX
579 DEVICE_PROFILE
:= P2601HNFX
581 DEVICE_TITLE
:= ZyXEL P-2601HN-Fx
582 DEVICE_PACKAGES
:= kmod-rt2800-usb wpad-mini \
583 kmod-ltq-adsl-ar9-mei kmod-ltq-adsl-ar9 \
584 kmod-ltq-adsl-ar9-fw-b kmod-ltq-atm-ar9 \
585 ltq-adsl-app ppp-mod-pppoe \
586 kmod-ltq-deu-ar9 kmod-usb-dwc2 \
589 TARGET_DEVICES
+= P2601HNFX
595 ifeq ($(SUBTARGET
),xrx200
)
598 DEVICE_P2812HNUF1_UBIFS_OPTS
:="-m 2048 -e 126KiB -c 4096"
599 DEVICE_P2812HNUF1_UBI_OPTS
:="-m 2048 -p 128KiB -s 512"
601 Image
/BuildKernel
/Profile
/P2812HNUF1
=$(call Image
/BuildKernel
/Template
,P2812HNUF1
)
602 Image
/Build
/Profile
/P2812HNUF1
=$(call Image
/BuildNAND
/$(1),$(1),P2812HNUF1
)
604 define LegacyDevice
/P2812HNUF1
605 DEVICE_TITLE
:= ZyXEL P-2812HNU-F1
606 DEVICE_PACKAGES
:= kmod-rt2800-pci wpad-mini kmod-usb-dwc2
608 LEGACY_DEVICES
+= P2812HNUF1
610 DEVICE_P2812HNUF3_UBIFS_OPTS
:="-m 2048 -e 126KiB -c 4096"
611 DEVICE_P2812HNUF3_UBI_OPTS
:="-m 2048 -p 128KiB -s 512"
613 Image
/BuildKernel
/Profile
/P2812HNUF3
=$(call Image
/BuildKernel
/Template
,P2812HNUF3
)
614 Image
/Build
/Profile
/P2812HNUF3
=$(call Image
/BuildNAND
/$(1),$(1),P2812HNUF3
)
616 define LegacyDevice
/P2812HNUF3
617 DEVICE_TITLE
:= ZyXEL P-2812HNU-F3
618 DEVICE_PACKAGES
:= kmod-rt2800-pci wpad-mini kmod-usb-dwc2
620 LEGACY_DEVICES
+= P2812HNUF3
622 define Device
/ARV7519RW22
623 DEVICE_PROFILE
:= ARV7519RW22
625 DEVICE_TITLE
:= Livebox Astoria ARV7519RW22
626 DEVICE_PACKAGES
:= kmod-usb-dwc2
628 TARGET_DEVICES
+= ARV7519RW22
631 DEVICE_BTHOMEHUBV5A_UBIFS_OPTS
:="-m 2048 -e 126KiB -c 4096"
632 DEVICE_BTHOMEHUBV5A_UBI_OPTS
:="-m 2048 -p 128KiB -s 512"
634 Image
/BuildKernel
/Profile
/BTHOMEHUBV5A
=$(call Image
/BuildKernel
/Template
,BTHOMEHUBV5A
)
635 Image
/Build
/Profile
/BTHOMEHUBV5A
=$(call Image
/BuildNAND
/$(1),$(1),BTHOMEHUBV5A
)
637 define LegacyDevice
/BTHOMEHUBV5A
638 DEVICE_TITLE
:= BT Home Hub
5A
639 DEVICE_PACKAGES
:= kmod-ath9k kmod-ath10k wpad-mini kmod-usb-dwc2
641 LEGACY_DEVICES
+= BTHOMEHUBV5A
643 define Device
/EASY80920NAND
644 $(Device
/lantiqFullImage
)
645 DEVICE_PROFILE
:= EASY80920NAND
647 DEVICE_TITLE
:= Lantiq VR9
- EASY80920NAND
648 DEVICE_PACKAGES
:= kmod-ath9k wpad-mini kmod-usb-dwc2
650 TARGET_DEVICES
+= EASY80920NAND
652 define Device
/EASY80920NOR
653 DEVICE_PROFILE
:= EASY80920NOR
655 DEVICE_TITLE
:= Lantiq VR9
- EASY80920NOR
656 DEVICE_PACKAGES
:= kmod-ath9k wpad-mini kmod-usb-dwc2
658 TARGET_DEVICES
+= EASY80920NOR
661 DEVICE_FRITZ3370_UBIFS_OPTS
:="-m 2048 -e 126KiB -c 4096"
662 DEVICE_FRITZ3370_UBI_OPTS
:="-m 2048 -p 128KiB -s 512"
664 Image
/BuildKernel
/Profile
/FRITZ3370
=$(call Image
/BuildKernelEVA
/Template
,FRITZ3370
)
665 Image
/Build
/Profile
/FRITZ3370
=$(call Image
/BuildEVA
/$(1),$(1),FRITZ3370
)
667 define LegacyDevice
/FRITZ3370
668 DEVICE_TITLE
:= Fritz
!Box WLan
- FRITZ3370
669 DEVICE_PACKAGES
:= kmod-ath9k wpad-mini kmod-usb-dwc2
671 LEGACY_DEVICES
+= FRITZ3370
673 Image
/BuildKernel
/Profile
/FRITZ7360SL
=$(call Image
/BuildKernelEVA
/Template
,FRITZ7360SL
)
674 Image
/Build
/Profile
/FRITZ7360SL
=$(call Image
/BuildEVA
/$(1),$(1),FRITZ7360SL
)
676 define LegacyDevice
/FRITZ7360SL
677 DEVICE_TITLE
:= 1&1 HomeServer
- FRITZ7360SL
678 DEVICE_PACKAGES
:= kmod-ath9k wpad-mini kmod-usb-dwc2
680 LEGACY_DEVICES
+= FRITZ7360L
682 Image
/Prepare
/Profile
/VG3503J
=$(call Image
/Prepare
/Template
,VG3503J
)
683 Image
/BuildKernel
/Profile
/VG3503J
=$(call Image
/BuildKernelLoader
/Template
,VG3503J
)
684 Image
/Build
/Profile
/VG3503J
=$(call Image
/BuildLoader
/$(1),$(1),VG3503J
)
686 define LegacyDevice
/VG3503J
687 DEVICE_TITLE
:= BT Openreak
- ECI VDSL Modem
689 LEGACY_DEVICES
+= VG3503J
693 define Device
/WBMR300
694 DEVICE_PROFILE
:= WBMR300
696 DEVICE_TITLE
:= Buffalo WBMR-300HPD
697 DEVICE_PACKAGES
:= kmod-mt76 wpad-mini kmod-usb-dwc2
699 TARGET_DEVICES
+= WBMR300
701 define Device
/VGV7510KW22NOR
702 DEVICE_PROFILE
:= VGV7510KW22NOR
704 DEVICE_TITLE
:= o2 Box
6431 / Arcadyan VGV7510KW22
(NOR
)
705 DEVICE_PACKAGES
:= kmod-rt2800-pci wpad-mini kmod-usb-dwc2
707 TARGET_DEVICES
+= VGV7510KW22NOR
709 define Device
/VGV7510KW22BRN
710 $(Device
/lantiqBrnImage
)
711 DEVICE_PROFILE
:= VGV7510KW22BRN
713 SIGNATURE
:= 5D00008000
715 CRC32_POLY
:= 0x2083b8ed
716 DEVICE_TITLE
:= o2 Box
6431 / Arcadyan VGV7510KW22
(BRN
)
717 DEVICE_PACKAGES
:= kmod-rt2800-pci wpad-mini kmod-usb-dwc2
719 TARGET_DEVICES
+= VGV7510KW22BRN
721 define Device
/VGV7519NOR
722 DEVICE_PROFILE
:= VGV7519NOR
724 DEVICE_TITLE
:= Experiabox
8 VGV7519
725 DEVICE_PACKAGES
:= kmod-rt2800-pci wpad-mini kmod-usb-dwc2
727 TARGET_DEVICES
+= VGV7519NOR
729 define Device
/VGV7519BRN
730 $(Device
/lantiqBrnImage
)
731 DEVICE_PROFILE
:= VGV7519BRN
733 SIGNATURE
:= 5D00008000
735 CRC32_POLY
:= 0x2083b8ed
736 DEVICE_TITLE
:= Experiabox
8 VGV7519
(BRN
)
737 DEVICE_PACKAGES
:= kmod-rt2800-pci wpad-mini kmod-usb-dwc2
739 TARGET_DEVICES
+= VGV7519BRN
743 ifneq ($($(PROFILE
)_UBI_OPTS
),)
744 define Image
/BuildNAND
/squashfs
745 $(call prepare_generic_squashfs
,$(KDIR
)/root.
$(1))
746 $(call Image
/Build
/UbinizeImage
,$(2),,squashfs
,$($(PROFILE
)_UBI_OPTS
))
747 $(call Image
/Build
/SysupgradeNAND
,$(2),$(1),$(KDIR
)/uImage-
$(2))
750 define Image
/Build
/ubifs
751 $(CP
) $(KDIR
)/root.ubifs
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-rootfs.ubifs
754 define Image
/Build
/ubi
755 $(CP
) $(KDIR
)/root.ubi
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-rootfs.ubi
756 $(CP
) $(KDIR
)/root-overlay.ubi
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-rootfs-overlay.ubi
759 define Image
/BuildEVA
/ubi
760 $(CP
) $(KDIR
)/root.ubi
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-rootfs.ubi
761 $(CP
) $(KDIR
)/root-overlay.ubi
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-rootfs-overlay.ubi
764 ifneq ($($(PROFILE
)_UBIFS_OPTS
),)
765 define Image
/BuildNAND
/ubifs
766 $(call Image
/Build
/UbinizeImage
,$(2),,ubifs
,$($(PROFILE
)_UBI_OPTS
))
767 $(call Image
/Build
/SysupgradeNAND
,$(2),$(1),$(KDIR
)/uImage-
$(2))
770 define Image
/BuildEVA
/ubifs
771 $(CP
) $(KDIR
)/root.ubifs
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-rootfs.ubifs
776 define Image
/Prepare
/Profile
777 $(call Image
/Prepare
/Profile
/$(1))
780 define Image
/BuildKernel
/Profile
781 $(call Image
/BuildKernel
/Profile
/$(1))
784 define Image
/Build
/Profile
785 $(call Image
/Build
/Profile
/$(1),$(2))
788 $(eval
$(call BuildImage
))