1 include $(TOPDIR
)/rules.mk
2 include $(INCLUDE_DIR
)/image.mk
4 KERNEL_LOADADDR
= 0x80060000
6 DEVICE_VARS
+= LOADER_FLASH_OFFS LOADER_TYPE
7 DEVICE_VARS
+= LOADER_FLASH_MAX LOADER_KERNEL_MAGIC
8 DEVICE_VARS
+= NETGEAR_BOARD_ID NETGEAR_HW_ID
9 DEVICE_VARS
+= RAS_BOARD RAS_ROOTFS_SIZE RAS_VERSION
11 define Build
/loader-common
13 $(MAKE
) -C lzma-loader \
14 PKG_BUILD_DIR
="$@.src" \
15 TARGET_DIR
="$(dir $@)" LOADER_NAME
="$(notdir $@)" \
16 $(1) compile loader.
$(LOADER_TYPE
)
17 mv
"$@.$(LOADER_TYPE)" "$@"
21 define Build
/loader-kernel
22 $(call Build
/loader-common
, \
24 BOARD
="$(DEVICE_NAME)" )
27 define Build
/loader-okli-compile
28 $(call Build
/loader-common
, \
29 FLASH_OFFS
=$(LOADER_FLASH_OFFS
) \
30 FLASH_MAX
=$(LOADER_FLASH_MAX
) \
31 KERNEL_MAGIC
=$(LOADER_KERNEL_MAGIC
) \
32 BOARD
="$(DEVICE_NAME)" )
35 # Arguments: <output name> <kernel offset>
36 define Build
/loader-okli
37 dd if
=$(KDIR
)/loader-
$(word 1,$(1)).
$(LOADER_TYPE
) bs
=$(word 2,$(1)) conv
=sync of
="$@.new"
42 define Build
/append-loader-okli
43 cat
"$(KDIR)/loader-$(word 1,$(1)).$(LOADER_TYPE)" >> "$@"
46 define Build
/append-loader-okli-uimage
47 cat
"$(KDIR)/loader-$(word 1,$(1)).uImage" >> "$@"
50 define Build
/relocate-kernel
52 $(CP
) ..
/..
/generic
/image
/relocate
$@.relocate
53 $(MAKE
) -j1
-C
$@.relocate KERNEL_ADDR
=$(KERNEL_LOADADDR
) CROSS_COMPILE
=$(TARGET_CROSS
)
55 dd if
=$@.relocate
/loader.bin bs
=32 conv
=sync
&& \
56 perl
-e
'@s = stat("$@"); print pack("N", @s[7])' && \
65 DEVICE_DTS_DIR
:= ..
/dts
66 DEVICE_DTS
= $$(SOC
)_
$(1)
70 KERNEL
:= kernel-bin | append-dtb | lzma | uImage lzma
71 KERNEL_INITRAMFS
:= kernel-bin | append-dtb | lzma | uImage lzma
72 LOADER_KERNEL_MAGIC
:=
77 IMAGES
:= sysupgrade.bin
78 IMAGE
/sysupgrade.bin
= append-kernel | pad-to
$$$$(BLOCKSIZE
) | \
79 append-rootfs | pad-rootfs | check-size | append-metadata
82 define Device
/loader-okli-uimage
84 COMPILE
:= loader-
$(1).bin loader-
$(1).uImage
85 COMPILE
/loader-
$(1).bin
:= loader-okli-compile
86 COMPILE
/loader-
$(1).uImage
:= append-loader-okli
$(1) | pad-to
64k | \
90 include $(SUBTARGET
).mk
92 ifeq ($(SUBTARGET
),generic
)
93 include generic-tp-link.mk
94 include generic-ubnt.mk
97 ifeq ($(SUBTARGET
),tiny
)
98 include tiny-netgear.mk
99 include tiny-tp-link.mk
103 $(eval
$(call BuildImage
))