arm-trusted-firmware-mediatek: correct location of PKG_LICENSE
[openwrt/staging/rmilecki.git] / package / boot / arm-trusted-firmware-mediatek / Makefile
1 #
2 # Copyright (C) 2017 Hauke Mehrtens
3 # Copyright (C) 2021 Daniel Golle
4 #
5 # This is free software, licensed under the GNU General Public License v2.
6 # See /LICENSE for more information.
7 #
8
9 include $(TOPDIR)/rules.mk
10
11 PKG_NAME:=arm-trusted-firmware-mediatek
12 PKG_RELEASE:=$(AUTORELEASE)
13
14 PKG_SOURCE_PROTO:=git
15 PKG_SOURCE_URL=https://github.com/mtk-openwrt/arm-trusted-firmware.git
16 PKG_SOURCE_DATE:=2020-11-09
17 PKG_SOURCE_VERSION:=03017334ccd8c0fac12e7db36749b95b9a7d745f
18 PKG_MIRROR_HASH:=b211b2f9143d4debc7ad8dc959cb606888af20af790855dd66c87e451b6a1bc7
19
20 PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org>
21
22 PKG_LICENSE_FILES:=LICENCE.mediatek
23
24 BLOBS_TARBALL:=tfa-mtk-files-for-2020-11-09.tgz
25 BROMIMAGE_EXEC:=bromimage-x64
26
27 include $(INCLUDE_DIR)/trusted-firmware-a.mk
28 include $(INCLUDE_DIR)/package.mk
29
30 PKG_LICENSE+=proprietary
31
32 define Download/tfa-files
33 URL:=@OPENWRT
34 URL_FILE:=$(BLOBS_TARBALL)
35 FILE:=$(BLOBS_TARBALL)
36 HASH:=689b097e4531d3eeca0c477675ab3dc3cace6ba4ed8a339116a9ede6537839d7
37 endef
38
39 define Download/mt7622-header-emmc
40 URL:=https://raw.githubusercontent.com/frank-w/BPI-R64-ATF/a36efa5f7435b8079479d13b562fedc0aa0d42f0
41 URL_FILE:=header_emmc.bin
42 FILE:=mt7622-header_emmc.bin
43 HASH:=0a09c55d90c5fc375c59468a4331555f77cbc3e1dd107ca83b5b8c9625f38d8c
44 endef
45
46 define Download/mt7622-header-sdmmc
47 URL:=https://raw.githubusercontent.com/frank-w/BPI-R64-ATF/a36efa5f7435b8079479d13b562fedc0aa0d42f0
48 URL_FILE:=header_sdmmc.bin
49 FILE:=mt7622-header_sdmmc.bin
50 HASH:=242908c04e25289d25ba9fab61a1930425af173051c43d275d1ac9877d6accb1
51 endef
52
53 define Trusted-Firmware-A/Default
54 BUILD_TARGET:=mediatek
55 BUILD_SUBTARGET:=mt7622
56 PLAT:=mt7622
57 TFA_IMAGE:=bl2.img bl31.bin
58 BOOT_DEVICE:=
59 DDR_BLOB:=
60 endef
61
62 define Trusted-Firmware-A/mt7622-nor-1ddr
63 NAME:=MediaTek MT7622 (SPI-NOR, 1x DDR3)
64 BOOT_DEVICE:=nor
65 DDR_BLOB:=1
66 endef
67
68 define Trusted-Firmware-A/mt7622-nor-2ddr
69 NAME:=MediaTek MT7622 (SPI-NOR, 2x DDR3)
70 BOOT_DEVICE:=nor
71 DDR_BLOB:=2
72 endef
73
74 define Trusted-Firmware-A/mt7622-snand-1ddr
75 NAME:=MediaTek MT7622 (SPI-NAND, 1x DDR3)
76 BOOT_DEVICE:=snand
77 DDR_BLOB:=1
78 endef
79
80 define Trusted-Firmware-A/mt7622-snand-2ddr
81 NAME:=MediaTek MT7622 (SPI-SNAND, 2x DDR3)
82 BOOT_DEVICE:=snand
83 DDR_BLOB:=2
84 endef
85
86 define Trusted-Firmware-A/mt7622-emmc-1ddr
87 NAME:=MediaTek MT7622 (eMMC, 1x DDR3)
88 BOOT_DEVICE:=emmc
89 DDR_BLOB:=1
90 endef
91
92 define Trusted-Firmware-A/mt7622-emmc-2ddr
93 NAME:=MediaTek MT7622 (eMMC, 2x DDR3)
94 BOOT_DEVICE:=emmc
95 DDR_BLOB:=2
96 endef
97
98 define Trusted-Firmware-A/mt7622-sdmmc-1ddr
99 NAME:=MediaTek MT7622 (SDcard, 1x DDR3)
100 BOOT_DEVICE:=sdmmc
101 DDR_BLOB:=1
102 endef
103
104 define Trusted-Firmware-A/mt7622-sdmmc-2ddr
105 NAME:=MediaTek MT7622 (SDcard, 2x DDR3)
106 BOOT_DEVICE:=sdmmc
107 DDR_BLOB:=2
108 endef
109
110 TFA_TARGETS:= \
111 mt7622-nor-1ddr \
112 mt7622-nor-2ddr \
113 mt7622-snand-1ddr \
114 mt7622-snand-2ddr \
115 mt7622-emmc-1ddr \
116 mt7622-emmc-2ddr \
117 mt7622-sdmmc-1ddr \
118 mt7622-sdmmc-2ddr
119
120 TFA_MAKE_FLAGS += BOOT_DEVICE=$(BOOT_DEVICE) all
121
122 define Build/Prepare
123 $(call Build/Prepare/Default)
124 ifeq ($(BOOT_DEVICE),emmc)
125 $(eval $(call Download,mt7622-header-emmc))
126 endif
127 ifeq ($(BOOT_DEVICE),sdmmc)
128 $(eval $(call Download,mt7622-header-sdmmc))
129 endif
130 $(eval $(call Download,tfa-files))
131 # replace 'bromimage' tool by static version
132 $(TAR) -vxzf $(DL_DIR)/$(BLOBS_TARBALL) --wildcards \
133 -O "*/$(BROMIMAGE_EXEC)" > $(PKG_BUILD_DIR)/tools/mediatek/bromimage/bromimage
134 $(TAR) -vxzf $(DL_DIR)/$(BLOBS_TARBALL) --wildcards \
135 -C $(PKG_BUILD_DIR) \
136 --strip-components=1 */LICENCE.mediatek
137 endef
138
139 define Build/Configure
140 $(call Build/Configure/Default)
141 # replace DRAM calib blobs if needed (variant '2' is shipped upstream)
142 ifeq ($(DDR_BLOB),1)
143 $(TAR) -vxzf $(DL_DIR)/$(BLOBS_TARBALL) --wildcards \
144 -C $(PKG_BUILD_DIR)/plat/mediatek/mt7622/drivers/dram/release \
145 --strip-components=1 */*.o
146 endif
147 endef
148
149 define Package/trusted-firmware-a/install
150 $(INSTALL_DIR) $(STAGING_DIR_IMAGE)
151 $(INSTALL_DATA) $(PKG_BUILD_DIR)/build/mt7622/release/bl2.img $(STAGING_DIR_IMAGE)/$(BUILD_VARIANT)-bl2.img
152 $(INSTALL_DATA) $(PKG_BUILD_DIR)/build/mt7622/release/bl31.bin $(STAGING_DIR_IMAGE)/$(BUILD_VARIANT)-bl31.bin
153 ifeq ($(BOOT_DEVICE),emmc)
154 $(INSTALL_DATA) $(DL_DIR)/mt7622-header_emmc.bin $(STAGING_DIR_IMAGE)/
155 endif
156 ifeq ($(BOOT_DEVICE),sdmmc)
157 $(INSTALL_DATA) $(DL_DIR)/mt7622-header_sdmmc.bin $(STAGING_DIR_IMAGE)/
158 endif
159 endef
160
161 $(eval $(call BuildPackage/Trusted-Firmware-A))