2 # Copyright (C) 2017 Hauke Mehrtens
3 # Copyright (C) 2021 Daniel Golle
5 # This is free software, licensed under the GNU General Public License v2.
6 # See /LICENSE for more information.
9 include $(TOPDIR
)/rules.mk
11 PKG_NAME
:=arm-trusted-firmware-mediatek
12 PKG_RELEASE
:=$(AUTORELEASE
)
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
20 PKG_MAINTAINER
:=Daniel Golle
<daniel@makrotopia.org
>
22 PKG_LICENSE
+=proprietary
23 PKG_LICENSE_FILES
:=LICENCE.mediatek
25 BLOBS_TARBALL
:=tfa-mtk-files-for-2020-11-09.tgz
26 BROMIMAGE_EXEC
:=bromimage-x64
28 include $(INCLUDE_DIR
)/trusted-firmware-a.mk
29 include $(INCLUDE_DIR
)/package.mk
31 define Download
/tfa-files
32 URL
:=https
://codeload.github.com
/openwrt
/arm-trusted-firmware-mediatek-files
/tar.gz
/for-2020-11-09?
33 URL_FILE
:=$(BLOBS_TARBALL
)
34 FILE
:=$(BLOBS_TARBALL
)
35 HASH
:=689b097e4531d3eeca0c477675ab3dc3cace6ba4ed8a339116a9ede6537839d7
38 define Download
/mt7622-header-emmc
39 URL
:=https
://raw.githubusercontent.com
/frank-w
/BPI-R64-ATF
/a36efa5f7435b8079479d13b562fedc0aa0d42f0
40 URL_FILE
:=header_emmc.bin
41 FILE
:=mt7622-header_emmc.bin
42 HASH
:=0a09c55d90c5fc375c59468a4331555f77cbc3e1dd107ca83b5b8c9625f38d8c
45 define Download
/mt7622-header-sdmmc
46 URL
:=https
://raw.githubusercontent.com
/frank-w
/BPI-R64-ATF
/a36efa5f7435b8079479d13b562fedc0aa0d42f0
47 URL_FILE
:=header_sdmmc.bin
48 FILE
:=mt7622-header_sdmmc.bin
49 HASH
:=242908c04e25289d25ba9fab61a1930425af173051c43d275d1ac9877d6accb1
52 define Trusted-Firmware-A
/Default
53 BUILD_TARGET
:=mediatek
54 BUILD_SUBTARGET
:=mt7622
56 TFA_IMAGE
:=bl2.img bl31.bin
61 define Trusted-Firmware-A
/mt7622-nor-1ddr
62 NAME
:=MediaTek MT7622
(SPI-NOR
, 1x DDR3
)
67 define Trusted-Firmware-A
/mt7622-nor-2ddr
68 NAME
:=MediaTek MT7622
(SPI-NOR
, 2x DDR3
)
73 define Trusted-Firmware-A
/mt7622-snand-1ddr
74 NAME
:=MediaTek MT7622
(SPI-NAND
, 1x DDR3
)
79 define Trusted-Firmware-A
/mt7622-snand-2ddr
80 NAME
:=MediaTek MT7622
(SPI-SNAND
, 2x DDR3
)
85 define Trusted-Firmware-A
/mt7622-emmc-1ddr
86 NAME
:=MediaTek MT7622
(eMMC
, 1x DDR3
)
91 define Trusted-Firmware-A
/mt7622-emmc-2ddr
92 NAME
:=MediaTek MT7622
(eMMC
, 2x DDR3
)
97 define Trusted-Firmware-A
/mt7622-sdmmc-1ddr
98 NAME
:=MediaTek MT7622
(SDcard
, 1x DDR3
)
103 define Trusted-Firmware-A
/mt7622-sdmmc-2ddr
104 NAME
:=MediaTek MT7622
(SDcard
, 2x DDR3
)
119 TFA_MAKE_FLAGS
+= BOOT_DEVICE
=$(BOOT_DEVICE
) all
122 $(call Build
/Prepare
/Default
)
123 ifeq ($(BOOT_DEVICE
),emmc
)
124 $(eval
$(call Download
,mt7622-header-emmc
))
126 ifeq ($(BOOT_DEVICE
),sdmmc
)
127 $(eval
$(call Download
,mt7622-header-sdmmc
))
129 $(eval
$(call Download
,tfa-files
))
130 # replace 'bromimage' tool by static version
131 $(TAR
) -vxzf
$(DL_DIR
)/$(BLOBS_TARBALL
) --wildcards \
132 -O
"*/$(BROMIMAGE_EXEC)" > $(PKG_BUILD_DIR
)/tools
/mediatek
/bromimage
/bromimage
133 $(TAR
) -vxzf
$(DL_DIR
)/$(BLOBS_TARBALL
) --wildcards \
134 -C
$(PKG_BUILD_DIR
) \
135 --strip-components
=1 */LICENCE.mediatek
138 define Build
/Configure
139 $(call Build
/Configure
/Default
)
140 # replace DRAM calib blobs if needed (variant '2' is shipped upstream)
142 $(TAR
) -vxzf
$(DL_DIR
)/$(BLOBS_TARBALL
) --wildcards \
143 -C
$(PKG_BUILD_DIR
)/plat
/mediatek
/mt7622
/drivers
/dram
/release \
144 --strip-components
=1 */*.o
148 define Package
/trusted-firmware-a
/install
149 $(INSTALL_DIR
) $(STAGING_DIR_IMAGE
)
150 $(INSTALL_DATA
) $(PKG_BUILD_DIR
)/build
/mt7622
/release
/bl2.img
$(STAGING_DIR_IMAGE
)/$(BUILD_VARIANT
)-bl2.img
151 $(INSTALL_DATA
) $(PKG_BUILD_DIR
)/build
/mt7622
/release
/bl31.bin
$(STAGING_DIR_IMAGE
)/$(BUILD_VARIANT
)-bl31.bin
152 ifeq ($(BOOT_DEVICE
),emmc
)
153 $(INSTALL_DATA
) $(DL_DIR
)/mt7622-header_emmc.bin
$(STAGING_DIR_IMAGE
)/
155 ifeq ($(BOOT_DEVICE
),sdmmc
)
156 $(INSTALL_DATA
) $(DL_DIR
)/mt7622-header_sdmmc.bin
$(STAGING_DIR_IMAGE
)/
160 $(eval
$(call BuildPackage
/Trusted-Firmware-A
))