arm-trusted-firmware-mediatek: set HIDDEN=y
[openwrt/staging/jow.git] / package / boot / arm-trusted-firmware-mediatek / Makefile
1 #
2 # Copyright (C) 2017 Hauke Mehrtens
3 # Copyright (C) 2021-2023 Daniel Golle
4 #
5 # This is free software, licensed under the GNU General Public License v2.
6 # See /LICENSE for more information.
7 #
8
9 include $(TOPDIR)/rules.mk
10
11 PKG_NAME:=arm-trusted-firmware-mediatek
12 PKG_RELEASE:=1
13
14 PKG_SOURCE_PROTO:=git
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
19
20 PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org>
21
22 include $(INCLUDE_DIR)/kernel.mk
23 include $(INCLUDE_DIR)/trusted-firmware-a.mk
24 include $(INCLUDE_DIR)/package.mk
25
26 define Trusted-Firmware-A/Default
27 BUILD_TARGET:=mediatek
28 TFA_IMAGE:=bl2.img bl31.bin
29 HIDDEN:=y
30 BOOT_DEVICE:=
31 DDR3_FLYBY:=
32 DDR_TYPE:=
33 NAND_TYPE:=
34 BOARD_QFN:=
35 DRAM_USE_COMB:=
36 endef
37
38 define Trusted-Firmware-A/mt7622-nor-1ddr
39 NAME:=MediaTek MT7622 (SPI-NOR, 1x DDR3)
40 BUILD_SUBTARGET:=mt7622
41 PLAT:=mt7622
42 BOOT_DEVICE:=nor
43 endef
44
45 define Trusted-Firmware-A/mt7622-nor-2ddr
46 NAME:=MediaTek MT7622 (SPI-NOR, 2x DDR3)
47 BUILD_SUBTARGET:=mt7622
48 PLAT:=mt7622
49 BOOT_DEVICE:=nor
50 DDR3_FLYBY:=1
51 endef
52
53 define Trusted-Firmware-A/mt7622-snand-1ddr
54 NAME:=MediaTek MT7622 (SPI-NAND, 1x DDR3)
55 BUILD_SUBTARGET:=mt7622
56 PLAT:=mt7622
57 BOOT_DEVICE:=snand
58 endef
59
60 define Trusted-Firmware-A/mt7622-snand-2ddr
61 NAME:=MediaTek MT7622 (SPI-NAND, 2x DDR3)
62 BUILD_SUBTARGET:=mt7622
63 PLAT:=mt7622
64 BOOT_DEVICE:=snand
65 DDR3_FLYBY:=1
66 endef
67
68 define Trusted-Firmware-A/mt7622-emmc-1ddr
69 NAME:=MediaTek MT7622 (eMMC, 1x DDR3)
70 BUILD_SUBTARGET:=mt7622
71 PLAT:=mt7622
72 BOOT_DEVICE:=emmc
73 endef
74
75 define Trusted-Firmware-A/mt7622-emmc-2ddr
76 NAME:=MediaTek MT7622 (eMMC, 2x DDR3)
77 BUILD_SUBTARGET:=mt7622
78 PLAT:=mt7622
79 BOOT_DEVICE:=emmc
80 DDR3_FLYBY:=1
81 endef
82
83 define Trusted-Firmware-A/mt7622-sdmmc-1ddr
84 NAME:=MediaTek MT7622 (SD card, 1x DDR3)
85 BUILD_SUBTARGET:=mt7622
86 PLAT:=mt7622
87 BOOT_DEVICE:=sdmmc
88 endef
89
90 define Trusted-Firmware-A/mt7622-sdmmc-2ddr
91 NAME:=MediaTek MT7622 (SD card, 2x DDR3)
92 BUILD_SUBTARGET:=mt7622
93 PLAT:=mt7622
94 BOOT_DEVICE:=sdmmc
95 DDR3_FLYBY:=1
96 endef
97
98 define Trusted-Firmware-A/mt7981-emmc-ddr4
99 NAME:=MediaTek MT7981 (eMMC, DDR4)
100 BOOT_DEVICE:=emmc
101 BUILD_SUBTARGET:=filogic
102 PLAT:=mt7981
103 DDR_TYPE:=ddr4
104 endef
105
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
110 PLAT:=mt7981
111 DDR_TYPE:=ddr4
112 endef
113
114 define Trusted-Firmware-A/mt7981-nor-ddr3
115 NAME:=MediaTek MT7981 (SPI-NOR, DDR3)
116 BOOT_DEVICE:=nor
117 BUILD_SUBTARGET:=filogic
118 PLAT:=mt7981
119 DDR_TYPE:=ddr3
120 endef
121
122 define Trusted-Firmware-A/mt7981-emmc-ddr3
123 NAME:=MediaTek MT7981 (eMMC, DDR3)
124 BOOT_DEVICE:=emmc
125 BUILD_SUBTARGET:=filogic
126 PLAT:=mt7981
127 DDR_TYPE:=ddr3
128 endef
129
130 define Trusted-Firmware-A/mt7981-sdmmc-ddr3
131 NAME:=MediaTek MT7981 (SD card, DDR3)
132 BOOT_DEVICE:=sdmmc
133 BUILD_SUBTARGET:=filogic
134 PLAT:=mt7981
135 DDR_TYPE:=ddr3
136 endef
137
138 define Trusted-Firmware-A/mt7981-snand-ddr3
139 NAME:=MediaTek MT7981 (SPI-NAND via SNFI, DDR3)
140 BOOT_DEVICE:=snand
141 BUILD_SUBTARGET:=filogic
142 PLAT:=mt7981
143 DDR_TYPE:=ddr3
144 endef
145
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
150 PLAT:=mt7981
151 DDR_TYPE:=ddr3
152 endef
153
154 define Trusted-Firmware-A/mt7986-nor-ddr4
155 NAME:=MediaTek MT7986 (SPI-NOR, DDR4)
156 BOOT_DEVICE:=nor
157 BUILD_SUBTARGET:=filogic
158 PLAT:=mt7986
159 DDR_TYPE:=ddr4
160 endef
161
162 define Trusted-Firmware-A/mt7986-emmc-ddr4
163 NAME:=MediaTek MT7986 (eMMC, DDR4)
164 BOOT_DEVICE:=emmc
165 BUILD_SUBTARGET:=filogic
166 PLAT:=mt7986
167 DDR_TYPE:=ddr4
168 endef
169
170 define Trusted-Firmware-A/mt7986-sdmmc-ddr4
171 NAME:=MediaTek MT7986 (SD card, DDR4)
172 BOOT_DEVICE:=sdmmc
173 BUILD_SUBTARGET:=filogic
174 PLAT:=mt7986
175 DDR_TYPE:=ddr4
176 endef
177
178 define Trusted-Firmware-A/mt7986-snand-ddr4
179 NAME:=MediaTek MT7986 (SPI-NAND via SNFI, DDR4)
180 BOOT_DEVICE:=snand
181 BUILD_SUBTARGET:=filogic
182 PLAT:=mt7986
183 DDR_TYPE:=ddr4
184 endef
185
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
190 PLAT:=mt7986
191 DDR_TYPE:=ddr4
192 NAND_TYPE:=spim:2k+64
193 endef
194
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
199 PLAT:=mt7986
200 DDR_TYPE:=ddr4
201 NAND_TYPE:=spim:4k+256
202 endef
203
204 define Trusted-Firmware-A/mt7986-nor-ddr3
205 NAME:=MediaTek MT7986 (SPI-NOR, DDR3)
206 BOOT_DEVICE:=nor
207 BUILD_SUBTARGET:=filogic
208 PLAT:=mt7986
209 DDR_TYPE:=ddr3
210 endef
211
212 define Trusted-Firmware-A/mt7986-emmc-ddr3
213 NAME:=MediaTek MT7986 (eMMC, DDR3)
214 BOOT_DEVICE:=emmc
215 BUILD_SUBTARGET:=filogic
216 PLAT:=mt7986
217 DDR_TYPE:=ddr3
218 endef
219
220 define Trusted-Firmware-A/mt7986-sdmmc-ddr3
221 NAME:=MediaTek MT7986 (SD card, DDR3)
222 BOOT_DEVICE:=sdmmc
223 BUILD_SUBTARGET:=filogic
224 PLAT:=mt7986
225 DDR_TYPE:=ddr3
226 endef
227
228 define Trusted-Firmware-A/mt7986-snand-ddr3
229 NAME:=MediaTek MT7986 (SPI-NAND via SNFI, DDR3)
230 BOOT_DEVICE:=snand
231 BUILD_SUBTARGET:=filogic
232 PLAT:=mt7986
233 DDR_TYPE:=ddr3
234 endef
235
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
240 PLAT:=mt7986
241 DDR_TYPE:=ddr3
242 endef
243
244 define Trusted-Firmware-A/mt7988-nor-ddr3
245 NAME:=MediaTek MT7988 (SPI-NOR, DDR3)
246 BOOT_DEVICE:=nor
247 BUILD_SUBTARGET:=filogic
248 PLAT:=mt7988
249 DDR_TYPE:=ddr3
250 endef
251
252 define Trusted-Firmware-A/mt7988-emmc-ddr3
253 NAME:=MediaTek MT7988 (eMMC, DDR3)
254 BOOT_DEVICE:=emmc
255 BUILD_SUBTARGET:=filogic
256 PLAT:=mt7988
257 DDR_TYPE:=ddr3
258 endef
259
260 define Trusted-Firmware-A/mt7988-sdmmc-ddr3
261 NAME:=MediaTek MT7988 (SD card, DDR3)
262 BOOT_DEVICE:=sdmmc
263 BUILD_SUBTARGET:=filogic
264 PLAT:=mt7988
265 DDR_TYPE:=ddr3
266 endef
267
268 define Trusted-Firmware-A/mt7988-snand-ddr3
269 NAME:=MediaTek MT7988 (SPI-NAND via SNFI, DDR3)
270 BOOT_DEVICE:=snand
271 BUILD_SUBTARGET:=filogic
272 PLAT:=mt7988
273 DDR_TYPE:=ddr3
274 endef
275
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
280 PLAT:=mt7988
281 DDR_TYPE:=ddr3
282 endef
283
284 define Trusted-Firmware-A/mt7988-nor-ddr4
285 NAME:=MediaTek MT7988 (SPI-NOR, DDR4)
286 BOOT_DEVICE:=nor
287 BUILD_SUBTARGET:=filogic
288 PLAT:=mt7988
289 DDR_TYPE:=ddr4
290 endef
291
292 define Trusted-Firmware-A/mt7988-emmc-ddr4
293 NAME:=MediaTek MT7988 (eMMC, DDR4)
294 BOOT_DEVICE:=emmc
295 BUILD_SUBTARGET:=filogic
296 PLAT:=mt7988
297 DDR_TYPE:=ddr4
298 endef
299
300 define Trusted-Firmware-A/mt7988-sdmmc-ddr4
301 NAME:=MediaTek MT7988 (SD card, DDR4)
302 BOOT_DEVICE:=sdmmc
303 BUILD_SUBTARGET:=filogic
304 PLAT:=mt7988
305 DDR_TYPE:=ddr4
306 endef
307
308 define Trusted-Firmware-A/mt7988-snand-ddr4
309 NAME:=MediaTek MT7988 (SPI-NAND via SNFI, DDR4)
310 BOOT_DEVICE:=snand
311 BUILD_SUBTARGET:=filogic
312 PLAT:=mt7988
313 DDR_TYPE:=ddr4
314 endef
315
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
320 PLAT:=mt7988
321 DDR_TYPE:=ddr4
322 endef
323
324 define Trusted-Firmware-A/mt7988-nor-comb
325 NAME:=MediaTek MT7988 (SPI-NOR)
326 BOOT_DEVICE:=nor
327 BUILD_SUBTARGET:=filogic
328 PLAT:=mt7988
329 DRAM_USE_COMB:=1
330 endef
331
332 define Trusted-Firmware-A/mt7988-emmc-comb
333 NAME:=MediaTek MT7988 (eMMC)
334 BOOT_DEVICE:=emmc
335 BUILD_SUBTARGET:=filogic
336 PLAT:=mt7988
337 DRAM_USE_COMB:=1
338 endef
339
340 define Trusted-Firmware-A/mt7988-sdmmc-comb
341 NAME:=MediaTek MT7988 (SD card)
342 BOOT_DEVICE:=sdmmc
343 BUILD_SUBTARGET:=filogic
344 PLAT:=mt7988
345 DRAM_USE_COMB:=1
346 endef
347
348 define Trusted-Firmware-A/mt7988-snand-comb
349 NAME:=MediaTek MT7988 (SPI-NAND via SNFI)
350 BOOT_DEVICE:=snand
351 BUILD_SUBTARGET:=filogic
352 PLAT:=mt7988
353 DRAM_USE_COMB:=1
354 endef
355
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
360 PLAT:=mt7988
361 DRAM_USE_COMB:=1
362 endef
363
364 TFA_TARGETS:= \
365 mt7622-nor-1ddr \
366 mt7622-nor-2ddr \
367 mt7622-snand-1ddr \
368 mt7622-snand-2ddr \
369 mt7622-emmc-1ddr \
370 mt7622-emmc-2ddr \
371 mt7622-sdmmc-1ddr \
372 mt7622-sdmmc-2ddr \
373 mt7981-emmc-ddr3 \
374 mt7981-nor-ddr3 \
375 mt7981-sdmmc-ddr3 \
376 mt7981-snand-ddr3 \
377 mt7981-spim-nand-ddr3 \
378 mt7981-emmc-ddr4 \
379 mt7981-spim-nand-ddr4 \
380 mt7986-emmc-ddr3 \
381 mt7986-nor-ddr3 \
382 mt7986-sdmmc-ddr3 \
383 mt7986-snand-ddr3 \
384 mt7986-spim-nand-ddr3 \
385 mt7986-emmc-ddr4 \
386 mt7986-nor-ddr4 \
387 mt7986-sdmmc-ddr4 \
388 mt7986-snand-ddr4 \
389 mt7986-spim-nand-ddr4 \
390 mt7986-spim-nand-4k-ddr4 \
391 mt7988-emmc-ddr3 \
392 mt7988-nor-ddr3 \
393 mt7988-sdmmc-ddr3 \
394 mt7988-snand-ddr3 \
395 mt7988-spim-nand-ddr3 \
396 mt7988-emmc-ddr4 \
397 mt7988-nor-ddr4 \
398 mt7988-sdmmc-ddr4 \
399 mt7988-snand-ddr4 \
400 mt7988-spim-nand-ddr4 \
401 mt7988-emmc-comb \
402 mt7988-nor-comb \
403 mt7988-sdmmc-comb \
404 mt7988-snand-comb \
405 mt7988-spim-nand-comb
406
407 TFA_MAKE_FLAGS += \
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) \
416 all
417
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
422 endef
423
424 $(eval $(call BuildPackage/Trusted-Firmware-A))