oxnas: add support for Akitio MyCloud mini
[openwrt.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 Default_UBIFS_OPTS = -m 2048 -e 126KiB -c 4096
12 STG212_UBIFS_OPTS = -m 2048 -e 126KiB -c 4096
13 KD20_UBIFS_OPTS = -m 2048 -e 126KiB -c 4096
14 POGOPLUG_PRO_UBIFS_OPTS = -m 2048 -e 126KiB -c 4096
15 POGOPLUG_V3_UBIFS_OPTS = -m 2048 -e 126KiB -c 4096
16
17 DEVICE_VARS += DEVICE_DTS KERNEL_SIZE PAGESIZE BLOCKSIZE SUBPAGESIZE
18 DEVICE_VARS += KERNEL_IN_UBI UBOOTENV_IN_UBI UBIFS_OPTS
19
20 KERNEL_LOADADDR := 0x60008000
21 TARGET_DEVICES = akitio kd20 pogoplug-pro pogoplug-v3 stg212
22
23 define Device/Default
24   KERNEL_DEPENDS = $$(wildcard $(DTS_DIR)/$$(DEVICE_DTS).dts)
25   KERNEL = kernel-bin | lzma | fit lzma $$(DTS_DIR)/$$(DEVICE_DTS).dtb
26   KERNEL_NAME := zImage
27   KERNEL_INITRAMFS = kernel-bin | lzma | fit lzma $$(DTS_DIR)/$$(DEVICE_DTS).dtb | ubootable
28   KERNEL_INITRAMFS_PREFIX = $$(IMAGE_PREFIX)-u-boot-initramfs
29   BLOCKSIZE := 128KiB
30   PAGESIZE := 2048
31   SUBPAGESIZE := 512
32   FILESYSTEMS := squashfs ubifs
33   PROFILES := Default
34   IMAGES := ubinized.bin sysupgrade.tar
35   IMAGE/ubinized.bin := append-ubi
36   IMAGE/sysupgrade.tar := sysupgrade-nand
37   KERNEL_IN_UBI := 1
38   UBOOTENV_IN_UBI := 1
39 endef
40
41 define Device/akitio
42   PROFILES := Default AKITIO
43   DEVICE_DTS := ox820-akitio
44 endef
45
46 define Device/kd20
47   PROFILES := Default KD20
48   DEVICE_DTS := ox820-kd20
49 endef
50
51 define Device/pogoplug-pro
52   PROFILES := Default POGOPLUG_PRO
53   DEVICE_DTS := ox820-pogoplug-pro
54 endef
55
56 define Device/pogoplug-v3
57   PROFILES := Default POGOPLUG_V3
58   DEVICE_DTS := ox820-pogoplug-v3
59 endef
60
61 define Device/stg212
62   PROFILES := Default STG212
63   DEVICE_DTS := ox820-stg212
64 endef
65
66 VMLINUX:=$(BIN_DIR)/$(IMG_PREFIX)-vmlinux
67 UIMAGE:=$(BIN_DIR)/$(IMG_PREFIX)-uImage
68
69 define Build/ubootable
70         (dd if="$(KDIR)/u-boot.bin" bs=128k conv=sync; \
71          dd if="$@" bs=128k conv=sync ) >> $@.new
72         @mv "$@.new" "$@"
73 endef
74
75 define Image/BuildKernel
76         $(call Image/BuildKernel/Template/$(PROFILE))
77 endef
78
79 define Image/InstallKernel
80         $(call Image/InstallKernel/Template/$(PROFILE))
81 endef
82
83 define Image/Build
84         $(if $(Image/Build/$(1)), \
85                 $(call Image/Build/$(1),$(1)), \
86                 $(CP) $(KDIR)/root.$(1) $(BIN_DIR)/$(IMG_PREFIX)-$(PROFILE_SANITIZED)-$(1).img \
87         )
88 endef
89
90 $(eval $(call BuildImage))