oxnas: switch to new image generation template
[lede-git/.git] / target / linux / oxnas / image / Makefile
1 #
2 # Copyright (C) 2013-2016 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 include $(TOPDIR)/rules.mk
9 include $(INCLUDE_DIR)/image.mk
10
11 STG212_UBIFS_OPTS = -m 2048 -e 126KiB -c 4096
12 KD20_UBIFS_OPTS = -m 2048 -e 126KiB -c 4096
13 POGOPLUG_PRO_UBIFS_OPTS = -m 2048 -e 126KiB -c 4096
14 POGOPLUG_V3_UBIFS_OPTS = -m 2048 -e 126KiB -c 4096
15
16 DEVICE_VARS += DEVICE_DTS KERNEL_SIZE PAGESIZE BLOCKSIZE SUBPAGESIZE
17 DEVICE_VARS += KERNEL_IN_UBI UBOOTENV_IN_UBI UBIFS_OPTS
18
19 KERNEL_LOADADDR := 0x60008000
20 TARGET_DEVICES = kd20 pogoplug-pro pogoplug-v3 stg212
21
22 define Device/Default
23   KERNEL_DEPENDS = $$(wildcard $(DTS_DIR)/$$(DEVICE_DTS).dts)
24   KERNEL = kernel-bin | lzma | fit lzma $$(DTS_DIR)/$$(DEVICE_DTS).dtb
25   KERNEL_NAME := zImage
26   KERNEL_INITRAMFS = kernel-bin | lzma | fit lzma $$(DTS_DIR)/$$(DEVICE_DTS).dtb | ubootable
27   KERNEL_INITRAMFS_PREFIX = $$(IMAGE_PREFIX)-u-boot-initramfs
28   BLOCKSIZE := 128KiB
29   PAGESIZE := 2048
30   SUBPAGESIZE := 512
31   FILESYSTEMS := squashfs ubifs
32   PROFILES := Default
33   IMAGES := ubinized.bin sysupgrade.tar
34   IMAGE/ubinized.bin := append-ubi
35   IMAGE/sysupgrade.tar := sysupgrade-nand
36   KERNEL_IN_UBI := 1
37   UBOOTENV_IN_UBI := 1
38 endef
39
40
41 define Device/kd20
42   PROFILES := Default KD20
43   DEVICE_DTS := ox820-kd20
44 endef
45
46 define Device/pogoplug-pro
47   PROFILES := Default POGOPLUG_PRO
48   DEVICE_DTS := ox820-pogoplug-pro
49 endef
50
51 define Device/pogoplug-v3
52   PROFILES := Default POGOPLUG_V3
53   DEVICE_DTS := ox820-pogoplug-v3
54 endef
55
56 define Device/stg212
57   PROFILES := Default STG212
58   DEVICE_DTS := ox820-stg212
59 endef
60
61 VMLINUX:=$(BIN_DIR)/$(IMG_PREFIX)-vmlinux
62 UIMAGE:=$(BIN_DIR)/$(IMG_PREFIX)-uImage
63
64 define Build/ubootable
65         (dd if="$(KDIR)/u-boot.bin" bs=128k conv=sync; \
66          dd if="$@" bs=128k conv=sync ) >> $@.new
67         @mv "$@.new" "$@"
68 endef
69
70 define Image/BuildKernel
71         $(call Image/BuildKernel/Template/$(PROFILE))
72 endef
73
74 define Image/InstallKernel
75         $(call Image/InstallKernel/Template/$(PROFILE))
76 endef
77
78 define Image/Build
79         $(if $(Image/Build/$(1)), \
80                 $(call Image/Build/$(1),$(1)), \
81                 $(CP) $(KDIR)/root.$(1) $(BIN_DIR)/$(IMG_PREFIX)-$(PROFILE_SANITIZED)-$(1).img \
82         )
83 endef
84
85 $(eval $(call BuildImage))