2 # Copyright (C) 2017 Hauke Mehrtens
3 # Copyright (C) 2021-2023 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
15 PKG_SOURCE_URL
=https
://github.com
/mtk-openwrt
/arm-trusted-firmware.git
16 PKG_SOURCE_DATE
:=2023-10-13
17 PKG_SOURCE_VERSION
:=0ea67d76ae8be127c91caa3fcdf449b1fe533175
18 PKG_MIRROR_HASH
:=b102f6ffaa7cd2202161c44cab4d27f426d9d74c311ea9eb4d2f371ea2af4a2e
20 PKG_MAINTAINER
:=Daniel Golle
<daniel@makrotopia.org
>
22 include $(INCLUDE_DIR
)/kernel.mk
23 include $(INCLUDE_DIR
)/trusted-firmware-a.mk
24 include $(INCLUDE_DIR
)/package.mk
26 define Trusted-Firmware-A
/Default
27 BUILD_TARGET
:=mediatek
28 TFA_IMAGE
:=bl2.img bl31.bin
37 define Trusted-Firmware-A
/mt7622-nor-1ddr
38 NAME
:=MediaTek MT7622
(SPI-NOR
, 1x DDR3
)
39 BUILD_SUBTARGET
:=mt7622
44 define Trusted-Firmware-A
/mt7622-nor-2ddr
45 NAME
:=MediaTek MT7622
(SPI-NOR
, 2x DDR3
)
46 BUILD_SUBTARGET
:=mt7622
52 define Trusted-Firmware-A
/mt7622-snand-1ddr
53 NAME
:=MediaTek MT7622
(SPI-NAND
, 1x DDR3
)
54 BUILD_SUBTARGET
:=mt7622
59 define Trusted-Firmware-A
/mt7622-snand-2ddr
60 NAME
:=MediaTek MT7622
(SPI-NAND
, 2x DDR3
)
61 BUILD_SUBTARGET
:=mt7622
67 define Trusted-Firmware-A
/mt7622-emmc-1ddr
68 NAME
:=MediaTek MT7622
(eMMC
, 1x DDR3
)
69 BUILD_SUBTARGET
:=mt7622
74 define Trusted-Firmware-A
/mt7622-emmc-2ddr
75 NAME
:=MediaTek MT7622
(eMMC
, 2x DDR3
)
76 BUILD_SUBTARGET
:=mt7622
82 define Trusted-Firmware-A
/mt7622-sdmmc-1ddr
83 NAME
:=MediaTek MT7622
(SD card
, 1x DDR3
)
84 BUILD_SUBTARGET
:=mt7622
89 define Trusted-Firmware-A
/mt7622-sdmmc-2ddr
90 NAME
:=MediaTek MT7622
(SD card
, 2x DDR3
)
91 BUILD_SUBTARGET
:=mt7622
97 define Trusted-Firmware-A
/mt7981-emmc-ddr4
98 NAME
:=MediaTek MT7981
(eMMC
, DDR4
)
100 BUILD_SUBTARGET
:=filogic
105 define Trusted-Firmware-A
/mt7981-spim-nand-ddr4
106 NAME
:=MediaTek MT7981
(SPI-NAND via SPIM
, DDR4
)
107 BOOT_DEVICE
:=spim-nand
108 BUILD_SUBTARGET
:=filogic
113 define Trusted-Firmware-A
/mt7981-nor-ddr3
114 NAME
:=MediaTek MT7981
(SPI-NOR
, DDR3
)
116 BUILD_SUBTARGET
:=filogic
121 define Trusted-Firmware-A
/mt7981-emmc-ddr3
122 NAME
:=MediaTek MT7981
(eMMC
, DDR3
)
124 BUILD_SUBTARGET
:=filogic
129 define Trusted-Firmware-A
/mt7981-sdmmc-ddr3
130 NAME
:=MediaTek MT7981
(SD card
, DDR3
)
132 BUILD_SUBTARGET
:=filogic
137 define Trusted-Firmware-A
/mt7981-snand-ddr3
138 NAME
:=MediaTek MT7981
(SPI-NAND via SNFI
, DDR3
)
140 BUILD_SUBTARGET
:=filogic
145 define Trusted-Firmware-A
/mt7981-spim-nand-ddr3
146 NAME
:=MediaTek MT7981
(SPI-NAND via SPIM
, DDR3
)
147 BOOT_DEVICE
:=spim-nand
148 BUILD_SUBTARGET
:=filogic
153 define Trusted-Firmware-A
/mt7986-nor-ddr4
154 NAME
:=MediaTek MT7986
(SPI-NOR
, DDR4
)
156 BUILD_SUBTARGET
:=filogic
161 define Trusted-Firmware-A
/mt7986-emmc-ddr4
162 NAME
:=MediaTek MT7986
(eMMC
, DDR4
)
164 BUILD_SUBTARGET
:=filogic
169 define Trusted-Firmware-A
/mt7986-sdmmc-ddr4
170 NAME
:=MediaTek MT7986
(SD card
, DDR4
)
172 BUILD_SUBTARGET
:=filogic
177 define Trusted-Firmware-A
/mt7986-snand-ddr4
178 NAME
:=MediaTek MT7986
(SPI-NAND via SNFI
, DDR4
)
180 BUILD_SUBTARGET
:=filogic
185 define Trusted-Firmware-A
/mt7986-spim-nand-ddr4
186 NAME
:=MediaTek MT7986
(SPI-NAND via SPIM
, DDR4
)
187 BOOT_DEVICE
:=spim-nand
188 BUILD_SUBTARGET
:=filogic
191 NAND_TYPE
:=spim
:2k
+64
194 define Trusted-Firmware-A
/mt7986-nor-ddr3
195 NAME
:=MediaTek MT7986
(SPI-NOR
, DDR3
)
197 BUILD_SUBTARGET
:=filogic
202 define Trusted-Firmware-A
/mt7986-emmc-ddr3
203 NAME
:=MediaTek MT7986
(eMMC
, DDR3
)
205 BUILD_SUBTARGET
:=filogic
210 define Trusted-Firmware-A
/mt7986-sdmmc-ddr3
211 NAME
:=MediaTek MT7986
(SD card
, DDR3
)
213 BUILD_SUBTARGET
:=filogic
218 define Trusted-Firmware-A
/mt7986-snand-ddr3
219 NAME
:=MediaTek MT7986
(SPI-NAND via SNFI
, DDR3
)
221 BUILD_SUBTARGET
:=filogic
226 define Trusted-Firmware-A
/mt7986-spim-nand-ddr3
227 NAME
:=MediaTek MT7986
(SPI-NAND via SPIM
, DDR3
)
228 BOOT_DEVICE
:=spim-nand
229 BUILD_SUBTARGET
:=filogic
234 define Trusted-Firmware-A
/mt7988-nor-ddr3
235 NAME
:=MediaTek MT7988
(SPI-NOR
, DDR3
)
237 BUILD_SUBTARGET
:=filogic
242 define Trusted-Firmware-A
/mt7988-emmc-ddr3
243 NAME
:=MediaTek MT7988
(eMMC
, DDR3
)
245 BUILD_SUBTARGET
:=filogic
250 define Trusted-Firmware-A
/mt7988-sdmmc-ddr3
251 NAME
:=MediaTek MT7988
(SD card
, DDR3
)
253 BUILD_SUBTARGET
:=filogic
258 define Trusted-Firmware-A
/mt7988-snand-ddr3
259 NAME
:=MediaTek MT7988
(SPI-NAND via SNFI
, DDR3
)
261 BUILD_SUBTARGET
:=filogic
266 define Trusted-Firmware-A
/mt7988-spim-nand-ddr3
267 NAME
:=MediaTek MT7988
(SPI-NAND via SPIM
, DDR3
)
268 BOOT_DEVICE
:=spim-nand
269 BUILD_SUBTARGET
:=filogic
274 define Trusted-Firmware-A
/mt7988-nor-ddr4
275 NAME
:=MediaTek MT7988
(SPI-NOR
, DDR4
)
277 BUILD_SUBTARGET
:=filogic
282 define Trusted-Firmware-A
/mt7988-emmc-ddr4
283 NAME
:=MediaTek MT7988
(eMMC
, DDR4
)
285 BUILD_SUBTARGET
:=filogic
290 define Trusted-Firmware-A
/mt7988-sdmmc-ddr4
291 NAME
:=MediaTek MT7988
(SD card
, DDR4
)
293 BUILD_SUBTARGET
:=filogic
298 define Trusted-Firmware-A
/mt7988-snand-ddr4
299 NAME
:=MediaTek MT7988
(SPI-NAND via SNFI
, DDR4
)
301 BUILD_SUBTARGET
:=filogic
306 define Trusted-Firmware-A
/mt7988-spim-nand-ddr4
307 NAME
:=MediaTek MT7988
(SPI-NAND via SPIM
, DDR4
)
308 BOOT_DEVICE
:=spim-nand
309 BUILD_SUBTARGET
:=filogic
314 define Trusted-Firmware-A
/mt7988-nor-comb
315 NAME
:=MediaTek MT7988
(SPI-NOR
)
317 BUILD_SUBTARGET
:=filogic
322 define Trusted-Firmware-A
/mt7988-emmc-comb
323 NAME
:=MediaTek MT7988
(eMMC
)
325 BUILD_SUBTARGET
:=filogic
330 define Trusted-Firmware-A
/mt7988-sdmmc-comb
331 NAME
:=MediaTek MT7988
(SD card
)
333 BUILD_SUBTARGET
:=filogic
338 define Trusted-Firmware-A
/mt7988-snand-comb
339 NAME
:=MediaTek MT7988
(SPI-NAND via SNFI
)
341 BUILD_SUBTARGET
:=filogic
346 define Trusted-Firmware-A
/mt7988-spim-nand-comb
347 NAME
:=MediaTek MT7988
(SPI-NAND via SPIM
)
348 BOOT_DEVICE
:=spim-nand
349 BUILD_SUBTARGET
:=filogic
367 mt7981-spim-nand-ddr3 \
369 mt7981-spim-nand-ddr4 \
374 mt7986-spim-nand-ddr3 \
379 mt7986-spim-nand-ddr4 \
384 mt7988-spim-nand-ddr3 \
389 mt7988-spim-nand-ddr4 \
394 mt7988-spim-nand-comb
397 BOOT_DEVICE
=$(BOOT_DEVICE
) \
398 USE_MKIMAGE
=1 MKIMAGE
=$(STAGING_DIR_HOST
)/bin
/mkimage \
399 $(if
$(findstring ddr4
,$(DDR_TYPE
)),DRAM_USE_DDR4
=1) \
400 $(if
$(BOARD_QFN
),BOARD_QFN
=1,BOARD_BGA
=1) \
401 $(if
$(NAND_TYPE
),NAND_TYPE
=$(NAND_TYPE
)) \
402 HAVE_DRAM_OBJ_FILE
=yes \
403 $(if
$(DDR3_FLYBY
),DDR3_FLYBY
=1) \
404 $(if
$(DRAM_USE_COMB
),DRAM_USE_COMB
=1) \
407 define Package
/trusted-firmware-a
/install
408 $(INSTALL_DIR
) $(STAGING_DIR_IMAGE
)
409 $(INSTALL_DATA
) $(PKG_BUILD_DIR
)/build
/$(PLAT
)/release
/bl2.img
$(STAGING_DIR_IMAGE
)/$(BUILD_VARIANT
)-bl2.img
410 $(INSTALL_DATA
) $(PKG_BUILD_DIR
)/build
/$(PLAT
)/release
/bl31.bin
$(STAGING_DIR_IMAGE
)/$(BUILD_VARIANT
)-bl31.bin
413 $(eval
$(call BuildPackage
/Trusted-Firmware-A
))