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
38 define Trusted-Firmware-A
/mt7622-nor-1ddr
39 NAME
:=MediaTek MT7622
(SPI-NOR
, 1x DDR3
)
40 BUILD_SUBTARGET
:=mt7622
45 define Trusted-Firmware-A
/mt7622-nor-2ddr
46 NAME
:=MediaTek MT7622
(SPI-NOR
, 2x DDR3
)
47 BUILD_SUBTARGET
:=mt7622
53 define Trusted-Firmware-A
/mt7622-snand-1ddr
54 NAME
:=MediaTek MT7622
(SPI-NAND
, 1x DDR3
)
55 BUILD_SUBTARGET
:=mt7622
60 define Trusted-Firmware-A
/mt7622-snand-2ddr
61 NAME
:=MediaTek MT7622
(SPI-NAND
, 2x DDR3
)
62 BUILD_SUBTARGET
:=mt7622
68 define Trusted-Firmware-A
/mt7622-emmc-1ddr
69 NAME
:=MediaTek MT7622
(eMMC
, 1x DDR3
)
70 BUILD_SUBTARGET
:=mt7622
75 define Trusted-Firmware-A
/mt7622-emmc-2ddr
76 NAME
:=MediaTek MT7622
(eMMC
, 2x DDR3
)
77 BUILD_SUBTARGET
:=mt7622
83 define Trusted-Firmware-A
/mt7622-sdmmc-1ddr
84 NAME
:=MediaTek MT7622
(SD card
, 1x DDR3
)
85 BUILD_SUBTARGET
:=mt7622
90 define Trusted-Firmware-A
/mt7622-sdmmc-2ddr
91 NAME
:=MediaTek MT7622
(SD card
, 2x DDR3
)
92 BUILD_SUBTARGET
:=mt7622
98 define Trusted-Firmware-A
/mt7981-emmc-ddr4
99 NAME
:=MediaTek MT7981
(eMMC
, DDR4
)
101 BUILD_SUBTARGET
:=filogic
106 define Trusted-Firmware-A
/mt7981-spim-nand-ddr4
107 NAME
:=MediaTek MT7981
(SPI-NAND via SPIM
, DDR4
)
108 BOOT_DEVICE
:=spim-nand
109 BUILD_SUBTARGET
:=filogic
114 define Trusted-Firmware-A
/mt7981-nor-ddr3
115 NAME
:=MediaTek MT7981
(SPI-NOR
, DDR3
)
117 BUILD_SUBTARGET
:=filogic
122 define Trusted-Firmware-A
/mt7981-emmc-ddr3
123 NAME
:=MediaTek MT7981
(eMMC
, DDR3
)
125 BUILD_SUBTARGET
:=filogic
130 define Trusted-Firmware-A
/mt7981-sdmmc-ddr3
131 NAME
:=MediaTek MT7981
(SD card
, DDR3
)
133 BUILD_SUBTARGET
:=filogic
138 define Trusted-Firmware-A
/mt7981-snand-ddr3
139 NAME
:=MediaTek MT7981
(SPI-NAND via SNFI
, DDR3
)
141 BUILD_SUBTARGET
:=filogic
146 define Trusted-Firmware-A
/mt7981-spim-nand-ddr3
147 NAME
:=MediaTek MT7981
(SPI-NAND via SPIM
, DDR3
)
148 BOOT_DEVICE
:=spim-nand
149 BUILD_SUBTARGET
:=filogic
154 define Trusted-Firmware-A
/mt7986-nor-ddr4
155 NAME
:=MediaTek MT7986
(SPI-NOR
, DDR4
)
157 BUILD_SUBTARGET
:=filogic
162 define Trusted-Firmware-A
/mt7986-emmc-ddr4
163 NAME
:=MediaTek MT7986
(eMMC
, DDR4
)
165 BUILD_SUBTARGET
:=filogic
170 define Trusted-Firmware-A
/mt7986-sdmmc-ddr4
171 NAME
:=MediaTek MT7986
(SD card
, DDR4
)
173 BUILD_SUBTARGET
:=filogic
178 define Trusted-Firmware-A
/mt7986-snand-ddr4
179 NAME
:=MediaTek MT7986
(SPI-NAND via SNFI
, DDR4
)
181 BUILD_SUBTARGET
:=filogic
186 define Trusted-Firmware-A
/mt7986-spim-nand-ddr4
187 NAME
:=MediaTek MT7986
(SPI-NAND via SPIM
, DDR4
)
188 BOOT_DEVICE
:=spim-nand
189 BUILD_SUBTARGET
:=filogic
192 NAND_TYPE
:=spim
:2k
+64
195 define Trusted-Firmware-A
/mt7986-spim-nand-4k-ddr4
196 NAME
:=MediaTek MT7986
(SPI-NAND via SPIM
, DDR4
)
197 BOOT_DEVICE
:=spim-nand
198 BUILD_SUBTARGET
:=filogic
201 NAND_TYPE
:=spim
:4k
+256
204 define Trusted-Firmware-A
/mt7986-nor-ddr3
205 NAME
:=MediaTek MT7986
(SPI-NOR
, DDR3
)
207 BUILD_SUBTARGET
:=filogic
212 define Trusted-Firmware-A
/mt7986-emmc-ddr3
213 NAME
:=MediaTek MT7986
(eMMC
, DDR3
)
215 BUILD_SUBTARGET
:=filogic
220 define Trusted-Firmware-A
/mt7986-sdmmc-ddr3
221 NAME
:=MediaTek MT7986
(SD card
, DDR3
)
223 BUILD_SUBTARGET
:=filogic
228 define Trusted-Firmware-A
/mt7986-snand-ddr3
229 NAME
:=MediaTek MT7986
(SPI-NAND via SNFI
, DDR3
)
231 BUILD_SUBTARGET
:=filogic
236 define Trusted-Firmware-A
/mt7986-spim-nand-ddr3
237 NAME
:=MediaTek MT7986
(SPI-NAND via SPIM
, DDR3
)
238 BOOT_DEVICE
:=spim-nand
239 BUILD_SUBTARGET
:=filogic
244 define Trusted-Firmware-A
/mt7988-nor-ddr3
245 NAME
:=MediaTek MT7988
(SPI-NOR
, DDR3
)
247 BUILD_SUBTARGET
:=filogic
252 define Trusted-Firmware-A
/mt7988-emmc-ddr3
253 NAME
:=MediaTek MT7988
(eMMC
, DDR3
)
255 BUILD_SUBTARGET
:=filogic
260 define Trusted-Firmware-A
/mt7988-sdmmc-ddr3
261 NAME
:=MediaTek MT7988
(SD card
, DDR3
)
263 BUILD_SUBTARGET
:=filogic
268 define Trusted-Firmware-A
/mt7988-snand-ddr3
269 NAME
:=MediaTek MT7988
(SPI-NAND via SNFI
, DDR3
)
271 BUILD_SUBTARGET
:=filogic
276 define Trusted-Firmware-A
/mt7988-spim-nand-ddr3
277 NAME
:=MediaTek MT7988
(SPI-NAND via SPIM
, DDR3
)
278 BOOT_DEVICE
:=spim-nand
279 BUILD_SUBTARGET
:=filogic
284 define Trusted-Firmware-A
/mt7988-nor-ddr4
285 NAME
:=MediaTek MT7988
(SPI-NOR
, DDR4
)
287 BUILD_SUBTARGET
:=filogic
292 define Trusted-Firmware-A
/mt7988-emmc-ddr4
293 NAME
:=MediaTek MT7988
(eMMC
, DDR4
)
295 BUILD_SUBTARGET
:=filogic
300 define Trusted-Firmware-A
/mt7988-sdmmc-ddr4
301 NAME
:=MediaTek MT7988
(SD card
, DDR4
)
303 BUILD_SUBTARGET
:=filogic
308 define Trusted-Firmware-A
/mt7988-snand-ddr4
309 NAME
:=MediaTek MT7988
(SPI-NAND via SNFI
, DDR4
)
311 BUILD_SUBTARGET
:=filogic
316 define Trusted-Firmware-A
/mt7988-spim-nand-ddr4
317 NAME
:=MediaTek MT7988
(SPI-NAND via SPIM
, DDR4
)
318 BOOT_DEVICE
:=spim-nand
319 BUILD_SUBTARGET
:=filogic
324 define Trusted-Firmware-A
/mt7988-nor-comb
325 NAME
:=MediaTek MT7988
(SPI-NOR
)
327 BUILD_SUBTARGET
:=filogic
332 define Trusted-Firmware-A
/mt7988-emmc-comb
333 NAME
:=MediaTek MT7988
(eMMC
)
335 BUILD_SUBTARGET
:=filogic
340 define Trusted-Firmware-A
/mt7988-sdmmc-comb
341 NAME
:=MediaTek MT7988
(SD card
)
343 BUILD_SUBTARGET
:=filogic
348 define Trusted-Firmware-A
/mt7988-snand-comb
349 NAME
:=MediaTek MT7988
(SPI-NAND via SNFI
)
351 BUILD_SUBTARGET
:=filogic
356 define Trusted-Firmware-A
/mt7988-spim-nand-comb
357 NAME
:=MediaTek MT7988
(SPI-NAND via SPIM
)
358 BOOT_DEVICE
:=spim-nand
359 BUILD_SUBTARGET
:=filogic
377 mt7981-spim-nand-ddr3 \
379 mt7981-spim-nand-ddr4 \
384 mt7986-spim-nand-ddr3 \
389 mt7986-spim-nand-ddr4 \
390 mt7986-spim-nand-4k-ddr4 \
395 mt7988-spim-nand-ddr3 \
400 mt7988-spim-nand-ddr4 \
405 mt7988-spim-nand-comb
408 BOOT_DEVICE
=$(BOOT_DEVICE
) \
409 USE_MKIMAGE
=1 MKIMAGE
=$(STAGING_DIR_HOST
)/bin
/mkimage \
410 $(if
$(findstring ddr4
,$(DDR_TYPE
)),DRAM_USE_DDR4
=1) \
411 $(if
$(BOARD_QFN
),BOARD_QFN
=1,BOARD_BGA
=1) \
412 $(if
$(NAND_TYPE
),NAND_TYPE
=$(NAND_TYPE
)) \
413 HAVE_DRAM_OBJ_FILE
=yes \
414 $(if
$(DDR3_FLYBY
),DDR3_FLYBY
=1) \
415 $(if
$(DRAM_USE_COMB
),DRAM_USE_COMB
=1) \
418 define Package
/trusted-firmware-a
/install
419 $(INSTALL_DIR
) $(STAGING_DIR_IMAGE
)
420 $(INSTALL_DATA
) $(PKG_BUILD_DIR
)/build
/$(PLAT
)/release
/bl2.img
$(STAGING_DIR_IMAGE
)/$(BUILD_VARIANT
)-bl2.img
421 $(INSTALL_DATA
) $(PKG_BUILD_DIR
)/build
/$(PLAT
)/release
/bl31.bin
$(STAGING_DIR_IMAGE
)/$(BUILD_VARIANT
)-bl31.bin
424 $(eval
$(call BuildPackage
/Trusted-Firmware-A
))