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
)
24 ifeq ($(SUBTARGET
),nand
)
29 define Build
/netgear-squashfs
30 rm -rf
$@.fs
$@.squashfs
32 cp
$@
$@.fs
/image
/uImage
33 $(STAGING_DIR_HOST
)/bin
/mksquashfs-lzma \
35 -noappend
-root-owned
-be
-b
65536 \
36 $(if
$(SOURCE_DATE_EPOCH
),-fixed-time
$(SOURCE_DATE_EPOCH
))
38 dd if
=/dev
/zero bs
=1k count
=1 >> $@.squashfs
40 -A mips
-O linux
-T filesystem
-C none \
41 -M
$(NETGEAR_KERNEL_MAGIC
) \
42 -a
0xbf070000 -e
0xbf070000 \
43 -n
'MIPS OpenWrt Linux-$(LINUX_VERSION)' \
45 rm -rf
$@.squashfs
$@.fs
48 define Build
/netgear-uImage
49 $(call Build
/uImage
,$(1) -M
$(NETGEAR_KERNEL_MAGIC
))
52 define Build
/loader-common
54 $(MAKE
) -C lzma-loader \
55 PKG_BUILD_DIR
="$@.src" \
56 TARGET_DIR
="$(dir $@)" LOADER_NAME
="$(notdir $@)" \
57 BOARD
="$(BOARDNAME)" \
58 LZMA_TEXT_START
=0x80a00000 LOADADDR
=0x80060000 \
59 $(1) compile loader.
$(LOADER_TYPE
)
60 mv
"$@.$(LOADER_TYPE)" "$@"
64 define Build
/loader-okli-compile
65 $(call Build
/loader-common
,FLASH_OFFS
=$(LOADER_FLASH_OFFS
) FLASH_MAX
=0 KERNEL_CMDLINE
="$(CMDLINE)")
68 define Build
/loader-kernel
69 $(call Build
/loader-common
,LOADER_DATA
="$@")
72 define Build
/loader-kernel-cmdline
73 $(call Build
/loader-common
,LOADER_DATA
="$@" KERNEL_CMDLINE
="$(CMDLINE)")
76 define Build
/loader-okli
77 dd if
=$(KDIR
)/loader-
$(1).gz bs
=7680 conv
=sync of
="$@.new"
82 define Build
/copy-file
88 DEVICE_PROFILE
= $$(BOARDNAME
)
89 PROFILES
= Default Minimal
$$(DEVICE_PROFILE
)
92 FILESYSTEMS
= $(filter-out jffs2-
%,$(TARGET_FILESYSTEMS
)) jffs2-
$$(BLOCKSIZE
)
93 CONSOLE
= ttyS0
,115200
94 CMDLINE
= $$(if
$$(BOARDNAME
),board
=$$(BOARDNAME
)) $$(if
$$(MTDPARTS
),mtdparts
=$$(MTDPARTS
)) $$(if
$$(CONSOLE
),console
=$$(CONSOLE
))
95 KERNEL
:= kernel-bin | patch-cmdline | lzma | uImage lzma
97 IMAGES
:= sysupgrade.bin
98 IMAGE
/sysupgrade.bin
= append-kernel
$$$$(BLOCKSIZE
) | append-rootfs | pad-rootfs | check-size
$$$$(IMAGE_SIZE
)
101 $(eval
$(call BuildImage
))