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
/mkbrncmdline
178 mkbrncmdline
-i
$@
-o
$@.new BRN-BOOT
182 define Build
/mkbrnimg
183 mkbrnimg
-s
$(SIGNATURE
) -m
$(MAGIC
) -p
$(CRC32_POLY
) -o
$@
$(word 1,$^
) $(word 2,$^
)
186 define Build
/fullimage
187 mkimage
-A mips
-O linux
-C lzma
-T filesystem
-a
0x00 \
188 -e
0x00 -n
'LEDE RootFS' \
189 -d
$(word 2,$^
) $(word 2,$^
).new
191 cat
$(word 1,$^
) $(word 2,$^
).new
> $@.tmp
193 mkimage
-A mips
-O linux
-T multi
-a
0x00 -C none \
194 -e
0x00 -n
'OpenWrt fullimage' \
201 # Shared device definition: applies to every defined device
202 define Device
/Default
203 PROFILES
= Default
$$(DEVICE_PROFILE
)
204 KERNEL_DEPENDS
= $$(wildcard ..
/dts
/$$(DEVICE_DTS
).dts
)
205 KERNEL_INITRAMFS_NAME
= $$(KERNEL_NAME
)-initramfs
206 KERNEL
:= kernel-bin | append-dtb | lzma | uImage lzma
207 KERNEL_INITRAMFS
:= kernel-bin | append-dtb | lzma | uImage lzma
208 FILESYSTEMS
:= squashfs
210 DEVICE_DTS
= $$(DEVICE_PROFILE
)
211 DEVICE_DTS_DIR
:= ..
/dts
213 IMAGES
:= sysupgrade.bin
214 IMAGE
/sysupgrade.bin
:= append-kernel | append-rootfs | pad-rootfs | check-size
$$$$(IMAGE_SIZE
)
216 DEVICE_VARS
+= DEVICE_PROFILE DEVICE_DTS DEVICE_DTS_DIR IMAGE_SIZE
218 define Device
/lantiqBrnImage
219 KERNEL
:= kernel-bin | append-dtb | mkbrncmdline | lzma-no-dict
220 IMAGES
:= factory.bin
221 IMAGE
/factory.bin
:= mkbrnimg | check-size
$$$$(IMAGE_SIZE
)
223 DEVICE_VARS
+= SIGNATURE MAGIC CRC32_POLY
225 define Device
/lantiqFullImage
226 KERNEL
:= kernel-bin | append-dtb | lzma | uImage lzma | pad-offset
4 0
227 IMAGES
:= sysupgrade.bin fullimage.img
228 IMAGE
/fullimage.img
:= fullimage | check-size
$$$$(IMAGE_SIZE
)
231 ifeq ($(SUBTARGET
),xway_legacy
)
233 define Device
/ARV4520PW
234 DEVICE_PROFILE
:= ARV4520PW
236 DEVICE_TITLE
:= Easybox
800, WAV-281
- ARV4520PW
237 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube \
238 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
239 kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \
240 ltq-adsl-app ppp-mod-pppoa \
241 kmod-rt61-pci wpad-mini \
244 TARGET_DEVICES
+= ARV4520PW
246 define Device
/ARV4525PW
247 DEVICE_PROFILE
:= ARV4525PW
249 DEVICE_TITLE
:= Speedport W502V Typ A
- ARV4525PW
250 DEVICE_PACKAGES
:= kmod-ath5k wpad-mini \
251 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
252 kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \
253 ltq-adsl-app ppp-mod-pppoa
255 TARGET_DEVICES
+= ARV4525PW
257 define Device
/ARV452CQW
258 DEVICE_PROFILE
:= ARV452CQW
260 DEVICE_TITLE
:= Easybox
801 - ARV452CQW
261 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube \
262 kmod-ath5k wpad-mini \
263 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
264 kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \
265 ltq-adsl-app ppp-mod-pppoa \
268 TARGET_DEVICES
+= ARV452CQW
270 define Device
/ARV4518PWR01
271 DEVICE_PROFILE
:= ARV4518PWR01
273 DEVICE_TITLE
:= ARV4518PWR01
274 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
275 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
276 kmod-ltq-adsl-danube-fw-a kmod-ltq-atm-danube \
277 ltq-adsl-app ppp-mod-pppoa \
278 kmod-ath5k wpad-mini \
281 TARGET_DEVICES
+= ARV4518PWR01
283 define Device
/ARV4518PWR01A
284 DEVICE_PROFILE
:= ARV4518PWR01A
286 DEVICE_TITLE
:= ARV4518PWR01A
287 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
288 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
289 kmod-ltq-adsl-danube-fw-a kmod-ltq-atm-danube \
290 ltq-adsl-app ppp-mod-pppoa \
291 kmod-ath5k wpad-mini \
294 TARGET_DEVICES
+= ARV4518PWR01A
298 ifeq ($(SUBTARGET
),xway
)
301 DEVICE_BTHOMEHUBV2B_UBIFS_OPTS
:="-m 512 -e 15872 -c 1959"
302 DEVICE_BTHOMEHUBV2B_UBI_OPTS
:="-m 512 -p 16KiB -s 256"
304 Image
/BuildKernel
/Profile
/BTHOMEHUBV2B
=$(call Image
/BuildKernel
/Template
,BTHOMEHUBV2B
)
305 Image
/Build
/Profile
/BTHOMEHUBV2B
=$(call Image
/BuildNAND
/$(1),$(1),BTHOMEHUBV2B
)
307 define LegacyDevice
/BTHOMEHUBV2B
308 DEVICE_TITLE
:= BT Home Hub
2B
309 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
310 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
311 kmod-ltq-adsl-danube-fw-a kmod-ltq-atm-danube \
312 kmod-ltq-deu-danube \
313 ltq-adsl-app ppp-mod-pppoa \
314 kmod-ath9k wpad-mini \
317 LEGACY_DEVICES
+= BTHOMEHUBV2B
319 define Device
/EASY50712
320 DEVICE_PROFILE
:= EASY50712
322 DEVICE_TITLE
:= Lantiq Danube
- EASY50712
324 TARGET_DEVICES
+= EASY50712
326 define Device
/ACMP252
327 DEVICE_PROFILE
:= ACMP252
329 DEVICE_TITLE
:= AudioCodes MediaPack MP-252
330 DEVICE_PACKAGES
:= kmod-rt2x00-pci wpad-mini \
331 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
332 kmod-ltq-adsl-danube-fw-a kmod-ltq-ptm-danube \
335 TARGET_DEVICES
+= ACMP252
337 define Device
/ARV4510PW
338 DEVICE_PROFILE
:= ARV4510PW
340 DEVICE_TITLE
:= Wippies
, Elisa
- ARV4510PW
341 DEVICE_PACKAGES
:= kmod-ledtrig-usbdev kmod-usb2-pci kmod-usb-uhci \
342 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
343 kmod-ltq-adsl-danube-fw-a kmod-ltq-atm-danube \
344 ltq-adsl-app ppp-mod-pppoa \
345 kmod-ltq-tapi kmod-ltq-vmmc \
346 kmod-rt2800-pci kmod-ath5k wpad-mini \
349 TARGET_DEVICES
+= ARV4510PW
351 define Device
/ARV7525PW
352 DEVICE_PROFILE
:= ARV7525PW
354 DEVICE_TITLE
:= Speedport W303V Typ A
- ARV7525PW
355 DEVICE_PACKAGES
:= kmod-rt2800-pci wpad-mini \
356 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
357 kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \
358 ltq-adsl-app ppp-mod-pppoa
360 TARGET_DEVICES
+= ARV7525PW
362 define Device
/ARV4519PW
363 DEVICE_PROFILE
:= ARV4519PW
365 DEVICE_TITLE
:= Vodafone
, Pirelli
- ARV4519PW
366 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
367 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
368 kmod-ltq-adsl-danube-fw-a kmod-ltq-atm-danube \
369 ltq-adsl-app ppp-mod-pppoa \
372 TARGET_DEVICES
+= ARV4519PW
374 define Device
/ARV7510PW22
375 DEVICE_PROFILE
:= ARV7510PW22
377 DEVICE_TITLE
:= Astoria
- ARV7510PW22
378 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
379 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
380 kmod-ltq-adsl-danube-fw-a kmod-ltq-atm-danube \
381 ltq-adsl-app ppp-mod-pppoa \
382 kmod-ltq-tapi kmod-ltq-vmmc \
383 kmod-rt2800-pci wpad-mini \
384 kmod-usb-uhci kmod-usb2 kmod-usb2-pci \
387 TARGET_DEVICES
+= ARV7510PW22
389 define Device
/ARV7518PW
390 DEVICE_PROFILE
:= ARV7518PW
392 DEVICE_TITLE
:= Astoria
- ARV7518PW
393 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
394 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
395 kmod-ltq-adsl-danube-fw-a kmod-ltq-atm-danube \
396 ltq-adsl-app ppp-mod-pppoa \
397 kmod-ath9k wpad-mini \
400 TARGET_DEVICES
+= ARV7518PW
402 define Device
/ARV7519PW
403 DEVICE_PROFILE
:= ARV7519PW
405 DEVICE_TITLE
:= Astoria
- ARV7519PW
406 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
407 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
408 kmod-ltq-adsl-danube-fw-a kmod-ltq-atm-danube \
409 ltq-adsl-app ppp-mod-pppoa \
410 kmod-rt2800-pci wpad-mini \
413 TARGET_DEVICES
+= ARV7519PW
415 define Device
/ARV752DPW
416 DEVICE_PROFILE
:= ARV752DPW
418 DEVICE_TITLE
:= Easybox
802 - ARV752DPW
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-b kmod-ltq-atm-danube \
422 ltq-adsl-app ppp-mod-pppoa \
423 kmod-ltq-tapi kmod-ltq-vmmc \
424 kmod-rt2800-pci wpad-mini \
427 TARGET_DEVICES
+= ARV752DPW
429 define Device
/ARV752DPW22
430 DEVICE_PROFILE
:= ARV752DPW22
432 DEVICE_TITLE
:= Easybox
803 - ARV752DPW22
433 DEVICE_PACKAGES
:= kmod-usb2-pci kmod-usb-uhci kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
434 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
435 kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \
436 ltq-adsl-app ppp-mod-pppoa \
437 kmod-ltq-tapi kmod-ltq-vmmc \
438 kmod-rt2800-pci wpad-mini \
441 TARGET_DEVICES
+= ARV752DPW22
443 define Device
/ARV8539PW22
444 DEVICE_PROFILE
:= ARV8539PW22
446 DEVICE_TITLE
:= Speedport W504V Typ A
- ARV8539PW22
447 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube \
448 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
449 kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \
450 ltq-adsl-app ppp-mod-pppoa \
451 kmod-ath9k wpad-mini \
454 TARGET_DEVICES
+= ARV8539PW22
456 define Device
/GIGASX76X
457 DEVICE_PROFILE
:= GIGASX76X
459 DEVICE_TITLE
:= Gigaset sx76x
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-pppoe \
464 kmod-ath5k wpad-mini \
467 TARGET_DEVICES
+= GIGASX76X
472 DEVICE_BTHOMEHUBV3A_UBIFS_OPTS
:="-m 512 -e 15872 -c 1959"
473 DEVICE_BTHOMEHUBV3A_UBI_OPTS
:="-m 512 -p 16KiB -s 256"
475 Image
/BuildKernel
/Profile
/BTHOMEHUBV3A
=$(call Image
/BuildKernel
/Template
,BTHOMEHUBV3A
)
476 Image
/Build
/Profile
/BTHOMEHUBV3A
=$(call Image
/BuildNAND
/$(1),$(1),BTHOMEHUBV3A
)
478 define LegacyDevice
/BTHOMEHUBV3A
479 DEVICE_TITLE
:= BT Home Hub
3A
480 DEVICE_PACKAGES
:= kmod-usb-dwc2 kmod-ledtrig-usbdev \
481 kmod-ltq-adsl-ar9-mei kmod-ltq-adsl-ar9 \
482 kmod-ltq-adsl-ar9-fw-a kmod-ltq-atm-ar9 \
484 ltq-adsl-app ppp-mod-pppoa \
485 kmod-ath9k wpad-mini \
486 swconfig uboot-envtools
488 LEGACY_DEVICES
+= BTHOMEHUBV3A
490 Image
/BuildKernel
/Profile
/DGN3500
=$(call Image
/BuildKernel
/Template
,DGN3500
)
491 Image
/Build
/Profile
/DGN3500
=$(call Image
/BuildDGN3500
/$(1),$(1),DGN3500
)
493 define LegacyDevice
/DGN3500
494 DEVICE_TITLE
:= Netgear DGN3500
495 DEVICE_PACKAGES
:= kmod-usb-dwc2 kmod-ledtrig-usbdev \
496 kmod-ath9k wpad-mini \
497 kmod-ltq-adsl-ar9-mei kmod-ltq-adsl-ar9 \
498 kmod-ltq-adsl-ar9-fw-a kmod-ltq-atm-ar9 \
499 ltq-adsl-app ppp-mod-pppoa \
500 kmod-ltq-deu-ar9 swconfig
502 LEGACY_DEVICES
+= DGN3500
504 Image
/BuildKernel
/Profile
/DGN3500B
=$(call Image
/BuildKernel
/Template
,DGN3500B
)
505 Image
/Build
/Profile
/DGN3500B
=$(call Image
/BuildDGN3500B
/$(1),$(1),DGN3500B
)
507 define LegacyDevice
/DGN3500B
508 DEVICE_TITLE
:= Netgear DGN3500B
509 DEVICE_PACKAGES
:= kmod-usb-dwc2 kmod-ledtrig-usbdev \
510 kmod-ath9k wpad-mini \
511 kmod-ltq-adsl-ar9-mei kmod-ltq-adsl-ar9 \
512 kmod-ltq-adsl-ar9-fw-b kmod-ltq-atm-ar9 \
513 ltq-adsl-app ppp-mod-pppoa \
514 kmod-ltq-deu-ar9 swconfig
516 LEGACY_DEVICES
+= DGN3500B
519 DEVICE_PROFILE
:= WBMRA
522 DEVICE_TITLE
:= Buffalo WBMR-HP-G300H
(A
) - WBMR
523 DEVICE_PACKAGES
:= kmod-usb-dwc2 kmod-ledtrig-usbdev \
524 kmod-ltq-adsl-ar9-mei kmod-ltq-adsl-ar9 \
525 kmod-ltq-adsl-ar9-fw-a kmod-ltq-atm-ar9 \
526 ltq-adsl-app ppp-mod-pppoa \
527 kmod-ath9k wpad hostapd-utils \
530 TARGET_DEVICES
+= WBMRA
533 DEVICE_PROFILE
:= WBMRB
536 DEVICE_TITLE
:= Buffalo WBMR-HP-G300H
(B
) - WBMR
537 DEVICE_PACKAGES
:= kmod-usb-dwc2 kmod-ledtrig-usbdev \
538 kmod-ltq-adsl-ar9-mei kmod-ltq-adsl-ar9 \
539 kmod-ltq-adsl-ar9-fw-b kmod-ltq-atm-ar9 \
540 ltq-adsl-app ppp-mod-pppoa \
541 kmod-ath9k wpad hostapd-utils \
544 TARGET_DEVICES
+= WBMRB
546 Image
/BuildKernel
/Profile
/FRITZ7320
=$(call Image
/BuildKernelEVA
/Template
,FRITZ7320
)
547 Image
/Build
/Profile
/FRITZ7320
=$(call Image
/BuildEVA
/$(1),$(1),FRITZ7320
)
549 define LegacyDevice
/FRITZ7320
550 DEVICE_TITLE
:= 1&1 HomeServer
- FRITZ7320
551 DEVICE_PACKAGES
:= kmod-ath9k wpad-mini \
552 kmod-ltq-adsl-ar9-mei kmod-ltq-adsl-ar9 \
553 kmod-ltq-adsl-ar9-fw-b kmod-ltq-atm-ar9 \
554 ltq-adsl-app ppp-mod-pppoa \
555 kmod-ltq-deu-ar9 kmod-usb-dwc2 \
558 LEGACY_DEVICES
+= FRITZ7320
561 DEVICE_PROFILE
:= H201L
563 DEVICE_TITLE
:= ZTE H201L
- H201L
564 DEVICE_PACKAGES
:= kmod-ath9k-htc wpad-mini \
565 kmod-ltq-adsl-ar9-mei kmod-ltq-adsl-ar9 \
566 kmod-ltq-adsl-ar9-fw-b kmod-ltq-atm-ar9 \
567 ltq-adsl-app ppp-mod-pppoe \
568 kmod-ltq-deu-ar9 kmod-usb-dwc2 \
569 kmod-ltq-tapi kmod-ltq-vmmc \
572 TARGET_DEVICES
+= H201L
574 define Device
/P2601HNFX
575 DEVICE_PROFILE
:= P2601HNFX
577 DEVICE_TITLE
:= ZyXEL P-2601HN-Fx
578 DEVICE_PACKAGES
:= kmod-rt2800-usb wpad-mini \
579 kmod-ltq-adsl-ar9-mei kmod-ltq-adsl-ar9 \
580 kmod-ltq-adsl-ar9-fw-b kmod-ltq-atm-ar9 \
581 ltq-adsl-app ppp-mod-pppoe \
582 kmod-ltq-deu-ar9 kmod-usb-dwc2 \
585 TARGET_DEVICES
+= P2601HNFX
591 ifeq ($(SUBTARGET
),xrx200
)
594 DEVICE_P2812HNUF1_UBIFS_OPTS
:="-m 2048 -e 126KiB -c 4096"
595 DEVICE_P2812HNUF1_UBI_OPTS
:="-m 2048 -p 128KiB -s 512"
597 Image
/BuildKernel
/Profile
/P2812HNUF1
=$(call Image
/BuildKernel
/Template
,P2812HNUF1
)
598 Image
/Build
/Profile
/P2812HNUF1
=$(call Image
/BuildNAND
/$(1),$(1),P2812HNUF1
)
600 define LegacyDevice
/P2812HNUF1
601 DEVICE_TITLE
:= ZyXEL P-2812HNU-F1
602 DEVICE_PACKAGES
:= kmod-rt2800-pci wpad-mini kmod-usb-dwc2
604 LEGACY_DEVICES
+= P2812HNUF1
606 DEVICE_P2812HNUF3_UBIFS_OPTS
:="-m 2048 -e 126KiB -c 4096"
607 DEVICE_P2812HNUF3_UBI_OPTS
:="-m 2048 -p 128KiB -s 512"
609 Image
/BuildKernel
/Profile
/P2812HNUF3
=$(call Image
/BuildKernel
/Template
,P2812HNUF3
)
610 Image
/Build
/Profile
/P2812HNUF3
=$(call Image
/BuildNAND
/$(1),$(1),P2812HNUF3
)
612 define LegacyDevice
/P2812HNUF3
613 DEVICE_TITLE
:= ZyXEL P-2812HNU-F3
614 DEVICE_PACKAGES
:= kmod-rt2800-pci wpad-mini kmod-usb-dwc2
616 LEGACY_DEVICES
+= P2812HNUF3
618 define Device
/ARV7519RW22
619 DEVICE_PROFILE
:= ARV7519RW22
621 DEVICE_TITLE
:= Livebox Astoria ARV7519RW22
622 DEVICE_PACKAGES
:= kmod-usb-dwc2
624 TARGET_DEVICES
+= ARV7519RW22
627 DEVICE_BTHOMEHUBV5A_UBIFS_OPTS
:="-m 2048 -e 126KiB -c 4096"
628 DEVICE_BTHOMEHUBV5A_UBI_OPTS
:="-m 2048 -p 128KiB -s 512"
630 Image
/BuildKernel
/Profile
/BTHOMEHUBV5A
=$(call Image
/BuildKernel
/Template
,BTHOMEHUBV5A
)
631 Image
/Build
/Profile
/BTHOMEHUBV5A
=$(call Image
/BuildNAND
/$(1),$(1),BTHOMEHUBV5A
)
633 define LegacyDevice
/BTHOMEHUBV5A
634 DEVICE_TITLE
:= BT Home Hub
5A
635 DEVICE_PACKAGES
:= kmod-ath9k kmod-ath10k wpad-mini kmod-usb-dwc2
637 LEGACY_DEVICES
+= BTHOMEHUBV5A
639 define Device
/EASY80920NAND
640 $(Device
/lantiqFullImage
)
641 DEVICE_PROFILE
:= EASY80920NAND
643 DEVICE_TITLE
:= Lantiq VR9
- EASY80920NAND
644 DEVICE_PACKAGES
:= kmod-ath9k wpad-mini kmod-usb-dwc2
646 TARGET_DEVICES
+= EASY80920NAND
648 define Device
/EASY80920NOR
649 DEVICE_PROFILE
:= EASY80920NOR
651 DEVICE_TITLE
:= Lantiq VR9
- EASY80920NOR
652 DEVICE_PACKAGES
:= kmod-ath9k wpad-mini kmod-usb-dwc2
654 TARGET_DEVICES
+= EASY80920NOR
657 DEVICE_FRITZ3370_UBIFS_OPTS
:="-m 2048 -e 126KiB -c 4096"
658 DEVICE_FRITZ3370_UBI_OPTS
:="-m 2048 -p 128KiB -s 512"
660 Image
/BuildKernel
/Profile
/FRITZ3370
=$(call Image
/BuildKernelEVA
/Template
,FRITZ3370
)
661 Image
/Build
/Profile
/FRITZ3370
=$(call Image
/BuildEVA
/$(1),$(1),FRITZ3370
)
663 define LegacyDevice
/FRITZ3370
664 DEVICE_TITLE
:= Fritz
!Box WLan
- FRITZ3370
665 DEVICE_PACKAGES
:= kmod-ath9k wpad-mini kmod-usb-dwc2
667 LEGACY_DEVICES
+= FRITZ3370
669 Image
/BuildKernel
/Profile
/FRITZ7360SL
=$(call Image
/BuildKernelEVA
/Template
,FRITZ7360SL
)
670 Image
/Build
/Profile
/FRITZ7360SL
=$(call Image
/BuildEVA
/$(1),$(1),FRITZ7360SL
)
672 define LegacyDevice
/FRITZ7360SL
673 DEVICE_TITLE
:= 1&1 HomeServer
- FRITZ7360SL
674 DEVICE_PACKAGES
:= kmod-ath9k wpad-mini kmod-usb-dwc2
676 LEGACY_DEVICES
+= FRITZ7360L
678 Image
/Prepare
/Profile
/VG3503J
=$(call Image
/Prepare
/Template
,VG3503J
)
679 Image
/BuildKernel
/Profile
/VG3503J
=$(call Image
/BuildKernelLoader
/Template
,VG3503J
)
680 Image
/Build
/Profile
/VG3503J
=$(call Image
/BuildLoader
/$(1),$(1),VG3503J
)
682 define LegacyDevice
/VG3503J
683 DEVICE_TITLE
:= BT Openreak
- ECI VDSL Modem
685 LEGACY_DEVICES
+= VG3503J
689 define Device
/WBMR300
690 DEVICE_PROFILE
:= WBMR300
692 DEVICE_TITLE
:= Buffalo WBMR-300HPD
693 DEVICE_PACKAGES
:= kmod-mt76 wpad-mini kmod-usb-dwc2
695 TARGET_DEVICES
+= WBMR300
697 define Device
/VGV7510KW22NOR
698 DEVICE_PROFILE
:= VGV7510KW22NOR
700 DEVICE_TITLE
:= o2 Box
6431 / Arcadyan VGV7510KW22
(NOR
)
701 DEVICE_PACKAGES
:= kmod-rt2800-pci wpad-mini kmod-usb-dwc2
703 TARGET_DEVICES
+= VGV7510KW22NOR
705 define Device
/VGV7510KW22BRN
706 $(Device
/lantiqBrnImage
)
707 DEVICE_PROFILE
:= VGV7510KW22BRN
709 SIGNATURE
:= 5D00008000
711 CRC32_POLY
:= 0x2083b8ed
712 DEVICE_TITLE
:= o2 Box
6431 / Arcadyan VGV7510KW22
(BRN
)
713 DEVICE_PACKAGES
:= kmod-rt2800-pci wpad-mini kmod-usb-dwc2
715 TARGET_DEVICES
+= VGV7510KW22BRN
717 define Device
/VGV7519NOR
718 DEVICE_PROFILE
:= VGV7519NOR
720 DEVICE_TITLE
:= Experiabox
8 VGV7519
721 DEVICE_PACKAGES
:= kmod-rt2800-pci wpad-mini kmod-usb-dwc2
723 TARGET_DEVICES
+= VGV7519NOR
725 define Device
/VGV7519BRN
726 $(Device
/lantiqBrnImage
)
727 DEVICE_PROFILE
:= VGV7519BRN
729 SIGNATURE
:= 5D00008000
731 CRC32_POLY
:= 0x2083b8ed
732 DEVICE_TITLE
:= Experiabox
8 VGV7519
(BRN
)
733 DEVICE_PACKAGES
:= kmod-rt2800-pci wpad-mini kmod-usb-dwc2
735 TARGET_DEVICES
+= VGV7519BRN
739 ifneq ($($(PROFILE
)_UBI_OPTS
),)
740 define Image
/BuildNAND
/squashfs
741 $(call prepare_generic_squashfs
,$(KDIR
)/root.
$(1))
742 $(call Image
/Build
/UbinizeImage
,$(2),,squashfs
,$($(PROFILE
)_UBI_OPTS
))
743 $(call Image
/Build
/SysupgradeNAND
,$(2),$(1),$(KDIR
)/uImage-
$(2))
746 define Image
/Build
/ubifs
747 $(CP
) $(KDIR
)/root.ubifs
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-rootfs.ubifs
750 define Image
/Build
/ubi
751 $(CP
) $(KDIR
)/root.ubi
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-rootfs.ubi
752 $(CP
) $(KDIR
)/root-overlay.ubi
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-rootfs-overlay.ubi
755 define Image
/BuildEVA
/ubi
756 $(CP
) $(KDIR
)/root.ubi
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-rootfs.ubi
757 $(CP
) $(KDIR
)/root-overlay.ubi
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-rootfs-overlay.ubi
760 ifneq ($($(PROFILE
)_UBIFS_OPTS
),)
761 define Image
/BuildNAND
/ubifs
762 $(call Image
/Build
/UbinizeImage
,$(2),,ubifs
,$($(PROFILE
)_UBI_OPTS
))
763 $(call Image
/Build
/SysupgradeNAND
,$(2),$(1),$(KDIR
)/uImage-
$(2))
766 define Image
/BuildEVA
/ubifs
767 $(CP
) $(KDIR
)/root.ubifs
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-rootfs.ubifs
772 define Image
/Prepare
/Profile
773 $(call Image
/Prepare
/Profile
/$(1))
776 define Image
/BuildKernel
/Profile
777 $(call Image
/BuildKernel
/Profile
/$(1))
780 define Image
/Build
/Profile
781 $(call Image
/Build
/Profile
/$(1),$(2))
784 $(eval
$(call BuildImage
))