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
/ARV7506PW11
375 DEVICE_PROFILE
:= ARV7506PW11
377 DEVICE_TITLE
:= Alice
/O2 IAD
4421 - ARV7506PW11
378 DEVICE_PACKAGES
:= kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
379 kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \
380 ltq-adsl-app ppp-mod-pppoa \
381 kmod-rt2800-pci wpad-mini \
384 TARGET_DEVICES
+= ARV7506PW11
386 define Device
/ARV7510PW22
387 DEVICE_PROFILE
:= ARV7510PW22
389 DEVICE_TITLE
:= Astoria
- ARV7510PW22
390 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
391 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
392 kmod-ltq-adsl-danube-fw-a kmod-ltq-atm-danube \
393 ltq-adsl-app ppp-mod-pppoa \
394 kmod-ltq-tapi kmod-ltq-vmmc \
395 kmod-rt2800-pci wpad-mini \
396 kmod-usb-uhci kmod-usb2 kmod-usb2-pci \
399 TARGET_DEVICES
+= ARV7510PW22
401 define Device
/ARV7518PW
402 DEVICE_PROFILE
:= ARV7518PW
404 DEVICE_TITLE
:= Astoria
- ARV7518PW
405 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
406 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
407 kmod-ltq-adsl-danube-fw-a kmod-ltq-atm-danube \
408 ltq-adsl-app ppp-mod-pppoa \
409 kmod-ath9k wpad-mini \
412 TARGET_DEVICES
+= ARV7518PW
414 define Device
/ARV7519PW
415 DEVICE_PROFILE
:= ARV7519PW
417 DEVICE_TITLE
:= Astoria
- ARV7519PW
418 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
419 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
420 kmod-ltq-adsl-danube-fw-a kmod-ltq-atm-danube \
421 ltq-adsl-app ppp-mod-pppoa \
422 kmod-rt2800-pci wpad-mini \
425 TARGET_DEVICES
+= ARV7519PW
427 define Device
/ARV752DPW
428 DEVICE_PROFILE
:= ARV752DPW
430 DEVICE_TITLE
:= Easybox
802 - ARV752DPW
431 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
432 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
433 kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \
434 ltq-adsl-app ppp-mod-pppoa \
435 kmod-ltq-tapi kmod-ltq-vmmc \
436 kmod-rt2800-pci wpad-mini \
439 TARGET_DEVICES
+= ARV752DPW
441 define Device
/ARV752DPW22
442 DEVICE_PROFILE
:= ARV752DPW22
444 DEVICE_TITLE
:= Easybox
803 - ARV752DPW22
445 DEVICE_PACKAGES
:= kmod-usb2-pci kmod-usb-uhci kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
446 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
447 kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \
448 ltq-adsl-app ppp-mod-pppoa \
449 kmod-ltq-tapi kmod-ltq-vmmc \
450 kmod-rt2800-pci wpad-mini \
453 TARGET_DEVICES
+= ARV752DPW22
455 define Device
/ARV8539PW22
456 DEVICE_PROFILE
:= ARV8539PW22
458 DEVICE_TITLE
:= Speedport W504V Typ A
- ARV8539PW22
459 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube \
460 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
461 kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \
462 ltq-adsl-app ppp-mod-pppoa \
463 kmod-ath9k wpad-mini \
466 TARGET_DEVICES
+= ARV8539PW22
468 define Device
/GIGASX76X
469 DEVICE_PROFILE
:= GIGASX76X
471 DEVICE_TITLE
:= Gigaset sx76x
472 DEVICE_PACKAGES
:= kmod-ltq-hcd-danube kmod-ledtrig-usbdev \
473 kmod-ltq-adsl-danube-mei kmod-ltq-adsl-danube \
474 kmod-ltq-adsl-danube-fw-b kmod-ltq-atm-danube \
475 ltq-adsl-app ppp-mod-pppoe \
476 kmod-ath5k wpad-mini \
479 TARGET_DEVICES
+= GIGASX76X
484 DEVICE_BTHOMEHUBV3A_UBIFS_OPTS
:="-m 512 -e 15872 -c 1959"
485 DEVICE_BTHOMEHUBV3A_UBI_OPTS
:="-m 512 -p 16KiB -s 256"
487 Image
/BuildKernel
/Profile
/BTHOMEHUBV3A
=$(call Image
/BuildKernel
/Template
,BTHOMEHUBV3A
)
488 Image
/Build
/Profile
/BTHOMEHUBV3A
=$(call Image
/BuildNAND
/$(1),$(1),BTHOMEHUBV3A
)
490 define LegacyDevice
/BTHOMEHUBV3A
491 DEVICE_TITLE
:= BT Home Hub
3A
492 DEVICE_PACKAGES
:= kmod-usb-dwc2 kmod-ledtrig-usbdev \
493 kmod-ltq-adsl-ar9-mei kmod-ltq-adsl-ar9 \
494 kmod-ltq-adsl-ar9-fw-a kmod-ltq-atm-ar9 \
496 ltq-adsl-app ppp-mod-pppoa \
497 kmod-ath9k wpad-mini \
498 swconfig uboot-envtools
500 LEGACY_DEVICES
+= BTHOMEHUBV3A
502 Image
/BuildKernel
/Profile
/DGN3500
=$(call Image
/BuildKernel
/Template
,DGN3500
)
503 Image
/Build
/Profile
/DGN3500
=$(call Image
/BuildDGN3500
/$(1),$(1),DGN3500
)
505 define LegacyDevice
/DGN3500
506 DEVICE_TITLE
:= Netgear DGN3500
507 DEVICE_PACKAGES
:= kmod-usb-dwc2 kmod-ledtrig-usbdev \
508 kmod-ath9k wpad-mini \
509 kmod-ltq-adsl-ar9-mei kmod-ltq-adsl-ar9 \
510 kmod-ltq-adsl-ar9-fw-a kmod-ltq-atm-ar9 \
511 ltq-adsl-app ppp-mod-pppoa \
512 kmod-ltq-deu-ar9 swconfig
514 LEGACY_DEVICES
+= DGN3500
516 Image
/BuildKernel
/Profile
/DGN3500B
=$(call Image
/BuildKernel
/Template
,DGN3500B
)
517 Image
/Build
/Profile
/DGN3500B
=$(call Image
/BuildDGN3500B
/$(1),$(1),DGN3500B
)
519 define LegacyDevice
/DGN3500B
520 DEVICE_TITLE
:= Netgear DGN3500B
521 DEVICE_PACKAGES
:= kmod-usb-dwc2 kmod-ledtrig-usbdev \
522 kmod-ath9k wpad-mini \
523 kmod-ltq-adsl-ar9-mei kmod-ltq-adsl-ar9 \
524 kmod-ltq-adsl-ar9-fw-b kmod-ltq-atm-ar9 \
525 ltq-adsl-app ppp-mod-pppoa \
526 kmod-ltq-deu-ar9 swconfig
528 LEGACY_DEVICES
+= DGN3500B
531 DEVICE_PROFILE
:= WBMRA
534 DEVICE_TITLE
:= Buffalo WBMR-HP-G300H
(A
) - WBMR
535 DEVICE_PACKAGES
:= kmod-usb-dwc2 kmod-ledtrig-usbdev \
536 kmod-ltq-adsl-ar9-mei kmod-ltq-adsl-ar9 \
537 kmod-ltq-adsl-ar9-fw-a kmod-ltq-atm-ar9 \
538 ltq-adsl-app ppp-mod-pppoa \
539 kmod-ath9k wpad hostapd-utils \
542 TARGET_DEVICES
+= WBMRA
545 DEVICE_PROFILE
:= WBMRB
548 DEVICE_TITLE
:= Buffalo WBMR-HP-G300H
(B
) - WBMR
549 DEVICE_PACKAGES
:= kmod-usb-dwc2 kmod-ledtrig-usbdev \
550 kmod-ltq-adsl-ar9-mei kmod-ltq-adsl-ar9 \
551 kmod-ltq-adsl-ar9-fw-b kmod-ltq-atm-ar9 \
552 ltq-adsl-app ppp-mod-pppoa \
553 kmod-ath9k wpad hostapd-utils \
556 TARGET_DEVICES
+= WBMRB
558 Image
/BuildKernel
/Profile
/FRITZ7320
=$(call Image
/BuildKernelEVA
/Template
,FRITZ7320
)
559 Image
/Build
/Profile
/FRITZ7320
=$(call Image
/BuildEVA
/$(1),$(1),FRITZ7320
)
561 define LegacyDevice
/FRITZ7320
562 DEVICE_TITLE
:= 1&1 HomeServer
- FRITZ7320
563 DEVICE_PACKAGES
:= kmod-ath9k wpad-mini \
564 kmod-ltq-adsl-ar9-mei kmod-ltq-adsl-ar9 \
565 kmod-ltq-adsl-ar9-fw-b kmod-ltq-atm-ar9 \
566 ltq-adsl-app ppp-mod-pppoa \
567 kmod-ltq-deu-ar9 kmod-usb-dwc2 \
570 LEGACY_DEVICES
+= FRITZ7320
573 DEVICE_PROFILE
:= H201L
575 DEVICE_TITLE
:= ZTE H201L
- H201L
576 DEVICE_PACKAGES
:= kmod-ath9k-htc wpad-mini \
577 kmod-ltq-adsl-ar9-mei kmod-ltq-adsl-ar9 \
578 kmod-ltq-adsl-ar9-fw-b kmod-ltq-atm-ar9 \
579 ltq-adsl-app ppp-mod-pppoe \
580 kmod-ltq-deu-ar9 kmod-usb-dwc2 \
581 kmod-ltq-tapi kmod-ltq-vmmc \
584 TARGET_DEVICES
+= H201L
586 define Device
/P2601HNFX
587 DEVICE_PROFILE
:= P2601HNFX
589 DEVICE_TITLE
:= ZyXEL P-2601HN-Fx
590 DEVICE_PACKAGES
:= kmod-rt2800-usb wpad-mini \
591 kmod-ltq-adsl-ar9-mei kmod-ltq-adsl-ar9 \
592 kmod-ltq-adsl-ar9-fw-b kmod-ltq-atm-ar9 \
593 ltq-adsl-app ppp-mod-pppoe \
594 kmod-ltq-deu-ar9 kmod-usb-dwc2 \
597 TARGET_DEVICES
+= P2601HNFX
603 ifeq ($(SUBTARGET
),xrx200
)
606 DEVICE_P2812HNUF1_UBIFS_OPTS
:="-m 2048 -e 126KiB -c 4096"
607 DEVICE_P2812HNUF1_UBI_OPTS
:="-m 2048 -p 128KiB -s 512"
609 Image
/BuildKernel
/Profile
/P2812HNUF1
=$(call Image
/BuildKernel
/Template
,P2812HNUF1
)
610 Image
/Build
/Profile
/P2812HNUF1
=$(call Image
/BuildNAND
/$(1),$(1),P2812HNUF1
)
612 define LegacyDevice
/P2812HNUF1
613 DEVICE_TITLE
:= ZyXEL P-2812HNU-F1
614 DEVICE_PACKAGES
:= kmod-rt2800-pci wpad-mini kmod-usb-dwc2
616 LEGACY_DEVICES
+= P2812HNUF1
618 DEVICE_P2812HNUF3_UBIFS_OPTS
:="-m 2048 -e 126KiB -c 4096"
619 DEVICE_P2812HNUF3_UBI_OPTS
:="-m 2048 -p 128KiB -s 512"
621 Image
/BuildKernel
/Profile
/P2812HNUF3
=$(call Image
/BuildKernel
/Template
,P2812HNUF3
)
622 Image
/Build
/Profile
/P2812HNUF3
=$(call Image
/BuildNAND
/$(1),$(1),P2812HNUF3
)
624 define LegacyDevice
/P2812HNUF3
625 DEVICE_TITLE
:= ZyXEL P-2812HNU-F3
626 DEVICE_PACKAGES
:= kmod-rt2800-pci wpad-mini kmod-usb-dwc2
628 LEGACY_DEVICES
+= P2812HNUF3
630 define Device
/ARV7519RW22
631 DEVICE_PROFILE
:= ARV7519RW22
633 DEVICE_TITLE
:= Livebox Astoria ARV7519RW22
634 DEVICE_PACKAGES
:= kmod-usb-dwc2
636 TARGET_DEVICES
+= ARV7519RW22
639 DEVICE_BTHOMEHUBV5A_UBIFS_OPTS
:="-m 2048 -e 126KiB -c 4096"
640 DEVICE_BTHOMEHUBV5A_UBI_OPTS
:="-m 2048 -p 128KiB -s 512"
642 Image
/BuildKernel
/Profile
/BTHOMEHUBV5A
=$(call Image
/BuildKernel
/Template
,BTHOMEHUBV5A
)
643 Image
/Build
/Profile
/BTHOMEHUBV5A
=$(call Image
/BuildNAND
/$(1),$(1),BTHOMEHUBV5A
)
645 define LegacyDevice
/BTHOMEHUBV5A
646 DEVICE_TITLE
:= BT Home Hub
5A
647 DEVICE_PACKAGES
:= kmod-ath9k kmod-ath10k wpad-mini kmod-usb-dwc2
649 LEGACY_DEVICES
+= BTHOMEHUBV5A
651 define Device
/EASY80920NAND
652 $(Device
/lantiqFullImage
)
653 DEVICE_PROFILE
:= EASY80920NAND
655 DEVICE_TITLE
:= Lantiq VR9
- EASY80920NAND
656 DEVICE_PACKAGES
:= kmod-ath9k wpad-mini kmod-usb-dwc2
658 TARGET_DEVICES
+= EASY80920NAND
660 define Device
/EASY80920NOR
661 DEVICE_PROFILE
:= EASY80920NOR
663 DEVICE_TITLE
:= Lantiq VR9
- EASY80920NOR
664 DEVICE_PACKAGES
:= kmod-ath9k wpad-mini kmod-usb-dwc2
666 TARGET_DEVICES
+= EASY80920NOR
669 DEVICE_FRITZ3370_UBIFS_OPTS
:="-m 2048 -e 126KiB -c 4096"
670 DEVICE_FRITZ3370_UBI_OPTS
:="-m 2048 -p 128KiB -s 512"
672 Image
/BuildKernel
/Profile
/FRITZ3370
=$(call Image
/BuildKernelEVA
/Template
,FRITZ3370
)
673 Image
/Build
/Profile
/FRITZ3370
=$(call Image
/BuildEVA
/$(1),$(1),FRITZ3370
)
675 define LegacyDevice
/FRITZ3370
676 DEVICE_TITLE
:= Fritz
!Box WLan
- FRITZ3370
677 DEVICE_PACKAGES
:= kmod-ath9k wpad-mini kmod-usb-dwc2
679 LEGACY_DEVICES
+= FRITZ3370
681 Image
/BuildKernel
/Profile
/FRITZ7360SL
=$(call Image
/BuildKernelEVA
/Template
,FRITZ7360SL
)
682 Image
/Build
/Profile
/FRITZ7360SL
=$(call Image
/BuildEVA
/$(1),$(1),FRITZ7360SL
)
684 define LegacyDevice
/FRITZ7360SL
685 DEVICE_TITLE
:= 1&1 HomeServer
- FRITZ7360SL
686 DEVICE_PACKAGES
:= kmod-ath9k wpad-mini kmod-usb-dwc2
688 LEGACY_DEVICES
+= FRITZ7360L
690 Image
/Prepare
/Profile
/VG3503J
=$(call Image
/Prepare
/Template
,VG3503J
)
691 Image
/BuildKernel
/Profile
/VG3503J
=$(call Image
/BuildKernelLoader
/Template
,VG3503J
)
692 Image
/Build
/Profile
/VG3503J
=$(call Image
/BuildLoader
/$(1),$(1),VG3503J
)
694 define LegacyDevice
/VG3503J
695 DEVICE_TITLE
:= BT Openreak
- ECI VDSL Modem
697 LEGACY_DEVICES
+= VG3503J
701 define Device
/WBMR300
702 DEVICE_PROFILE
:= WBMR300
704 DEVICE_TITLE
:= Buffalo WBMR-300HPD
705 DEVICE_PACKAGES
:= kmod-mt76 wpad-mini kmod-usb-dwc2
707 TARGET_DEVICES
+= WBMR300
709 define Device
/VGV7510KW22NOR
710 DEVICE_PROFILE
:= VGV7510KW22NOR
712 DEVICE_TITLE
:= o2 Box
6431 / Arcadyan VGV7510KW22
(NOR
)
713 DEVICE_PACKAGES
:= kmod-rt2800-pci wpad-mini kmod-usb-dwc2
715 TARGET_DEVICES
+= VGV7510KW22NOR
717 define Device
/VGV7510KW22BRN
718 $(Device
/lantiqBrnImage
)
719 DEVICE_PROFILE
:= VGV7510KW22BRN
721 SIGNATURE
:= 5D00008000
723 CRC32_POLY
:= 0x2083b8ed
724 DEVICE_TITLE
:= o2 Box
6431 / Arcadyan VGV7510KW22
(BRN
)
725 DEVICE_PACKAGES
:= kmod-rt2800-pci wpad-mini kmod-usb-dwc2
727 TARGET_DEVICES
+= VGV7510KW22BRN
729 define Device
/VGV7519NOR
730 DEVICE_PROFILE
:= VGV7519NOR
732 DEVICE_TITLE
:= Experiabox
8 VGV7519
733 DEVICE_PACKAGES
:= kmod-rt2800-pci wpad-mini kmod-usb-dwc2
735 TARGET_DEVICES
+= VGV7519NOR
737 define Device
/VGV7519BRN
738 $(Device
/lantiqBrnImage
)
739 DEVICE_PROFILE
:= VGV7519BRN
741 SIGNATURE
:= 5D00008000
743 CRC32_POLY
:= 0x2083b8ed
744 DEVICE_TITLE
:= Experiabox
8 VGV7519
(BRN
)
745 DEVICE_PACKAGES
:= kmod-rt2800-pci wpad-mini kmod-usb-dwc2
747 TARGET_DEVICES
+= VGV7519BRN
751 ifneq ($($(PROFILE
)_UBI_OPTS
),)
752 define Image
/BuildNAND
/squashfs
753 $(call prepare_generic_squashfs
,$(KDIR
)/root.
$(1))
754 $(call Image
/Build
/UbinizeImage
,$(2),,squashfs
,$($(PROFILE
)_UBI_OPTS
))
755 $(call Image
/Build
/SysupgradeNAND
,$(2),$(1),$(KDIR
)/uImage-
$(2))
758 define Image
/Build
/ubifs
759 $(CP
) $(KDIR
)/root.ubifs
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-rootfs.ubifs
762 define Image
/Build
/ubi
763 $(CP
) $(KDIR
)/root.ubi
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-rootfs.ubi
764 $(CP
) $(KDIR
)/root-overlay.ubi
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-rootfs-overlay.ubi
767 define Image
/BuildEVA
/ubi
768 $(CP
) $(KDIR
)/root.ubi
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-rootfs.ubi
769 $(CP
) $(KDIR
)/root-overlay.ubi
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-rootfs-overlay.ubi
772 ifneq ($($(PROFILE
)_UBIFS_OPTS
),)
773 define Image
/BuildNAND
/ubifs
774 $(call Image
/Build
/UbinizeImage
,$(2),,ubifs
,$($(PROFILE
)_UBI_OPTS
))
775 $(call Image
/Build
/SysupgradeNAND
,$(2),$(1),$(KDIR
)/uImage-
$(2))
778 define Image
/BuildEVA
/ubifs
779 $(CP
) $(KDIR
)/root.ubifs
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-rootfs.ubifs
784 define Image
/Prepare
/Profile
785 $(call Image
/Prepare
/Profile
/$(1))
788 define Image
/BuildKernel
/Profile
789 $(call Image
/BuildKernel
/Profile
/$(1))
792 define Image
/Build
/Profile
793 $(call Image
/Build
/Profile
/$(1),$(2))
796 $(eval
$(call BuildImage
))