mediatek: fix sysupgrade on eMMC boards
[openwrt/openwrt.git] / target / linux / mediatek / image / Makefile
1 # Copyright (c) 2014 The Linux Foundation. All rights reserved.
2 #
3 include $(TOPDIR)/rules.mk
4 include $(INCLUDE_DIR)/image.mk
5
6 define Image/BuilduImage
7 $(CP) $(KDIR)/zImage$(2) $(KDIR)/zImage-$(1)$(2)
8 cat $(LINUX_DIR)/arch/arm/boot/dts/mt7623-$1.dtb >> $(KDIR)/zImage-$(1)$(2)
9 mkimage -A arm -O linux -T kernel -C none -a 0x80008000 -e 0x80008000 -n 'MIPS OpenWrt Linux-$(LINUX_VERSION)' -d $(KDIR)/zImage-$(1)$(2) $(KDIR)/uImage-$(1)$(2)
10 endef
11
12 define Image/Build/SysupgradeCombined
13 $(call Image/BuilduImage,$1)
14 ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
15 $(call Image/BuilduImage,$1,-initramfs)
16 $(CP) $(KDIR)/uImage-$(1)-initramfs $(BIN_DIR)/$(IMG_PREFIX)-uImage-$(1)-initramfs
17 endif
18 mkdir -p "$(KDIR_TMP)/sysupgrade-$(3)/"
19 echo "BOARD=$(3)" > "$(KDIR_TMP)/sysupgrade-$(3)/CONTROL"
20 $(CP) "$(KDIR)/root.$(2)" "$(KDIR_TMP)/sysupgrade-$(3)/root"
21 $(CP) "$(KDIR)/uImage-$(1)" "$(KDIR_TMP)/sysupgrade-$(3)/kernel"
22 (cd "$(KDIR_TMP)"; $(TAR) cvf \
23 "$(BIN_DIR)/$(IMG_PREFIX)-$(3)-sysupgrade.tar" sysupgrade-$(3) \
24 $(if $(SOURCE_DATE_EPOCH),--mtime="@$(SOURCE_DATE_EPOCH)") \
25 )
26 endef
27
28 COMPAT_EMMC:=mediatek,mt7623-rfb-emmc
29 COMPAT_NAND:=mediatek,mt7623-rfb-nand
30 COMPAT_NAND_EPHY:=mediatek,mt7623-rfb-nand-ephy
31
32 define Image/Build/squashfs
33 $(call prepare_generic_squashfs,$(KDIR)/root.squashfs)
34 $(CP) $(KDIR)/root.squashfs $(BIN_DIR)/$(IMG_PREFIX)-root.squashfs
35
36 $(call Image/Build/SysupgradeCombined,eMMC,squashfs,$$(COMPAT_EMMC))
37
38 $(call Image/BuilduImage,NAND)
39 $(call Image/BuilduImage,NAND-ePHY)
40 ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
41 $(call Image/BuilduImage,NAND,-initramfs)
42 $(call Image/BuilduImage,NAND-ePHY,-initramfs)
43 $(CP) $(KDIR)/uImage-NAND-initramfs $(BIN_DIR)/$(IMG_PREFIX)-uImage-NAND-initramfs
44 $(CP) $(KDIR)/uImage-NAND-ePHY-initramfs $(BIN_DIR)/$(IMG_PREFIX)-uImage-NAND-ePHY-initramfs
45 endif
46 $(call Image/Build/SysupgradeNAND,NAND,$(1),$(KDIR)/uImage-NAND,$$(COMPAT_NAND))
47 $(call Image/Build/SysupgradeNAND,NAND-ePHY,$(1),$(KDIR)/uImage-NAND-ePHY,$$(COMPAT_NAND_EPHY))
48 endef
49
50 define Image/Build
51 $(call Image/Build/$(1),$(1))
52 endef
53
54 $(eval $(call BuildImage))