xref: /rk3399_ARM-atf/plat/intel/soc/agilex5/platform.mk (revision f3083e2e6c508d58f9bce1b2fce5eeb0903a4c6d)
17931d332SJit Loon Lim#
27931d332SJit Loon Lim# Copyright (c) 2019-2020, ARM Limited and Contributors. All rights reserved.
37931d332SJit Loon Lim# Copyright (c) 2019-2023, Intel Corporation. All rights reserved.
429d1e29dSJit Loon Lim# Copyright (c) 2024-2025, Altera Corporation. All rights reserved.
57931d332SJit Loon Lim#
67931d332SJit Loon Lim# SPDX-License-Identifier: BSD-3-Clause
77931d332SJit Loon Lim#
87931d332SJit Loon Liminclude lib/xlat_tables_v2/xlat_tables.mk
929d1e29dSJit Loon Liminclude lib/libfdt/libfdt.mk
107931d332SJit Loon LimPLAT_INCLUDES		:=	\
117931d332SJit Loon Lim			-Iplat/intel/soc/agilex5/include/		\
127931d332SJit Loon Lim			-Iplat/intel/soc/common/drivers/		\
133eb5640aSSieu Mun Tang			-Iplat/intel/soc/common/lib/sha/		\
147931d332SJit Loon Lim			-Iplat/intel/soc/common/include/
157931d332SJit Loon Lim
167931d332SJit Loon Lim# GIC-600 configuration
177931d332SJit Loon LimGICV3_SUPPORT_GIC600	:=	1
187931d332SJit Loon Lim# Include GICv3 driver files
197931d332SJit Loon Liminclude drivers/arm/gic/v3/gicv3.mk
207931d332SJit Loon LimAGX5_GICv3_SOURCES	:=	\
217931d332SJit Loon Lim			${GICV3_SOURCES}				\
227931d332SJit Loon Lim			plat/common/plat_gicv3.c
237931d332SJit Loon Lim
247931d332SJit Loon LimPLAT_BL_COMMON_SOURCES	:=	\
257931d332SJit Loon Lim			${AGX5_GICv3_SOURCES}				\
2629d1e29dSJit Loon Lim			common/fdt_wrappers.c				\
277931d332SJit Loon Lim			drivers/cadence/combo_phy/cdns_combo_phy.c	\
287931d332SJit Loon Lim			drivers/cadence/emmc/cdns_sdmmc.c	\
297931d332SJit Loon Lim			drivers/cadence/nand/cdns_nand.c	\
307931d332SJit Loon Lim			drivers/delay_timer/delay_timer.c		\
317931d332SJit Loon Lim			drivers/delay_timer/generic_delay_timer.c	\
327931d332SJit Loon Lim			drivers/ti/uart/aarch64/16550_console.S		\
337931d332SJit Loon Lim			plat/intel/soc/common/aarch64/platform_common.c	\
347931d332SJit Loon Lim			plat/intel/soc/common/aarch64/plat_helpers.S	\
357931d332SJit Loon Lim			plat/intel/soc/common/drivers/ccu/ncore_ccu.c	\
367931d332SJit Loon Lim			plat/intel/soc/common/drivers/combophy/combophy.c			\
377931d332SJit Loon Lim			plat/intel/soc/common/drivers/sdmmc/sdmmc.c			\
387931d332SJit Loon Lim			plat/intel/soc/common/drivers/ddr/ddr.c			\
397931d332SJit Loon Lim			plat/intel/soc/common/drivers/nand/nand.c			\
403eb5640aSSieu Mun Tang			plat/intel/soc/common/lib/sha/sha.c				\
41*6fcd047bSJit Loon Lim			plat/intel/soc/common/lib/utils/alignment_utils.c \
4229d1e29dSJit Loon Lim			plat/intel/soc/common/socfpga_delay_timer.c	\
4329d1e29dSJit Loon Lim			plat/intel/soc/common/socfpga_dt.c
447931d332SJit Loon Lim
457931d332SJit Loon LimBL2_SOURCES		+=	\
467931d332SJit Loon Lim		common/desc_image_load.c				\
477931d332SJit Loon Lim		lib/xlat_tables_v2/aarch64/enable_mmu.S	\
487931d332SJit Loon Lim		lib/xlat_tables_v2/xlat_tables_context.c \
497931d332SJit Loon Lim		lib/xlat_tables_v2/xlat_tables_core.c \
507931d332SJit Loon Lim		lib/xlat_tables_v2/aarch64/xlat_tables_arch.c \
517931d332SJit Loon Lim		lib/xlat_tables_v2/xlat_tables_utils.c \
527931d332SJit Loon Lim		drivers/mmc/mmc.c					\
537931d332SJit Loon Lim		drivers/intel/soc/stratix10/io/s10_memmap_qspi.c	\
547931d332SJit Loon Lim		drivers/io/io_storage.c					\
557931d332SJit Loon Lim		drivers/io/io_block.c					\
567931d332SJit Loon Lim		drivers/io/io_fip.c					\
577931d332SJit Loon Lim		drivers/io/io_mtd.c					\
587931d332SJit Loon Lim		drivers/partition/partition.c				\
597931d332SJit Loon Lim		drivers/partition/gpt.c					\
607931d332SJit Loon Lim		drivers/synopsys/emmc/dw_mmc.c				\
617931d332SJit Loon Lim		lib/cpus/aarch64/cortex_a55.S				\
627931d332SJit Loon Lim		lib/cpus/aarch64/cortex_a76.S				\
637931d332SJit Loon Lim		plat/intel/soc/agilex5/soc/agilex5_clock_manager.c	\
647931d332SJit Loon Lim		plat/intel/soc/agilex5/soc/agilex5_memory_controller.c	\
657931d332SJit Loon Lim		plat/intel/soc/agilex5/soc/agilex5_mmc.c		\
667931d332SJit Loon Lim		plat/intel/soc/agilex5/soc/agilex5_pinmux.c		\
677931d332SJit Loon Lim		plat/intel/soc/agilex5/soc/agilex5_power_manager.c	\
68ce21a1a9SSieu Mun Tang		plat/intel/soc/agilex5/soc/agilex5_ddr.c		\
69ce21a1a9SSieu Mun Tang		plat/intel/soc/agilex5/soc/agilex5_iossm_mailbox.c	\
707931d332SJit Loon Lim		plat/intel/soc/common/bl2_plat_mem_params_desc.c	\
717931d332SJit Loon Lim		plat/intel/soc/common/socfpga_image_load.c		\
726cbe2c5dSMahesh Rao		plat/intel/soc/common/socfpga_ros.c			\
737931d332SJit Loon Lim		plat/intel/soc/common/socfpga_storage.c			\
747931d332SJit Loon Lim		plat/intel/soc/common/socfpga_vab.c			\
757931d332SJit Loon Lim		plat/intel/soc/common/soc/socfpga_emac.c		\
767931d332SJit Loon Lim		plat/intel/soc/common/soc/socfpga_firewall.c		\
777931d332SJit Loon Lim		plat/intel/soc/common/soc/socfpga_handoff.c		\
787931d332SJit Loon Lim		plat/intel/soc/common/soc/socfpga_mailbox.c		\
797931d332SJit Loon Lim		plat/intel/soc/common/soc/socfpga_reset_manager.c	\
807931d332SJit Loon Lim		plat/intel/soc/common/drivers/qspi/cadence_qspi.c	\
817931d332SJit Loon Lim		plat/intel/soc/agilex5/bl2_plat_setup.c			\
827931d332SJit Loon Lim		plat/intel/soc/common/drivers/wdt/watchdog.c
837931d332SJit Loon Lim
847931d332SJit Loon Liminclude lib/zlib/zlib.mk
857931d332SJit Loon LimPLAT_INCLUDES	+=	-Ilib/zlib
867931d332SJit Loon LimBL2_SOURCES	+=	$(ZLIB_SOURCES)
877931d332SJit Loon Lim
887931d332SJit Loon LimBL31_SOURCES	+=	\
897931d332SJit Loon Lim		drivers/arm/cci/cci.c					\
907931d332SJit Loon Lim		${XLAT_TABLES_LIB_SRCS}						\
917931d332SJit Loon Lim		lib/cpus/aarch64/aem_generic.S				\
927931d332SJit Loon Lim		lib/cpus/aarch64/cortex_a55.S				\
937931d332SJit Loon Lim		lib/cpus/aarch64/cortex_a76.S				\
947931d332SJit Loon Lim		plat/common/plat_psci_common.c				\
957931d332SJit Loon Lim		plat/intel/soc/agilex5/bl31_plat_setup.c		\
963c640c12STanmay Kathpalia		plat/intel/soc/agilex5/soc/agilex5_cache.S		\
97150d2be0SJit Loon Lim		plat/intel/soc/agilex5/soc/agilex5_clock_manager.c	\
987931d332SJit Loon Lim		plat/intel/soc/agilex5/soc/agilex5_power_manager.c	\
997931d332SJit Loon Lim		plat/intel/soc/common/socfpga_psci.c			\
1007931d332SJit Loon Lim		plat/intel/soc/common/socfpga_sip_svc.c			\
1017931d332SJit Loon Lim		plat/intel/soc/common/socfpga_sip_svc_v2.c			\
1027931d332SJit Loon Lim		plat/intel/soc/common/socfpga_topology.c		\
1037931d332SJit Loon Lim		plat/intel/soc/common/sip/socfpga_sip_ecc.c		\
1047931d332SJit Loon Lim		plat/intel/soc/common/sip/socfpga_sip_fcs.c		\
1057931d332SJit Loon Lim		plat/intel/soc/common/soc/socfpga_mailbox.c		\
106ea906b9bSSieu Mun Tang		plat/intel/soc/common/soc/socfpga_system_manager.c	\
1077931d332SJit Loon Lim		plat/intel/soc/common/soc/socfpga_reset_manager.c
1087931d332SJit Loon Lim
1097931d332SJit Loon Lim# Configs for A76 and A55
1107931d332SJit Loon LimHW_ASSISTED_COHERENCY := 1
1117931d332SJit Loon LimUSE_COHERENT_MEM := 0
1127931d332SJit Loon LimCTX_INCLUDE_AARCH32_REGS := 0
1137931d332SJit Loon LimERRATA_A55_1530923 := 1
1147931d332SJit Loon Lim
11532a87d44SJit Loon Lim# Don't have the Linux kernel as a BL33 image by default
11632a87d44SJit Loon LimARM_LINUX_KERNEL_AS_BL33	:=	0
11732a87d44SJit Loon Lim$(eval $(call assert_boolean,ARM_LINUX_KERNEL_AS_BL33))
11832a87d44SJit Loon Lim$(eval $(call add_define,ARM_LINUX_KERNEL_AS_BL33))
1197931d332SJit Loon Lim$(eval $(call add_define,ARM_PRELOADED_DTB_BASE))
1207931d332SJit Loon Lim
121ef8b05f5SSieu Mun Tang# Configs for Boot Source
122ef8b05f5SSieu Mun TangSOCFPGA_BOOT_SOURCE_SDMMC		?=	0
123ef8b05f5SSieu Mun TangSOCFPGA_BOOT_SOURCE_QSPI		?=	0
124ef8b05f5SSieu Mun TangSOCFPGA_BOOT_SOURCE_NAND		?=	0
125ef8b05f5SSieu Mun Tang
126ef8b05f5SSieu Mun Tang$(eval $(call assert_booleans,\
127ef8b05f5SSieu Mun Tang	$(sort \
128ef8b05f5SSieu Mun Tang		SOCFPGA_BOOT_SOURCE_SDMMC \
129ef8b05f5SSieu Mun Tang		SOCFPGA_BOOT_SOURCE_QSPI \
130ef8b05f5SSieu Mun Tang		SOCFPGA_BOOT_SOURCE_NAND \
131ef8b05f5SSieu Mun Tang)))
132ef8b05f5SSieu Mun Tang$(eval $(call add_defines,\
133ef8b05f5SSieu Mun Tang	$(sort \
134ef8b05f5SSieu Mun Tang		SOCFPGA_BOOT_SOURCE_SDMMC \
135ef8b05f5SSieu Mun Tang		SOCFPGA_BOOT_SOURCE_QSPI \
136ef8b05f5SSieu Mun Tang		SOCFPGA_BOOT_SOURCE_NAND \
137ef8b05f5SSieu Mun Tang)))
138ef8b05f5SSieu Mun Tang
1393eb5640aSSieu Mun Tang# Configs for VAB Authentication
1403eb5640aSSieu Mun TangSOCFPGA_SECURE_VAB_AUTH  := 	0
1413eb5640aSSieu Mun Tang$(eval $(call assert_boolean,SOCFPGA_SECURE_VAB_AUTH))
1423eb5640aSSieu Mun Tang$(eval $(call add_define,SOCFPGA_SECURE_VAB_AUTH))
1433eb5640aSSieu Mun Tang
1447931d332SJit Loon LimPROGRAMMABLE_RESET_ADDRESS	:= 0
1457931d332SJit Loon LimRESET_TO_BL2			:= 1
1467931d332SJit Loon LimBL2_INV_DCACHE			:= 0
147d1c58d86SGirisha Dengi
148d1c58d86SGirisha Dengi#To get the TF-A version via SMC calls
149d1c58d86SGirisha DengiDEFINES += -DVERSION_MAJOR=${VERSION_MAJOR}
150d1c58d86SGirisha DengiDEFINES += -DVERSION_MINOR=${VERSION_MINOR}
151d1c58d86SGirisha DengiDEFINES += -DVERSION_PATCH=${VERSION_PATCH}
152