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 define Image
/BuildNAND
/squashfs
62 ifneq ($($(PROFILE
)_UBI_OPTS
),)
63 $(call prepare_generic_squashfs
,$(KDIR
)/root.
$(1))
64 $(call Image
/Build
/UbinizeImage
,$(PROFILE
),,squashfs
,$($(PROFILE
)_UBI_OPTS
))
65 $(call Image
/Build
/SysupgradeNAND
,$(PROFILE
),$(1),$(KDIR
)/uImage-
$(PROFILE
))
69 DGN3500_SKERNEL
=0x50000
70 DGN3500_SKERNEL_DECIMAL
=327680
71 define Image
/BuildDGN3500
/squashfs
72 dd if
=/dev
/zero of
=$(BIN_DIR
)/$(IMG_PREFIX
)-pad bs
=$(DGN3500_SKERNEL_DECIMAL
) count
=1
73 cat
$(BIN_DIR
)/$(IMG_PREFIX
)-pad
$(KDIR
)/uImage-
$(2) $(KDIR
)/root.
$(1) > $(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepad.img
74 rm -r
$(BIN_DIR
)/$(IMG_PREFIX
)-pad
75 dd if
=/dev
/zero ibs
=16M count
=1 | tr
"\000" "\377" > $(BIN_DIR
)/$(IMG_PREFIX
)-pwf
76 cp
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepad.img
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepadNA.img
77 dgn3500sum
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepadNA.img
$(DGN3500_SKERNEL
) NA
78 $(call prepare_generic_squashfs
,$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepadNA.img
)
79 cp
$(BIN_DIR
)/$(IMG_PREFIX
)-pwf
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-NA.img
80 dd if
=$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepadNA.img of
=$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-NA.img conv
=notrunc
81 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
82 rm -r
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepadNA.img
83 mv
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepad.img
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepadWW.img
84 dgn3500sum
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepadWW.img
$(DGN3500_SKERNEL
) WW
85 $(call prepare_generic_squashfs
,$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepadWW.img
)
86 mv
$(BIN_DIR
)/$(IMG_PREFIX
)-pwf
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-WW.img
87 dd if
=$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepadWW.img of
=$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-WW.img conv
=notrunc
88 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
89 rm -r
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepadWW.img
92 define Image
/BuildDGN3500B
/squashfs
93 dd if
=/dev
/zero of
=$(BIN_DIR
)/$(IMG_PREFIX
)-pad bs
=327680 count
=1
94 cat
$(BIN_DIR
)/$(IMG_PREFIX
)-pad
$(KDIR
)/uImage-
$(2) $(KDIR
)/root.
$(1) > $(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepad.img
95 rm -r
$(BIN_DIR
)/$(IMG_PREFIX
)-pad
96 dd if
=/dev
/zero ibs
=16M count
=1 | tr
"\000" "\377" > $(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory.img
97 dgn3500sum
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepad.img
$(DGN3500_SKERNEL
) DE
98 $(call prepare_generic_squashfs
,$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepad.img
)
99 dd if
=$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepad.img of
=$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory.img conv
=notrunc
100 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
101 rm -r
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-factory-prepad.img
102 dgn3500sum
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1)-sysupgrade.image
$(DGN3500_SKERNEL
) DE
106 define Image
/BuildEVA
/squashfs
107 cat
$(KDIR
)/$(2).eva.align
.64k
$(KDIR
)/root.
$(1) > $(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1).image.eva
108 $(call prepare_generic_squashfs
,$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1).image.eva
)
111 define Image
/BuildEVA
/ubifs
113 ifneq ($($(PROFILE
)_UBIFS_OPTS
),)
114 $(CP
) $(KDIR
)/root.ubifs
$(BIN_DIR
)/$(IMG_PREFIX
)-$(PROFILE
)-rootfs.ubifs
118 define Image
/BuildEVA
/ubi
120 ifneq ($($(PROFILE
)_UBI_OPTS
),)
121 $(CP
) $(KDIR
)/root.ubi
$(BIN_DIR
)/$(IMG_PREFIX
)-$(PROFILE
)-rootfs.ubi
122 $(CP
) $(KDIR
)/root-overlay.ubi
$(BIN_DIR
)/$(IMG_PREFIX
)-$(PROFILE
)-rootfs-overlay.ubi
126 define Image
/BuildLoader
/squashfs
127 dd if
=$(KDIR
)/loader-
$(2).bin of
=$(KDIR
)/loader-
$(2).bin.padded bs
=3072k conv
=sync
128 cat
$(KDIR
)/loader-
$(2).bin.padded
$(KDIR
)/root.
$(1) > $(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1).image
129 $(call prepare_generic_squashfs
,$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1).image
)
132 define Image
/BuildEVA
/jffs2-128k
133 cat
$(KDIR
)/$(2).eva.align
.128k
$(KDIR
)/root.
$(1) > $(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1).image.eva
136 define Image
/Build
/jffs2-64k
137 dd if
=$(KDIR
)/uImage-
$(2) of
=$(KDIR
)/uImage-
$(2)-$(1) bs
=64k conv
=sync
138 cat
$(KDIR
)/uImage-
$(2)-$(1) $(KDIR
)/root.
$(1) > $(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1).image
141 define Image
/Build
/jffs2-128k
142 dd if
=$(KDIR
)/uImage-
$(2) of
=$(KDIR
)/uImage-
$(2)-$(1) bs
=128k conv
=sync
143 cat
$(KDIR
)/uImage-
$(2)-$(1) $(KDIR
)/root.
$(1) > $(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1).image
146 define Image
/Build
/jffs2-256k
147 dd if
=$(KDIR
)/uImage-
$(2) of
=$(KDIR
)/uImage-
$(2)-$(1) bs
=256k conv
=sync
148 cat
$(KDIR
)/uImage-
$(2)-$(1) $(KDIR
)/root.
$(1) > $(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1).image
151 define Image
/Build
/ubifs
153 ifneq ($($(PROFILE
)_UBIFS_OPTS
),)
154 $(CP
) $(KDIR
)/root.ubifs
$(BIN_DIR
)/$(IMG_PREFIX
)-$(PROFILE
)-rootfs.ubifs
158 define Image
/Build
/ubi
160 ifneq ($($(PROFILE
)_UBI_OPTS
),)
161 $(CP
) $(KDIR
)/root.ubi
$(BIN_DIR
)/$(IMG_PREFIX
)-$(PROFILE
)-rootfs.ubi
162 $(CP
) $(KDIR
)/root-overlay.ubi
$(BIN_DIR
)/$(IMG_PREFIX
)-$(PROFILE
)-rootfs-overlay.ubi
167 define Image
/BuildNAND
/ubifs
169 ifneq ($($(PROFILE
)_UBIFS_OPTS
),)
170 ifneq ($($(PROFILE
)_UBI_OPTS
),)
171 $(call Image
/Build
/UbinizeImage
,$(PROFILE
),,ubifs
,$($(PROFILE
)_UBI_OPTS
))
172 $(call Image
/Build
/SysupgradeNAND
,$(PROFILE
),$(1),$(KDIR
)/uImage-
$(PROFILE
))
178 define Image
/InstallKernel
/Template
180 ifneq ($(CONFIG_TARGET_ROOTFS_INCLUDE_KERNEL
),)
181 $(INSTALL_DIR
) $(TARGET_DIR
)/boot
183 ifneq ($(CONFIG_TARGET_ROOTFS_INCLUDE_UIMAGE
),)
184 $(CP
) $(BIN_DIR
)/$(IMG_PREFIX
)-$(1)-uImage
$(TARGET_DIR
)/boot
/
185 ln
-sf
$(IMG_PREFIX
)-$(1)-uImage
$(TARGET_DIR
)/boot
/uImage
188 ifneq ($(CONFIG_TARGET_ROOTFS_INCLUDE_ZIMAGE
),)
189 $(CP
) $(BIN_DIR
)/$(IMG_PREFIX
)-$(1)-zImage
$(TARGET_DIR
)/boot
/
190 ln
-sf
$(IMG_PREFIX
)-$(1)-zImage
$(TARGET_DIR
)/boot
/zImage
194 ifneq ($(CONFIG_TARGET_ROOTFS_INCLUDE_DTB
),)
195 $(INSTALL_DIR
) $(TARGET_DIR
)/boot
198 $(CP
) $(KDIR
)/$(1).dtb
$(TARGET_DIR
)/boot
/
203 define Image
/BuildKernel
/Template
204 $(call PatchKernelLzma
,$(1))
205 $(call MkImageLzma
,$(1))
206 $(CP
) $(KDIR
)/uImage-
$(1) $(BIN_DIR
)/$(IMG_PREFIX
)-$(1)-uImage
207 ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS
),)
208 $(call PatchKernelLzma
,$(1),-initramfs
)
209 $(call MkImageLzma
,$(1),-initramfs
)
210 $(CP
) $(KDIR
)/uImage-
$(1)-initramfs
$(BIN_DIR
)/$(IMG_PREFIX
)-$(1)-uImage-initramfs
214 define Image
/BuildKernelLoader
/Template
215 $(CP
) $(KDIR
)/loader-
$(1).bin
$(BIN_DIR
)/$(IMG_PREFIX
)-$(1)-vmlinux-loader
216 $(CP
) $(KDIR
)/vmlinux-
$(1) $(BIN_DIR
)/$(IMG_PREFIX
)-$(1)-vmlinux
217 ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS
),)
218 $(CP
) $(KDIR
)/loader-initramfs-
$(1).bin
$(BIN_DIR
)/$(IMG_PREFIX
)-$(1)-vmlinux-initramfs-loader
219 $(CP
) $(KDIR
)/vmlinux-initramfs-
$(1) $(BIN_DIR
)/$(IMG_PREFIX
)-$(1)-vmlinux-initramfs
223 define Image
/Prepare
/Profile
224 $(call PatchKernelLzma
,$(1))
225 $(call Image
/BuildLoader
/Template
,$(1))
226 ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS
),)
227 $(call PatchKernelLzma
,$(1),-initramfs
)
228 $(call Image
/BuildLoader
/Template
,$(1),-initramfs
)
232 define Image
/BuildKernelEVA
/Template
233 $(call PatchKernelLzma
,$(1))
234 $(call MkImageEVA
,$(1))
235 $(CP
) $(KDIR
)/$(1).eva.align
.64k
$(BIN_DIR
)/$(IMG_PREFIX
)-$(1).eva.align
.64k
236 $(CP
) $(KDIR
)/$(1).eva.align
.128k
$(BIN_DIR
)/$(IMG_PREFIX
)-$(1).eva.align
.128k
237 ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS
),)
238 $(call PatchKernelLzma
,$(1),-initramfs
)
239 $(call MkImageEVA
,$(1),-initramfs
)
240 $(CP
) $(KDIR
)/$(1)-initramfs.eva.align
.64k
$(BIN_DIR
)/$(IMG_PREFIX
)-$(1)-initramfs.eva.align
.64k
241 $(CP
) $(KDIR
)/$(1)-initramfs.eva.align
.128k
$(BIN_DIR
)/$(IMG_PREFIX
)-$(1)-initramfs.eva.align
.128k
246 ### Kernel scripts ###
247 define Build
/append-dtb
248 $(call Image
/BuildDTB
,..
/dts
/$(DEVICE_DTS
).dts
,$@.dtb
)
252 define Build
/mkbrncmdline
253 mkbrncmdline
-i
$@
-o
$@.new BRN-BOOT
257 define Build
/mkbrnimg
258 mkbrnimg
-s
$(SIGNATURE
) -m
$(MAGIC
) -p
$(CRC32_POLY
) -o
$@
$(word 1,$^
) $(word 2,$^
)
261 # Shared device definition: applies to every defined device
262 define Device
/Default
263 PROFILES
= Default
$$(DEVICE_PROFILE
)
264 KERNEL_DEPENDS
= $$(wildcard ..
/dts
/$$(DEVICE_DTS
).dts
)
265 KERNEL_INITRAMFS_NAME
= $$(KERNEL_NAME
)-initramfs
266 KERNEL
:= kernel-bin | append-dtb | lzma | uImage lzma
267 KERNEL_INITRAMFS
:= kernel-bin | append-dtb | lzma | uImage lzma
268 FILESYSTEMS
:= squashfs
270 DEVICE_DTS
= $$(DEVICE_PROFILE
)
272 IMAGES
:= sysupgrade.bin
273 IMAGE
/sysupgrade.bin
:= append-kernel | append-rootfs | pad-rootfs | check-size
$$$$(IMAGE_SIZE
)
275 DEVICE_VARS
+= DEVICE_PROFILE DEVICE_DTS IMAGE_SIZE
277 define Device
/lantiqBrnImage
278 KERNEL
:= kernel-bin | append-dtb | mkbrncmdline | lzma-no-dict
279 IMAGES
:= factory.bin
280 IMAGE
/factory.bin
:= mkbrnimg | check-size
$$$$(IMAGE_SIZE
)
282 DEVICE_VARS
+= SIGNATURE MAGIC CRC32_POLY
284 ifeq ($(SUBTARGET
),xway_legacy
)
286 define Device
/ARV4520PW
287 DEVICE_PROFILE
:= ARV4520PW
289 DEVICE_TITLE
:= Easybox
800, WAV-281
- ARV4520PW
290 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube \
291 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
292 kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \
293 ltq-adsl-app ppp-mod-pppoa \
294 kmod-rt61-pci wpad-mini \
297 TARGET_DEVICES
+= ARV4520PW
299 define Device
/ARV4525PW
300 DEVICE_PROFILE
:= ARV4525PW
302 DEVICE_TITLE
:= Speedport W502V Typ A
- ARV4525PW
303 DEVICE_PACKAGES
:= kmod-ath5k wpad-mini \
304 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
305 kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \
306 ltq-adsl-app ppp-mod-pppoa
308 TARGET_DEVICES
+= ARV4525PW
310 define Device
/ARV452CQW
311 DEVICE_PROFILE
:= ARV452CQW
313 DEVICE_TITLE
:= Easybox
801 - ARV452CQW
314 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube \
315 kmod-ath5k wpad-mini \
316 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
317 kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \
318 ltq-adsl-app ppp-mod-pppoa \
321 TARGET_DEVICES
+= ARV452CQW
323 define Device
/ARV4518PWR01
324 DEVICE_PROFILE
:= ARV4518PWR01
326 DEVICE_TITLE
:= ARV4518PWR01
327 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
328 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
329 kmod-ltq-adsl-danube-fw-a kmod-ltq-atm-danube \
330 ltq-adsl-app ppp-mod-pppoa \
331 kmod-ath5k wpad-mini \
334 TARGET_DEVICES
+= ARV4518PWR01
336 define Device
/ARV4518PWR01A
337 DEVICE_PROFILE
:= ARV4518PWR01A
339 DEVICE_TITLE
:= ARV4518PWR01A
340 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
341 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
342 kmod-ltq-adsl-danube-fw-a kmod-ltq-atm-danube \
343 ltq-adsl-app ppp-mod-pppoa \
344 kmod-ath5k wpad-mini \
347 TARGET_DEVICES
+= ARV4518PWR01A
351 ifeq ($(SUBTARGET
),xway
)
354 BTHOMEHUBV2B_UBIFS_OPTS
:="-m 512 -e 15872 -c 1959"
355 BTHOMEHUBV2B_UBI_OPTS
:="-m 512 -p 16KiB -s 256"
357 Image
/BuildKernel
/Profile
/BTHOMEHUBV2B
=$(call Image
/BuildKernel
/Template
,BTHOMEHUBV2B
)
358 Image
/Build
/Profile
/BTHOMEHUBV2B
=$(call Image
/BuildNAND
/$(1),$(1),BTHOMEHUBV2B
)
360 define Device
/EASY50712
361 DEVICE_PROFILE
:= EASY50712
363 DEVICE_TITLE
:= Lantiq Danube
- EASY50712
365 TARGET_DEVICES
+= EASY50712
367 define Device
/ACMP252
368 DEVICE_PROFILE
:= ACMP252
370 DEVICE_TITLE
:= AudioCodes MediaPack MP-252
371 DEVICE_PACKAGES
:= kmod-rt2x00-pci wpad-mini \
372 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
373 kmod-ltq-adsl-danube-fw-a kmod-ltq-ptm-danube \
376 TARGET_DEVICES
+= ACMP252
378 define Device
/ARV4510PW
379 DEVICE_PROFILE
:= ARV4510PW
381 DEVICE_TITLE
:= Wippies
, Elisa
- ARV4510PW
382 DEVICE_PACKAGES
:= kmod-ledtrig-usbdev kmod-usb2-pci kmod-usb-uhci \
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 kmod-ath5k wpad-mini \
390 TARGET_DEVICES
+= ARV4510PW
392 define Device
/ARV7525PW
393 DEVICE_PROFILE
:= ARV7525PW
395 DEVICE_TITLE
:= Speedport W303V Typ A
- ARV7525PW
396 DEVICE_PACKAGES
:= kmod-rt2800-pci wpad-mini \
397 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
398 kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \
399 ltq-adsl-app ppp-mod-pppoa
401 TARGET_DEVICES
+= ARV7525PW
403 define Device
/ARV4519PW
404 DEVICE_PROFILE
:= ARV4519PW
406 DEVICE_TITLE
:= Vodafone
, Pirelli
- ARV4519PW
407 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
408 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
409 kmod-ltq-adsl-danube-fw-a kmod-ltq-atm-danube \
410 ltq-adsl-app ppp-mod-pppoa \
413 TARGET_DEVICES
+= ARV4519PW
415 define Device
/ARV7510PW22
416 DEVICE_PROFILE
:= ARV7510PW22
418 DEVICE_TITLE
:= Astoria
- ARV7510PW22
419 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
420 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
421 kmod-ltq-adsl-danube-fw-a kmod-ltq-atm-danube \
422 ltq-adsl-app ppp-mod-pppoa \
423 kmod-ltq-tapi kmod-ltq-vmmc \
424 kmod-rt2800-pci wpad-mini \
425 kmod-usb-uhci kmod-usb2 kmod-usb2-pci \
428 TARGET_DEVICES
+= ARV7510PW22
430 define Device
/ARV7518PW
431 DEVICE_PROFILE
:= ARV7518PW
433 DEVICE_TITLE
:= Astoria
- ARV7518PW
434 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
435 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
436 kmod-ltq-adsl-danube-fw-a kmod-ltq-atm-danube \
437 ltq-adsl-app ppp-mod-pppoa \
438 kmod-ath9k wpad-mini \
441 TARGET_DEVICES
+= ARV7518PW
443 define Device
/ARV7519PW
444 DEVICE_PROFILE
:= ARV7519PW
446 DEVICE_TITLE
:= Astoria
- ARV7519PW
447 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
448 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
449 kmod-ltq-adsl-danube-fw-a kmod-ltq-atm-danube \
450 ltq-adsl-app ppp-mod-pppoa \
451 kmod-rt2800-pci wpad-mini \
454 TARGET_DEVICES
+= ARV7519PW
456 define Device
/ARV752DPW
457 DEVICE_PROFILE
:= ARV752DPW
459 DEVICE_TITLE
:= Easybox
802 - ARV752DPW
460 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
461 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
462 kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \
463 ltq-adsl-app ppp-mod-pppoa \
464 kmod-ltq-tapi kmod-ltq-vmmc \
465 kmod-rt2800-pci wpad-mini \
468 TARGET_DEVICES
+= ARV752DPW
470 define Device
/ARV752DPW22
471 DEVICE_PROFILE
:= ARV752DPW22
473 DEVICE_TITLE
:= Easybox
803 - ARV752DPW22
474 DEVICE_PACKAGES
:= kmod-usb2-pci kmod-usb-uhci kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
475 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
476 kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \
477 ltq-adsl-app ppp-mod-pppoa \
478 kmod-ltq-tapi kmod-ltq-vmmc \
479 kmod-rt2800-pci wpad-mini \
482 TARGET_DEVICES
+= ARV752DPW22
484 define Device
/ARV8539PW22
485 DEVICE_PROFILE
:= ARV8539PW22
487 DEVICE_TITLE
:= Speedport W504V Typ A
- ARV8539PW22
488 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube \
489 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
490 kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \
491 ltq-adsl-app ppp-mod-pppoa \
492 kmod-ath9k wpad-mini \
495 TARGET_DEVICES
+= ARV8539PW22
497 define Device
/GIGASX76X
498 DEVICE_PROFILE
:= GIGASX76X
500 DEVICE_TITLE
:= Gigaset sx76x
501 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
502 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
503 kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \
504 ltq-adsl-app ppp-mod-pppoe \
505 kmod-ath5k wpad-mini \
508 TARGET_DEVICES
+= GIGASX76X
513 BTHOMEHUBV3A_UBIFS_OPTS
:="-m 512 -e 15872 -c 1959"
514 BTHOMEHUBV3A_UBI_OPTS
:="-m 512 -p 16KiB -s 256"
516 Image
/BuildKernel
/Profile
/BTHOMEHUBV3A
=$(call Image
/BuildKernel
/Template
,BTHOMEHUBV3A
)
517 Image
/Build
/Profile
/BTHOMEHUBV3A
=$(call Image
/BuildNAND
/$(1),$(1),BTHOMEHUBV3A
)
519 Image
/BuildKernel
/Profile
/DGN3500
=$(call Image
/BuildKernel
/Template
,DGN3500
)
520 Image
/Build
/Profile
/DGN3500
=$(call Image
/BuildDGN3500
/$(1),$(1),DGN3500
)
522 Image
/BuildKernel
/Profile
/DGN3500B
=$(call Image
/BuildKernel
/Template
,DGN3500B
)
523 Image
/Build
/Profile
/DGN3500B
=$(call Image
/BuildDGN3500B
/$(1),$(1),DGN3500B
)
526 DEVICE_PROFILE
:= WBMRA
529 DEVICE_TITLE
:= Buffalo WBMR-HP-G300H
(A
) - WBMR
530 DEVICE_PACKAGES
:= kmod-usb-dwc2 kmod-ledtrig-usbdev \
531 kmod-ltq-adsl-ar9-mei kmod-ltq-adsl-ar9 \
532 kmod-ltq-adsl-ar9-fw-a kmod-ltq-atm-ar9 \
533 ltq-adsl-app ppp-mod-pppoa \
534 kmod-ath9k wpad hostapd-utils \
537 TARGET_DEVICES
+= WBMRA
540 DEVICE_PROFILE
:= WBMRB
543 DEVICE_TITLE
:= Buffalo WBMR-HP-G300H
(B
) - WBMR
544 DEVICE_PACKAGES
:= kmod-usb-dwc2 kmod-ledtrig-usbdev \
545 kmod-ltq-adsl-ar9-mei kmod-ltq-adsl-ar9 \
546 kmod-ltq-adsl-ar9-fw-b kmod-ltq-atm-ar9 \
547 ltq-adsl-app ppp-mod-pppoa \
548 kmod-ath9k wpad hostapd-utils \
551 TARGET_DEVICES
+= WBMRB
554 Image
/BuildKernel
/Profile
/FRITZ7320
=$(call Image
/BuildKernelEVA
/Template
,FRITZ7320
)
555 Image
/Build
/Profile
/FRITZ7320
=$(call Image
/BuildEVA
/$(1),$(1),FRITZ7320
)
558 DEVICE_PROFILE
:= GR7000
560 DEVICE_TITLE
:= Aztech GR7000
561 DEVICE_PACKAGES
:= kmod-ltq-deu-ar9 kmod-usb-dwc2 swconfig
563 TARGET_DEVICES
+= GR7000
566 DEVICE_PROFILE
:= H201L
568 DEVICE_TITLE
:= ZTE H201L
- H201L
569 DEVICE_PACKAGES
:= kmod-ath9k-htc wpad-mini \
570 kmod-ltq-adsl-ar9-mei kmod-ltq-adsl-ar9 \
571 kmod-ltq-adsl-ar9-fw-b kmod-ltq-atm-ar9 \
572 ltq-adsl-app ppp-mod-pppoe \
573 kmod-ltq-deu-ar9 kmod-usb-dwc2 \
574 kmod-ltq-tapi kmod-ltq-vmmc \
577 TARGET_DEVICES
+= H201L
579 define Device
/P2601HNFX
580 DEVICE_PROFILE
:= P2601HNFX
582 DEVICE_TITLE
:= ZyXEL P-2601HN-Fx
583 DEVICE_PACKAGES
:= kmod-rt2800-usb wpad-mini \
584 kmod-ltq-adsl-ar9-mei kmod-ltq-adsl-ar9 \
585 kmod-ltq-adsl-ar9-fw-b kmod-ltq-atm-ar9 \
586 ltq-adsl-app ppp-mod-pppoe \
587 kmod-ltq-deu-ar9 kmod-usb-dwc2 \
590 TARGET_DEVICES
+= P2601HNFX
596 ifeq ($(SUBTARGET
),xrx200
)
599 P2812HNUF1_UBIFS_OPTS
:="-m 2048 -e 126KiB -c 4096"
600 P2812HNUF1_UBI_OPTS
:="-m 2048 -p 128KiB -s 512"
602 Image
/BuildKernel
/Profile
/P2812HNUF1
=$(call Image
/BuildKernel
/Template
,P2812HNUF1
)
603 Image
/Build
/Profile
/P2812HNUF1
=$(call Image
/BuildNAND
/$(1),$(1),P2812HNUF1
)
605 P2812HNUF3_UBIFS_OPTS
:="-m 2048 -e 126KiB -c 4096"
606 P2812HNUF3_UBI_OPTS
:="-m 2048 -p 128KiB -s 512"
608 Image
/BuildKernel
/Profile
/P2812HNUF3
=$(call Image
/BuildKernel
/Template
,P2812HNUF3
)
609 Image
/Build
/Profile
/P2812HNUF3
=$(call Image
/BuildNAND
/$(1),$(1),P2812HNUF3
)
611 define Device
/ARV7519RW22
612 DEVICE_PROFILE
:= ARV7519RW22
614 DEVICE_TITLE
:= Livebox Astoria ARV7519RW22
615 DEVICE_PACKAGES
:= kmod-usb-dwc2
617 TARGET_DEVICES
+= ARV7519RW22
620 BTHOMEHUBV5A_UBIFS_OPTS
:="-m 2048 -e 126KiB -c 4096"
621 BTHOMEHUBV5A_UBI_OPTS
:="-m 2048 -p 128KiB -s 512"
623 Image
/BuildKernel
/Profile
/BTHOMEHUBV5A
=$(call Image
/BuildKernel
/Template
,BTHOMEHUBV5A
)
624 Image
/Build
/Profile
/BTHOMEHUBV5A
=$(call Image
/BuildNAND
/$(1),$(1),BTHOMEHUBV5A
)
626 define Device
/EASY80920NAND
627 DEVICE_PROFILE
:= EASY80920NAND
629 DEVICE_TITLE
:= Lantiq VR9
- EASY80920NAND
630 DEVICE_PACKAGES
:= kmod-ath9k wpad-mini kmod-usb-dwc2
632 TARGET_DEVICES
+= EASY80920NAND
634 define Device
/EASY80920NOR
635 DEVICE_PROFILE
:= EASY80920NOR
637 DEVICE_TITLE
:= Lantiq VR9
- EASY80920NOR
638 DEVICE_PACKAGES
:= kmod-ath9k wpad-mini kmod-usb-dwc2
640 TARGET_DEVICES
+= EASY80920NOR
643 FRITZ3370_UBIFS_OPTS
:="-m 2048 -e 126KiB -c 4096"
644 FRITZ3370_UBI_OPTS
:="-m 2048 -p 128KiB -s 512"
646 Image
/BuildKernel
/Profile
/FRITZ3370
=$(call Image
/BuildKernelEVA
/Template
,FRITZ3370
)
647 Image
/Build
/Profile
/FRITZ3370
=$(call Image
/BuildEVA
/$(1),$(1),FRITZ3370
)
649 Image
/BuildKernel
/Profile
/FRITZ7360SL
=$(call Image
/BuildKernelEVA
/Template
,FRITZ7360SL
)
650 Image
/Build
/Profile
/FRITZ7360SL
=$(call Image
/BuildEVA
/$(1),$(1),FRITZ7360SL
)
652 Image
/BuildKernel
/Profile
/VG3503J
=$(call Image
/BuildKernelLoader
/Template
,VG3503J
)
653 Image
/Build
/Profile
/VG3503J
=$(call Image
/BuildLoader
/$(1),$(1),VG3503J
)
657 define Device
/WBMR300
658 DEVICE_PROFILE
:= WBMR300
660 DEVICE_TITLE
:= Buffalo WBMR-300HPD
661 DEVICE_PACKAGES
:= kmod-mt76 wpad-mini kmod-usb-dwc2
663 TARGET_DEVICES
+= WBMR300
665 define Device
/VGV7510KW22NOR
666 DEVICE_PROFILE
:= VGV7510KW22NOR
668 DEVICE_TITLE
:= o2 Box
6431 / Arcadyan VGV7510KW22
(NOR
)
669 DEVICE_PACKAGES
:= kmod-rt2800-pci wpad-mini kmod-usb-dwc2
671 TARGET_DEVICES
+= VGV7510KW22NOR
673 define Device
/VGV7510KW22BRN
674 $(Device
/lantiqBrnImage
)
675 DEVICE_PROFILE
:= VGV7510KW22BRN
677 SIGNATURE
:= 5D00008000
679 CRC32_POLY
:= 0x2083b8ed
680 DEVICE_TITLE
:= o2 Box
6431 / Arcadyan VGV7510KW22
(BRN
)
681 DEVICE_PACKAGES
:= kmod-rt2800-pci wpad-mini kmod-usb-dwc2
683 TARGET_DEVICES
+= VGV7510KW22BRN
685 define Device
/VGV7519NOR
686 DEVICE_PROFILE
:= VGV7519NOR
688 DEVICE_TITLE
:= Experiabox
8 VGV7519
689 DEVICE_PACKAGES
:= kmod-rt2800-pci wpad-mini kmod-usb-dwc2
691 TARGET_DEVICES
+= VGV7519NOR
693 define Device
/VGV7519BRN
694 $(Device
/lantiqBrnImage
)
695 DEVICE_PROFILE
:= VGV7519BRN
697 SIGNATURE
:= 5D00008000
699 CRC32_POLY
:= 0x2083b8ed
700 DEVICE_TITLE
:= Experiabox
8 VGV7519
(BRN
)
701 DEVICE_PACKAGES
:= kmod-rt2800-pci wpad-mini kmod-usb-dwc2
703 TARGET_DEVICES
+= VGV7519BRN
706 $(if
$(Image
/Build
/Profile
/$(PROFILE
)),$(call Image
/Prepare
/Profile
,$(PROFILE
)))
711 define Image
/BuildKernel
712 $(call Image
/BuildKernel
/Profile
/$(PROFILE
))
715 define Image
/InstallKernel
716 $(call Image
/InstallKernel
/Template
/$(PROFILE
))
720 $(call Image
/Build
/Profile
/$(PROFILE
),$(1))
723 $(eval
$(call BuildImage
))