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-07-24
17 PKG_SOURCE_VERSION
:=00ac6db375b76e57e1f5e9e9bffa033e907c3581
18 PKG_MIRROR_HASH
:=35e84b2160a7ddc083439e469d7366bb4e6098fc43b5616e68f001364eb05835
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-nor-ddr3
98 NAME
:=MediaTek MT7981
(SPI-NOR
, DDR3
)
100 BUILD_SUBTARGET
:=filogic
105 define Trusted-Firmware-A
/mt7981-emmc-ddr3
106 NAME
:=MediaTek MT7981
(eMMC
, DDR3
)
108 BUILD_SUBTARGET
:=filogic
113 define Trusted-Firmware-A
/mt7981-sdmmc-ddr3
114 NAME
:=MediaTek MT7981
(SD card
, DDR3
)
116 BUILD_SUBTARGET
:=filogic
121 define Trusted-Firmware-A
/mt7986-snand-ddr3
122 NAME
:=MediaTek MT7981
(SPI-NAND via SNFI
, DDR3
)
124 BUILD_SUBTARGET
:=filogic
129 define Trusted-Firmware-A
/mt7981-spim-nand-ddr3
130 NAME
:=MediaTek MT7981
(SPI-NAND via SPIM
, DDR3
)
131 BOOT_DEVICE
:=spim-nand
132 BUILD_SUBTARGET
:=filogic
137 define Trusted-Firmware-A
/mt7986-nor-ddr4
138 NAME
:=MediaTek MT7986
(SPI-NOR
, DDR4
)
140 BUILD_SUBTARGET
:=filogic
145 define Trusted-Firmware-A
/mt7986-emmc-ddr4
146 NAME
:=MediaTek MT7986
(eMMC
, DDR4
)
148 BUILD_SUBTARGET
:=filogic
153 define Trusted-Firmware-A
/mt7986-sdmmc-ddr4
154 NAME
:=MediaTek MT7986
(SD card
, DDR4
)
156 BUILD_SUBTARGET
:=filogic
161 define Trusted-Firmware-A
/mt7986-snand-ddr4
162 NAME
:=MediaTek MT7986
(SPI-NAND via SNFI
, DDR4
)
164 BUILD_SUBTARGET
:=filogic
169 define Trusted-Firmware-A
/mt7986-spim-nand-ddr4
170 NAME
:=MediaTek MT7986
(SPI-NAND via SPIM
, DDR4
)
171 BOOT_DEVICE
:=spim-nand
172 BUILD_SUBTARGET
:=filogic
175 NAND_TYPE
:=spim
:2k
+64
178 define Trusted-Firmware-A
/mt7986-nor-ddr3
179 NAME
:=MediaTek MT7986
(SPI-NOR
, DDR3
)
181 BUILD_SUBTARGET
:=filogic
186 define Trusted-Firmware-A
/mt7986-emmc-ddr3
187 NAME
:=MediaTek MT7986
(eMMC
, DDR3
)
189 BUILD_SUBTARGET
:=filogic
194 define Trusted-Firmware-A
/mt7986-sdmmc-ddr3
195 NAME
:=MediaTek MT7986
(SD card
, DDR3
)
197 BUILD_SUBTARGET
:=filogic
202 define Trusted-Firmware-A
/mt7986-snand-ddr3
203 NAME
:=MediaTek MT7986
(SPI-NAND via SNFI
, DDR3
)
205 BUILD_SUBTARGET
:=filogic
210 define Trusted-Firmware-A
/mt7986-spim-nand-ddr3
211 NAME
:=MediaTek MT7986
(SPI-NAND via SPIM
, DDR3
)
212 BOOT_DEVICE
:=spim-nand
213 BUILD_SUBTARGET
:=filogic
218 define Trusted-Firmware-A
/mt7988-nor-ddr3
219 NAME
:=MediaTek MT7988
(SPI-NOR
, DDR3
)
221 BUILD_SUBTARGET
:=filogic
226 define Trusted-Firmware-A
/mt7988-emmc-ddr3
227 NAME
:=MediaTek MT7988
(eMMC
, DDR3
)
229 BUILD_SUBTARGET
:=filogic
234 define Trusted-Firmware-A
/mt7988-sdmmc-ddr3
235 NAME
:=MediaTek MT7988
(SD card
, DDR3
)
237 BUILD_SUBTARGET
:=filogic
242 define Trusted-Firmware-A
/mt7988-snand-ddr3
243 NAME
:=MediaTek MT7988
(SPI-NAND via SNFI
, DDR3
)
245 BUILD_SUBTARGET
:=filogic
250 define Trusted-Firmware-A
/mt7988-spim-nand-ddr3
251 NAME
:=MediaTek MT7988
(SPI-NAND via SPIM
, DDR3
)
252 BOOT_DEVICE
:=spim-nand
253 BUILD_SUBTARGET
:=filogic
258 define Trusted-Firmware-A
/mt7988-nor-ddr4
259 NAME
:=MediaTek MT7988
(SPI-NOR
, DDR4
)
261 BUILD_SUBTARGET
:=filogic
266 define Trusted-Firmware-A
/mt7988-emmc-ddr4
267 NAME
:=MediaTek MT7988
(eMMC
, DDR4
)
269 BUILD_SUBTARGET
:=filogic
274 define Trusted-Firmware-A
/mt7988-sdmmc-ddr4
275 NAME
:=MediaTek MT7988
(SD card
, DDR4
)
277 BUILD_SUBTARGET
:=filogic
282 define Trusted-Firmware-A
/mt7988-snand-ddr4
283 NAME
:=MediaTek MT7988
(SPI-NAND via SNFI
, DDR4
)
285 BUILD_SUBTARGET
:=filogic
290 define Trusted-Firmware-A
/mt7988-spim-nand-ddr4
291 NAME
:=MediaTek MT7988
(SPI-NAND via SPIM
, DDR4
)
292 BOOT_DEVICE
:=spim-nand
293 BUILD_SUBTARGET
:=filogic
298 define Trusted-Firmware-A
/mt7988-nor-comb
299 NAME
:=MediaTek MT7988
(SPI-NOR
)
301 BUILD_SUBTARGET
:=filogic
306 define Trusted-Firmware-A
/mt7988-emmc-comb
307 NAME
:=MediaTek MT7988
(eMMC
)
309 BUILD_SUBTARGET
:=filogic
314 define Trusted-Firmware-A
/mt7988-sdmmc-comb
315 NAME
:=MediaTek MT7988
(SD card
)
317 BUILD_SUBTARGET
:=filogic
322 define Trusted-Firmware-A
/mt7988-snand-comb
323 NAME
:=MediaTek MT7988
(SPI-NAND via SNFI
)
325 BUILD_SUBTARGET
:=filogic
330 define Trusted-Firmware-A
/mt7988-spim-nand-comb
331 NAME
:=MediaTek MT7988
(SPI-NAND via SPIM
)
332 BOOT_DEVICE
:=spim-nand
333 BUILD_SUBTARGET
:=filogic
351 mt7981-spim-nand-ddr3 \
356 mt7986-spim-nand-ddr3 \
361 mt7986-spim-nand-ddr4 \
366 mt7988-spim-nand-ddr3 \
371 mt7988-spim-nand-ddr4 \
376 mt7988-spim-nand-comb
379 BOOT_DEVICE
=$(BOOT_DEVICE
) \
380 USE_MKIMAGE
=1 MKIMAGE
=$(STAGING_DIR_HOST
)/bin
/mkimage \
381 $(if
$(findstring ddr4
,$(DDR_TYPE
)),DRAM_USE_DDR4
=1) \
382 $(if
$(BOARD_QFN
),BOARD_QFN
=1,BOARD_BGA
=1) \
383 $(if
$(NAND_TYPE
),NAND_TYPE
=$(NAND_TYPE
)) \
384 HAVE_DRAM_OBJ_FILE
=yes \
385 $(if
$(DDR3_FLYBY
),DDR3_FLYBY
=1) \
386 $(if
$(DRAM_USE_COMB
),DRAM_USE_COMB
=1) \
389 define Package
/trusted-firmware-a
/install
390 $(INSTALL_DIR
) $(STAGING_DIR_IMAGE
)
391 $(INSTALL_DATA
) $(PKG_BUILD_DIR
)/build
/$(PLAT
)/release
/bl2.img
$(STAGING_DIR_IMAGE
)/$(BUILD_VARIANT
)-bl2.img
392 $(INSTALL_DATA
) $(PKG_BUILD_DIR
)/build
/$(PLAT
)/release
/bl31.bin
$(STAGING_DIR_IMAGE
)/$(BUILD_VARIANT
)-bl31.bin
395 $(eval
$(call BuildPackage
/Trusted-Firmware-A
))