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-spim-nand-4k-ddr4
195 NAME
:=MediaTek MT7986
(SPI-NAND via SPIM
, DDR4
)
196 BOOT_DEVICE
:=spim-nand
197 BUILD_SUBTARGET
:=filogic
200 NAND_TYPE
:=spim
:4k
+256
203 define Trusted-Firmware-A
/mt7986-nor-ddr3
204 NAME
:=MediaTek MT7986
(SPI-NOR
, DDR3
)
206 BUILD_SUBTARGET
:=filogic
211 define Trusted-Firmware-A
/mt7986-emmc-ddr3
212 NAME
:=MediaTek MT7986
(eMMC
, DDR3
)
214 BUILD_SUBTARGET
:=filogic
219 define Trusted-Firmware-A
/mt7986-sdmmc-ddr3
220 NAME
:=MediaTek MT7986
(SD card
, DDR3
)
222 BUILD_SUBTARGET
:=filogic
227 define Trusted-Firmware-A
/mt7986-snand-ddr3
228 NAME
:=MediaTek MT7986
(SPI-NAND via SNFI
, DDR3
)
230 BUILD_SUBTARGET
:=filogic
235 define Trusted-Firmware-A
/mt7986-spim-nand-ddr3
236 NAME
:=MediaTek MT7986
(SPI-NAND via SPIM
, DDR3
)
237 BOOT_DEVICE
:=spim-nand
238 BUILD_SUBTARGET
:=filogic
243 define Trusted-Firmware-A
/mt7988-nor-ddr3
244 NAME
:=MediaTek MT7988
(SPI-NOR
, DDR3
)
246 BUILD_SUBTARGET
:=filogic
251 define Trusted-Firmware-A
/mt7988-emmc-ddr3
252 NAME
:=MediaTek MT7988
(eMMC
, DDR3
)
254 BUILD_SUBTARGET
:=filogic
259 define Trusted-Firmware-A
/mt7988-sdmmc-ddr3
260 NAME
:=MediaTek MT7988
(SD card
, DDR3
)
262 BUILD_SUBTARGET
:=filogic
267 define Trusted-Firmware-A
/mt7988-snand-ddr3
268 NAME
:=MediaTek MT7988
(SPI-NAND via SNFI
, DDR3
)
270 BUILD_SUBTARGET
:=filogic
275 define Trusted-Firmware-A
/mt7988-spim-nand-ddr3
276 NAME
:=MediaTek MT7988
(SPI-NAND via SPIM
, DDR3
)
277 BOOT_DEVICE
:=spim-nand
278 BUILD_SUBTARGET
:=filogic
283 define Trusted-Firmware-A
/mt7988-nor-ddr4
284 NAME
:=MediaTek MT7988
(SPI-NOR
, DDR4
)
286 BUILD_SUBTARGET
:=filogic
291 define Trusted-Firmware-A
/mt7988-emmc-ddr4
292 NAME
:=MediaTek MT7988
(eMMC
, DDR4
)
294 BUILD_SUBTARGET
:=filogic
299 define Trusted-Firmware-A
/mt7988-sdmmc-ddr4
300 NAME
:=MediaTek MT7988
(SD card
, DDR4
)
302 BUILD_SUBTARGET
:=filogic
307 define Trusted-Firmware-A
/mt7988-snand-ddr4
308 NAME
:=MediaTek MT7988
(SPI-NAND via SNFI
, DDR4
)
310 BUILD_SUBTARGET
:=filogic
315 define Trusted-Firmware-A
/mt7988-spim-nand-ddr4
316 NAME
:=MediaTek MT7988
(SPI-NAND via SPIM
, DDR4
)
317 BOOT_DEVICE
:=spim-nand
318 BUILD_SUBTARGET
:=filogic
323 define Trusted-Firmware-A
/mt7988-nor-comb
324 NAME
:=MediaTek MT7988
(SPI-NOR
)
326 BUILD_SUBTARGET
:=filogic
331 define Trusted-Firmware-A
/mt7988-emmc-comb
332 NAME
:=MediaTek MT7988
(eMMC
)
334 BUILD_SUBTARGET
:=filogic
339 define Trusted-Firmware-A
/mt7988-sdmmc-comb
340 NAME
:=MediaTek MT7988
(SD card
)
342 BUILD_SUBTARGET
:=filogic
347 define Trusted-Firmware-A
/mt7988-snand-comb
348 NAME
:=MediaTek MT7988
(SPI-NAND via SNFI
)
350 BUILD_SUBTARGET
:=filogic
355 define Trusted-Firmware-A
/mt7988-spim-nand-comb
356 NAME
:=MediaTek MT7988
(SPI-NAND via SPIM
)
357 BOOT_DEVICE
:=spim-nand
358 BUILD_SUBTARGET
:=filogic
376 mt7981-spim-nand-ddr3 \
378 mt7981-spim-nand-ddr4 \
383 mt7986-spim-nand-ddr3 \
388 mt7986-spim-nand-ddr4 \
389 mt7986-spim-nand-4k-ddr4 \
394 mt7988-spim-nand-ddr3 \
399 mt7988-spim-nand-ddr4 \
404 mt7988-spim-nand-comb
407 BOOT_DEVICE
=$(BOOT_DEVICE
) \
408 USE_MKIMAGE
=1 MKIMAGE
=$(STAGING_DIR_HOST
)/bin
/mkimage \
409 $(if
$(findstring ddr4
,$(DDR_TYPE
)),DRAM_USE_DDR4
=1) \
410 $(if
$(BOARD_QFN
),BOARD_QFN
=1,BOARD_BGA
=1) \
411 $(if
$(NAND_TYPE
),NAND_TYPE
=$(NAND_TYPE
)) \
412 HAVE_DRAM_OBJ_FILE
=yes \
413 $(if
$(DDR3_FLYBY
),DDR3_FLYBY
=1) \
414 $(if
$(DRAM_USE_COMB
),DRAM_USE_COMB
=1) \
417 define Package
/trusted-firmware-a
/install
418 $(INSTALL_DIR
) $(STAGING_DIR_IMAGE
)
419 $(INSTALL_DATA
) $(PKG_BUILD_DIR
)/build
/$(PLAT
)/release
/bl2.img
$(STAGING_DIR_IMAGE
)/$(BUILD_VARIANT
)-bl2.img
420 $(INSTALL_DATA
) $(PKG_BUILD_DIR
)/build
/$(PLAT
)/release
/bl31.bin
$(STAGING_DIR_IMAGE
)/$(BUILD_VARIANT
)-bl31.bin
423 $(eval
$(call BuildPackage
/Trusted-Firmware-A
))