mediatek: fix wps button for nokia ea0326gmp
[openwrt/staging/pepe2k.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:=22579fae08de942e0d5a420cfaa0b1d310dc9431e85b7e28a3c3ef08331a199d
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 RAM_BOOT_UART_DL:=
37 USE_UBI:=
38 endef
39
40 define Trusted-Firmware-A/mt7622-nor-1ddr
41 NAME:=MediaTek MT7622 (SPI-NOR, 1x DDR3)
42 BUILD_SUBTARGET:=mt7622
43 PLAT:=mt7622
44 BOOT_DEVICE:=nor
45 endef
46
47 define Trusted-Firmware-A/mt7622-nor-2ddr
48 NAME:=MediaTek MT7622 (SPI-NOR, 2x DDR3)
49 BUILD_SUBTARGET:=mt7622
50 PLAT:=mt7622
51 BOOT_DEVICE:=nor
52 DDR3_FLYBY:=1
53 endef
54
55 define Trusted-Firmware-A/mt7622-snand-1ddr
56 NAME:=MediaTek MT7622 (SPI-NAND, 1x DDR3)
57 BUILD_SUBTARGET:=mt7622
58 PLAT:=mt7622
59 BOOT_DEVICE:=snand
60 endef
61
62 define Trusted-Firmware-A/mt7622-snand-ubi-1ddr
63 NAME:=MediaTek MT7622 (SPI-NAND using UBI, 1x DDR3)
64 BUILD_SUBTARGET:=mt7622
65 PLAT:=mt7622
66 BOOT_DEVICE:=snand
67 USE_UBI:=1
68 endef
69
70 define Trusted-Firmware-A/mt7622-snand-2ddr
71 NAME:=MediaTek MT7622 (SPI-NAND, 2x DDR3)
72 BUILD_SUBTARGET:=mt7622
73 PLAT:=mt7622
74 BOOT_DEVICE:=snand
75 DDR3_FLYBY:=1
76 endef
77
78 define Trusted-Firmware-A/mt7622-snand-ubi-2ddr
79 NAME:=MediaTek MT7622 (SPI-NAND using UBI, 2x DDR3)
80 BUILD_SUBTARGET:=mt7622
81 PLAT:=mt7622
82 BOOT_DEVICE:=snand
83 DDR3_FLYBY:=1
84 USE_UBI:=1
85 endef
86
87 define Trusted-Firmware-A/mt7622-emmc-1ddr
88 NAME:=MediaTek MT7622 (eMMC, 1x DDR3)
89 BUILD_SUBTARGET:=mt7622
90 PLAT:=mt7622
91 BOOT_DEVICE:=emmc
92 endef
93
94 define Trusted-Firmware-A/mt7622-emmc-2ddr
95 NAME:=MediaTek MT7622 (eMMC, 2x DDR3)
96 BUILD_SUBTARGET:=mt7622
97 PLAT:=mt7622
98 BOOT_DEVICE:=emmc
99 DDR3_FLYBY:=1
100 endef
101
102 define Trusted-Firmware-A/mt7622-sdmmc-1ddr
103 NAME:=MediaTek MT7622 (SD card, 1x DDR3)
104 BUILD_SUBTARGET:=mt7622
105 PLAT:=mt7622
106 BOOT_DEVICE:=sdmmc
107 endef
108
109 define Trusted-Firmware-A/mt7622-sdmmc-2ddr
110 NAME:=MediaTek MT7622 (SD card, 2x DDR3)
111 BUILD_SUBTARGET:=mt7622
112 PLAT:=mt7622
113 BOOT_DEVICE:=sdmmc
114 DDR3_FLYBY:=1
115 endef
116
117 define Trusted-Firmware-A/mt7981-ram-ddr4
118 NAME:=MediaTek MT7981 (RAM, DDR4)
119 BOOT_DEVICE:=ram
120 BUILD_SUBTARGET:=filogic
121 PLAT:=mt7981
122 DDR_TYPE:=ddr4
123 RAM_BOOT_UART_DL:=1
124 HIDDEN:=
125 DEFAULT:=TARGET_mediatek_filogic
126 endef
127
128 define Trusted-Firmware-A/mt7981-emmc-ddr4
129 NAME:=MediaTek MT7981 (eMMC, DDR4)
130 BOOT_DEVICE:=emmc
131 BUILD_SUBTARGET:=filogic
132 PLAT:=mt7981
133 DDR_TYPE:=ddr4
134 endef
135
136 define Trusted-Firmware-A/mt7981-spim-nand-ddr4
137 NAME:=MediaTek MT7981 (SPI-NAND via SPIM, DDR4)
138 BOOT_DEVICE:=spim-nand
139 BUILD_SUBTARGET:=filogic
140 PLAT:=mt7981
141 DDR_TYPE:=ddr4
142 endef
143
144 define Trusted-Firmware-A/mt7981-nor-ddr3
145 NAME:=MediaTek MT7981 (SPI-NOR, DDR3)
146 BOOT_DEVICE:=nor
147 BUILD_SUBTARGET:=filogic
148 PLAT:=mt7981
149 DDR_TYPE:=ddr3
150 endef
151
152 define Trusted-Firmware-A/mt7981-ram-ddr3
153 NAME:=MediaTek MT7981 (RAM, DDR3)
154 BOOT_DEVICE:=ram
155 BUILD_SUBTARGET:=filogic
156 PLAT:=mt7981
157 DDR_TYPE:=ddr3
158 RAM_BOOT_UART_DL:=1
159 HIDDEN:=
160 DEFAULT:=TARGET_mediatek_filogic
161 endef
162
163 define Trusted-Firmware-A/mt7981-emmc-ddr3
164 NAME:=MediaTek MT7981 (eMMC, DDR3)
165 BOOT_DEVICE:=emmc
166 BUILD_SUBTARGET:=filogic
167 PLAT:=mt7981
168 DDR_TYPE:=ddr3
169 endef
170
171 define Trusted-Firmware-A/mt7981-sdmmc-ddr3
172 NAME:=MediaTek MT7981 (SD card, DDR3)
173 BOOT_DEVICE:=sdmmc
174 BUILD_SUBTARGET:=filogic
175 PLAT:=mt7981
176 DDR_TYPE:=ddr3
177 endef
178
179 define Trusted-Firmware-A/mt7981-snand-ddr3
180 NAME:=MediaTek MT7981 (SPI-NAND via SNFI, DDR3)
181 BOOT_DEVICE:=snand
182 BUILD_SUBTARGET:=filogic
183 PLAT:=mt7981
184 DDR_TYPE:=ddr3
185 endef
186
187 define Trusted-Firmware-A/mt7981-spim-nand-ddr3
188 NAME:=MediaTek MT7981 (SPI-NAND via SPIM, DDR3)
189 BOOT_DEVICE:=spim-nand
190 BUILD_SUBTARGET:=filogic
191 PLAT:=mt7981
192 DDR_TYPE:=ddr3
193 endef
194
195 define Trusted-Firmware-A/mt7986-ram-ddr4
196 NAME:=MediaTek MT7986 (RAM, DDR4)
197 BOOT_DEVICE:=ram
198 BUILD_SUBTARGET:=filogic
199 PLAT:=mt7986
200 DDR_TYPE:=ddr4
201 RAM_BOOT_UART_DL:=1
202 HIDDEN:=
203 DEFAULT:=TARGET_mediatek_filogic
204 endef
205
206 define Trusted-Firmware-A/mt7986-nor-ddr4
207 NAME:=MediaTek MT7986 (SPI-NOR, DDR4)
208 BOOT_DEVICE:=nor
209 BUILD_SUBTARGET:=filogic
210 PLAT:=mt7986
211 DDR_TYPE:=ddr4
212 endef
213
214 define Trusted-Firmware-A/mt7986-emmc-ddr4
215 NAME:=MediaTek MT7986 (eMMC, DDR4)
216 BOOT_DEVICE:=emmc
217 BUILD_SUBTARGET:=filogic
218 PLAT:=mt7986
219 DDR_TYPE:=ddr4
220 endef
221
222 define Trusted-Firmware-A/mt7986-sdmmc-ddr4
223 NAME:=MediaTek MT7986 (SD card, DDR4)
224 BOOT_DEVICE:=sdmmc
225 BUILD_SUBTARGET:=filogic
226 PLAT:=mt7986
227 DDR_TYPE:=ddr4
228 endef
229
230 define Trusted-Firmware-A/mt7986-snand-ddr4
231 NAME:=MediaTek MT7986 (SPI-NAND via SNFI, DDR4)
232 BOOT_DEVICE:=snand
233 BUILD_SUBTARGET:=filogic
234 PLAT:=mt7986
235 DDR_TYPE:=ddr4
236 endef
237
238 define Trusted-Firmware-A/mt7986-spim-nand-ddr4
239 NAME:=MediaTek MT7986 (SPI-NAND via SPIM, DDR4)
240 BOOT_DEVICE:=spim-nand
241 BUILD_SUBTARGET:=filogic
242 PLAT:=mt7986
243 DDR_TYPE:=ddr4
244 NAND_TYPE:=spim:2k+64
245 endef
246
247 define Trusted-Firmware-A/mt7986-spim-nand-ubi-ddr4
248 NAME:=MediaTek MT7986 (SPI-NAND via SPIM using UBI, DDR4)
249 BOOT_DEVICE:=spim-nand
250 BUILD_SUBTARGET:=filogic
251 PLAT:=mt7986
252 DDR_TYPE:=ddr4
253 NAND_TYPE:=spim:2k+64
254 USE_UBI:=1
255 endef
256
257 define Trusted-Firmware-A/mt7986-spim-nand-4k-ddr4
258 NAME:=MediaTek MT7986 (SPI-NAND via SPIM, DDR4)
259 BOOT_DEVICE:=spim-nand
260 BUILD_SUBTARGET:=filogic
261 PLAT:=mt7986
262 DDR_TYPE:=ddr4
263 NAND_TYPE:=spim:4k+256
264 endef
265
266 define Trusted-Firmware-A/mt7986-ram-ddr3
267 NAME:=MediaTek MT7986 (RAM, DDR3)
268 BOOT_DEVICE:=ram
269 BUILD_SUBTARGET:=filogic
270 PLAT:=mt7986
271 DDR_TYPE:=ddr3
272 RAM_BOOT_UART_DL:=1
273 HIDDEN:=
274 DEFAULT:=TARGET_mediatek_filogic
275 endef
276
277 define Trusted-Firmware-A/mt7986-nor-ddr3
278 NAME:=MediaTek MT7986 (SPI-NOR, DDR3)
279 BOOT_DEVICE:=nor
280 BUILD_SUBTARGET:=filogic
281 PLAT:=mt7986
282 DDR_TYPE:=ddr3
283 endef
284
285 define Trusted-Firmware-A/mt7986-emmc-ddr3
286 NAME:=MediaTek MT7986 (eMMC, DDR3)
287 BOOT_DEVICE:=emmc
288 BUILD_SUBTARGET:=filogic
289 PLAT:=mt7986
290 DDR_TYPE:=ddr3
291 endef
292
293 define Trusted-Firmware-A/mt7986-sdmmc-ddr3
294 NAME:=MediaTek MT7986 (SD card, DDR3)
295 BOOT_DEVICE:=sdmmc
296 BUILD_SUBTARGET:=filogic
297 PLAT:=mt7986
298 DDR_TYPE:=ddr3
299 endef
300
301 define Trusted-Firmware-A/mt7986-snand-ddr3
302 NAME:=MediaTek MT7986 (SPI-NAND via SNFI, DDR3)
303 BOOT_DEVICE:=snand
304 BUILD_SUBTARGET:=filogic
305 PLAT:=mt7986
306 DDR_TYPE:=ddr3
307 endef
308
309 define Trusted-Firmware-A/mt7986-spim-nand-ddr3
310 NAME:=MediaTek MT7986 (SPI-NAND via SPIM, DDR3)
311 BOOT_DEVICE:=spim-nand
312 BUILD_SUBTARGET:=filogic
313 PLAT:=mt7986
314 DDR_TYPE:=ddr3
315 endef
316
317 define Trusted-Firmware-A/mt7988-nor-ddr3
318 NAME:=MediaTek MT7988 (SPI-NOR, DDR3)
319 BOOT_DEVICE:=nor
320 BUILD_SUBTARGET:=filogic
321 PLAT:=mt7988
322 DDR_TYPE:=ddr3
323 endef
324
325 define Trusted-Firmware-A/mt7988-emmc-ddr3
326 NAME:=MediaTek MT7988 (eMMC, DDR3)
327 BOOT_DEVICE:=emmc
328 BUILD_SUBTARGET:=filogic
329 PLAT:=mt7988
330 DDR_TYPE:=ddr3
331 endef
332
333 define Trusted-Firmware-A/mt7988-sdmmc-ddr3
334 NAME:=MediaTek MT7988 (SD card, DDR3)
335 BOOT_DEVICE:=sdmmc
336 BUILD_SUBTARGET:=filogic
337 PLAT:=mt7988
338 DDR_TYPE:=ddr3
339 endef
340
341 define Trusted-Firmware-A/mt7988-snand-ddr3
342 NAME:=MediaTek MT7988 (SPI-NAND via SNFI, DDR3)
343 BOOT_DEVICE:=snand
344 BUILD_SUBTARGET:=filogic
345 PLAT:=mt7988
346 DDR_TYPE:=ddr3
347 endef
348
349 define Trusted-Firmware-A/mt7988-spim-nand-ddr3
350 NAME:=MediaTek MT7988 (SPI-NAND via SPIM, DDR3)
351 BOOT_DEVICE:=spim-nand
352 BUILD_SUBTARGET:=filogic
353 PLAT:=mt7988
354 DDR_TYPE:=ddr3
355 endef
356
357 define Trusted-Firmware-A/mt7988-nor-ddr4
358 NAME:=MediaTek MT7988 (SPI-NOR, DDR4)
359 BOOT_DEVICE:=nor
360 BUILD_SUBTARGET:=filogic
361 PLAT:=mt7988
362 DDR_TYPE:=ddr4
363 endef
364
365 define Trusted-Firmware-A/mt7988-emmc-ddr4
366 NAME:=MediaTek MT7988 (eMMC, DDR4)
367 BOOT_DEVICE:=emmc
368 BUILD_SUBTARGET:=filogic
369 PLAT:=mt7988
370 DDR_TYPE:=ddr4
371 endef
372
373 define Trusted-Firmware-A/mt7988-sdmmc-ddr4
374 NAME:=MediaTek MT7988 (SD card, DDR4)
375 BOOT_DEVICE:=sdmmc
376 BUILD_SUBTARGET:=filogic
377 PLAT:=mt7988
378 DDR_TYPE:=ddr4
379 endef
380
381 define Trusted-Firmware-A/mt7988-snand-ddr4
382 NAME:=MediaTek MT7988 (SPI-NAND via SNFI, DDR4)
383 BOOT_DEVICE:=snand
384 BUILD_SUBTARGET:=filogic
385 PLAT:=mt7988
386 DDR_TYPE:=ddr4
387 endef
388
389 define Trusted-Firmware-A/mt7988-spim-nand-ddr4
390 NAME:=MediaTek MT7988 (SPI-NAND via SPIM, DDR4)
391 BOOT_DEVICE:=spim-nand
392 BUILD_SUBTARGET:=filogic
393 PLAT:=mt7988
394 DDR_TYPE:=ddr4
395 endef
396
397 define Trusted-Firmware-A/mt7988-ram-comb
398 NAME:=MediaTek MT7988 (RAM)
399 BOOT_DEVICE:=ram
400 BUILD_SUBTARGET:=filogic
401 PLAT:=mt7988
402 DRAM_USE_COMB:=1
403 RAM_BOOT_UART_DL:=1
404 HIDDEN:=
405 DEFAULT:=TARGET_mediatek_filogic
406 endef
407
408 define Trusted-Firmware-A/mt7988-nor-comb
409 NAME:=MediaTek MT7988 (SPI-NOR)
410 BOOT_DEVICE:=nor
411 BUILD_SUBTARGET:=filogic
412 PLAT:=mt7988
413 DRAM_USE_COMB:=1
414 endef
415
416 define Trusted-Firmware-A/mt7988-emmc-comb
417 NAME:=MediaTek MT7988 (eMMC)
418 BOOT_DEVICE:=emmc
419 BUILD_SUBTARGET:=filogic
420 PLAT:=mt7988
421 DRAM_USE_COMB:=1
422 endef
423
424 define Trusted-Firmware-A/mt7988-sdmmc-comb
425 NAME:=MediaTek MT7988 (SD card)
426 BOOT_DEVICE:=sdmmc
427 BUILD_SUBTARGET:=filogic
428 PLAT:=mt7988
429 DRAM_USE_COMB:=1
430 endef
431
432 define Trusted-Firmware-A/mt7988-snand-comb
433 NAME:=MediaTek MT7988 (SPI-NAND via SNFI)
434 BOOT_DEVICE:=snand
435 BUILD_SUBTARGET:=filogic
436 PLAT:=mt7988
437 DRAM_USE_COMB:=1
438 endef
439
440 define Trusted-Firmware-A/mt7988-snand-ubi-comb
441 NAME:=MediaTek MT7988 (SPI-NAND via SNFI, UBI)
442 BOOT_DEVICE:=snand
443 BUILD_SUBTARGET:=filogic
444 PLAT:=mt7988
445 DRAM_USE_COMB:=1
446 USE_UBI:=1
447 endef
448
449 define Trusted-Firmware-A/mt7988-spim-nand-comb
450 NAME:=MediaTek MT7988 (SPI-NAND via SPIM)
451 BOOT_DEVICE:=spim-nand
452 BUILD_SUBTARGET:=filogic
453 PLAT:=mt7988
454 DRAM_USE_COMB:=1
455 endef
456
457 define Trusted-Firmware-A/mt7988-spim-nand-ubi-comb
458 NAME:=MediaTek MT7988 (SPI-NAND via SPIM, UBI)
459 BOOT_DEVICE:=spim-nand
460 BUILD_SUBTARGET:=filogic
461 PLAT:=mt7988
462 DRAM_USE_COMB:=1
463 USE_UBI:=1
464 endef
465
466 TFA_TARGETS:= \
467 mt7622-nor-1ddr \
468 mt7622-nor-2ddr \
469 mt7622-snand-1ddr \
470 mt7622-snand-ubi-1ddr \
471 mt7622-snand-2ddr \
472 mt7622-snand-ubi-2ddr \
473 mt7622-emmc-1ddr \
474 mt7622-emmc-2ddr \
475 mt7622-sdmmc-1ddr \
476 mt7622-sdmmc-2ddr \
477 mt7981-ram-ddr3 \
478 mt7981-emmc-ddr3 \
479 mt7981-nor-ddr3 \
480 mt7981-sdmmc-ddr3 \
481 mt7981-snand-ddr3 \
482 mt7981-spim-nand-ddr3 \
483 mt7981-ram-ddr4 \
484 mt7981-emmc-ddr4 \
485 mt7981-spim-nand-ddr4 \
486 mt7986-ram-ddr3 \
487 mt7986-emmc-ddr3 \
488 mt7986-nor-ddr3 \
489 mt7986-sdmmc-ddr3 \
490 mt7986-snand-ddr3 \
491 mt7986-spim-nand-ddr3 \
492 mt7986-ram-ddr4 \
493 mt7986-emmc-ddr4 \
494 mt7986-nor-ddr4 \
495 mt7986-sdmmc-ddr4 \
496 mt7986-snand-ddr4 \
497 mt7986-spim-nand-ddr4 \
498 mt7986-spim-nand-ubi-ddr4 \
499 mt7986-spim-nand-4k-ddr4 \
500 mt7988-emmc-ddr3 \
501 mt7988-nor-ddr3 \
502 mt7988-sdmmc-ddr3 \
503 mt7988-snand-ddr3 \
504 mt7988-spim-nand-ddr3 \
505 mt7988-emmc-ddr4 \
506 mt7988-nor-ddr4 \
507 mt7988-sdmmc-ddr4 \
508 mt7988-snand-ddr4 \
509 mt7988-spim-nand-ddr4 \
510 mt7988-ram-comb \
511 mt7988-emmc-comb \
512 mt7988-nor-comb \
513 mt7988-sdmmc-comb \
514 mt7988-snand-comb \
515 mt7988-snand-ubi-comb \
516 mt7988-spim-nand-comb \
517 mt7988-spim-nand-ubi-comb
518
519 TFA_MAKE_FLAGS += \
520 BOOT_DEVICE=$(BOOT_DEVICE) \
521 USE_MKIMAGE=1 MKIMAGE=$(STAGING_DIR_HOST)/bin/mkimage \
522 $(if $(findstring ddr4,$(DDR_TYPE)),DRAM_USE_DDR4=1) \
523 $(if $(BOARD_QFN),BOARD_QFN=1,BOARD_BGA=1) \
524 $(if $(NAND_TYPE),NAND_TYPE=$(NAND_TYPE)) \
525 HAVE_DRAM_OBJ_FILE=yes \
526 $(if $(DDR3_FLYBY),DDR3_FLYBY=1) \
527 $(if $(DRAM_USE_COMB),DRAM_USE_COMB=1) \
528 $(if $(RAM_BOOT_UART_DL),RAM_BOOT_UART_DL=1) \
529 $(if $(USE_UBI),UBI=1 $(if $(findstring mt7622,$(PLAT)),OVERRIDE_UBI_START_ADDR=0x80000)) \
530 all
531
532 define Package/trusted-firmware-a-ram/install
533 $(INSTALL_DIR) $(STAGING_DIR_IMAGE)
534 $(INSTALL_DATA) $(PKG_BUILD_DIR)/build/$(PLAT)/release/bl2.bin $(BIN_DIR)/$(BUILD_VARIANT)-bl2.bin
535 endef
536 Package/trusted-firmware-a-mt7981-ram-ddr3/install = $(Package/trusted-firmware-a-ram/install)
537 Package/trusted-firmware-a-mt7981-ram-ddr4/install = $(Package/trusted-firmware-a-ram/install)
538 Package/trusted-firmware-a-mt7986-ram-ddr3/install = $(Package/trusted-firmware-a-ram/install)
539 Package/trusted-firmware-a-mt7986-ram-ddr4/install = $(Package/trusted-firmware-a-ram/install)
540 Package/trusted-firmware-a-mt7988-ram-comb/install = $(Package/trusted-firmware-a-ram/install)
541
542 define Package/trusted-firmware-a/install
543 $(INSTALL_DIR) $(STAGING_DIR_IMAGE)
544 $(INSTALL_DATA) $(PKG_BUILD_DIR)/build/$(PLAT)/release/bl2.img $(STAGING_DIR_IMAGE)/$(BUILD_VARIANT)-bl2.img
545 $(INSTALL_DATA) $(PKG_BUILD_DIR)/build/$(PLAT)/release/bl31.bin $(STAGING_DIR_IMAGE)/$(BUILD_VARIANT)-bl31.bin
546 endef
547
548 $(eval $(call BuildPackage/Trusted-Firmware-A))