2 # Copyright (C) 2008-2011 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 JFFS2_BLOCKSIZE
= 64k
128k
256k
10 include $(TOPDIR
)/rules.mk
11 include $(INCLUDE_DIR
)/image.mk
13 IMAGE_PROFILE
:=$(if
$(PROFILE
),$(PROFILE
),Default
)
15 KERNEL_LOADADDR
= 0x80060000
17 DEVICE_VARS
+= NETGEAR_KERNEL_MAGIC NETGEAR_BOARD_ID NETGEAR_HW_ID CMDLINE CONSOLE IMAGE_SIZE BOARDNAME LOADER_FLASH_OFFS LOADER_TYPE
19 ifeq ($(SUBTARGET
),generic
)
23 include .
/legacy-devices.mk
25 ifeq ($(SUBTARGET
),nand
)
30 define Build
/netgear-squashfs
31 rm -rf
$@.fs
$@.squashfs
33 cp
$@
$@.fs
/image
/uImage
34 $(STAGING_DIR_HOST
)/bin
/mksquashfs-lzma \
36 -noappend
-root-owned
-be
-b
65536 \
37 $(if
$(SOURCE_DATE_EPOCH
),-fixed-time
$(SOURCE_DATE_EPOCH
))
39 dd if
=/dev
/zero bs
=1k count
=1 >> $@.squashfs
41 -A mips
-O linux
-T filesystem
-C none \
42 -M
$(NETGEAR_KERNEL_MAGIC
) \
43 -a
0xbf070000 -e
0xbf070000 \
44 -n
'MIPS OpenWrt Linux-$(LINUX_VERSION)' \
46 rm -rf
$@.squashfs
$@.fs
49 define Build
/netgear-uImage
50 $(call Build
/uImage
,$(1) -M
$(NETGEAR_KERNEL_MAGIC
))
53 define Build
/loader-common
55 $(MAKE
) -C lzma-loader \
56 PKG_BUILD_DIR
="$@.src" \
57 TARGET_DIR
="$(dir $@)" LOADER_NAME
="$(notdir $@)" \
58 BOARD
="$(BOARDNAME)" \
59 LZMA_TEXT_START
=0x80a00000 LOADADDR
=0x80060000 \
60 $(1) compile loader.
$(LOADER_TYPE
)
61 mv
"$@.$(LOADER_TYPE)" "$@"
65 define Build
/loader-okli-compile
66 $(call Build
/loader-common
,FLASH_OFFS
=$(LOADER_FLASH_OFFS
) FLASH_MAX
=0 KERNEL_CMDLINE
="$(CMDLINE)")
69 define Build
/loader-kernel
70 $(call Build
/loader-common
,LOADER_DATA
="$@")
73 define Build
/loader-kernel-cmdline
74 $(call Build
/loader-common
,LOADER_DATA
="$@" KERNEL_CMDLINE
="$(CMDLINE)")
77 define Build
/loader-okli
78 dd if
=$(KDIR
)/loader-
$(1).gz bs
=7680 conv
=sync of
="$@.new"
83 define Build
/copy-file
89 DEVICE_PROFILE
= $$(BOARDNAME
)
90 PROFILES
= Default Minimal
$$(DEVICE_PROFILE
)
93 FILESYSTEMS
= $(filter-out jffs2-
%,$(TARGET_FILESYSTEMS
)) jffs2-
$$(BLOCKSIZE
)
94 CONSOLE
= ttyS0
,115200
95 CMDLINE
= $$(if
$$(BOARDNAME
),board
=$$(BOARDNAME
)) $$(if
$$(MTDPARTS
),mtdparts
=$$(MTDPARTS
)) $$(if
$$(CONSOLE
),console
=$$(CONSOLE
))
96 KERNEL
:= kernel-bin | patch-cmdline | lzma | uImage lzma
98 IMAGES
:= sysupgrade.bin
99 IMAGE
/sysupgrade.bin
= append-kernel
$$$$(BLOCKSIZE
) | append-rootfs | pad-rootfs | check-size
$$$$(IMAGE_SIZE
)
102 $(eval
$(call BuildImage
))