xref: /rk3399_ARM-atf/plat/intel/soc/agilex5/platform.mk (revision 29d1e29d7cb137311529603056ce36ff268f861c)
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.
4*29d1e29dSJit 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
9*29d1e29dSJit 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}				\
26*29d1e29dSJit 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*29d1e29dSJit Loon Lim			plat/intel/soc/common/socfpga_delay_timer.c	\
42*29d1e29dSJit Loon Lim			plat/intel/soc/common/socfpga_dt.c
437931d332SJit Loon Lim
447931d332SJit Loon LimBL2_SOURCES		+=	\
457931d332SJit Loon Lim		common/desc_image_load.c				\
467931d332SJit Loon Lim		lib/xlat_tables_v2/aarch64/enable_mmu.S	\
477931d332SJit Loon Lim		lib/xlat_tables_v2/xlat_tables_context.c \
487931d332SJit Loon Lim		lib/xlat_tables_v2/xlat_tables_core.c \
497931d332SJit Loon Lim		lib/xlat_tables_v2/aarch64/xlat_tables_arch.c \
507931d332SJit Loon Lim		lib/xlat_tables_v2/xlat_tables_utils.c \
517931d332SJit Loon Lim		drivers/mmc/mmc.c					\
527931d332SJit Loon Lim		drivers/intel/soc/stratix10/io/s10_memmap_qspi.c	\
537931d332SJit Loon Lim		drivers/io/io_storage.c					\
547931d332SJit Loon Lim		drivers/io/io_block.c					\
557931d332SJit Loon Lim		drivers/io/io_fip.c					\
567931d332SJit Loon Lim		drivers/io/io_mtd.c					\
577931d332SJit Loon Lim		drivers/partition/partition.c				\
587931d332SJit Loon Lim		drivers/partition/gpt.c					\
597931d332SJit Loon Lim		drivers/synopsys/emmc/dw_mmc.c				\
607931d332SJit Loon Lim		lib/cpus/aarch64/cortex_a55.S				\
617931d332SJit Loon Lim		lib/cpus/aarch64/cortex_a76.S				\
627931d332SJit Loon Lim		plat/intel/soc/agilex5/soc/agilex5_clock_manager.c	\
637931d332SJit Loon Lim		plat/intel/soc/agilex5/soc/agilex5_memory_controller.c	\
647931d332SJit Loon Lim		plat/intel/soc/agilex5/soc/agilex5_mmc.c		\
657931d332SJit Loon Lim		plat/intel/soc/agilex5/soc/agilex5_pinmux.c		\
667931d332SJit Loon Lim		plat/intel/soc/agilex5/soc/agilex5_power_manager.c	\
67ce21a1a9SSieu Mun Tang		plat/intel/soc/agilex5/soc/agilex5_ddr.c		\
68ce21a1a9SSieu Mun Tang		plat/intel/soc/agilex5/soc/agilex5_iossm_mailbox.c	\
697931d332SJit Loon Lim		plat/intel/soc/common/bl2_plat_mem_params_desc.c	\
707931d332SJit Loon Lim		plat/intel/soc/common/socfpga_image_load.c		\
716cbe2c5dSMahesh Rao		plat/intel/soc/common/socfpga_ros.c			\
727931d332SJit Loon Lim		plat/intel/soc/common/socfpga_storage.c			\
737931d332SJit Loon Lim		plat/intel/soc/common/socfpga_vab.c			\
747931d332SJit Loon Lim		plat/intel/soc/common/soc/socfpga_emac.c		\
757931d332SJit Loon Lim		plat/intel/soc/common/soc/socfpga_firewall.c		\
767931d332SJit Loon Lim		plat/intel/soc/common/soc/socfpga_handoff.c		\
777931d332SJit Loon Lim		plat/intel/soc/common/soc/socfpga_mailbox.c		\
787931d332SJit Loon Lim		plat/intel/soc/common/soc/socfpga_reset_manager.c	\
797931d332SJit Loon Lim		plat/intel/soc/common/drivers/qspi/cadence_qspi.c	\
807931d332SJit Loon Lim		plat/intel/soc/agilex5/bl2_plat_setup.c			\
817931d332SJit Loon Lim		plat/intel/soc/common/drivers/wdt/watchdog.c
827931d332SJit Loon Lim
837931d332SJit Loon Liminclude lib/zlib/zlib.mk
847931d332SJit Loon LimPLAT_INCLUDES	+=	-Ilib/zlib
857931d332SJit Loon LimBL2_SOURCES	+=	$(ZLIB_SOURCES)
867931d332SJit Loon Lim
877931d332SJit Loon LimBL31_SOURCES	+=	\
887931d332SJit Loon Lim		drivers/arm/cci/cci.c					\
897931d332SJit Loon Lim		${XLAT_TABLES_LIB_SRCS}						\
907931d332SJit Loon Lim		lib/cpus/aarch64/aem_generic.S				\
917931d332SJit Loon Lim		lib/cpus/aarch64/cortex_a55.S				\
927931d332SJit Loon Lim		lib/cpus/aarch64/cortex_a76.S				\
937931d332SJit Loon Lim		plat/common/plat_psci_common.c				\
947931d332SJit Loon Lim		plat/intel/soc/agilex5/bl31_plat_setup.c		\
953c640c12STanmay Kathpalia		plat/intel/soc/agilex5/soc/agilex5_cache.S		\
96150d2be0SJit Loon Lim		plat/intel/soc/agilex5/soc/agilex5_clock_manager.c	\
977931d332SJit Loon Lim		plat/intel/soc/agilex5/soc/agilex5_power_manager.c	\
987931d332SJit Loon Lim		plat/intel/soc/common/socfpga_psci.c			\
997931d332SJit Loon Lim		plat/intel/soc/common/socfpga_sip_svc.c			\
1007931d332SJit Loon Lim		plat/intel/soc/common/socfpga_sip_svc_v2.c			\
1017931d332SJit Loon Lim		plat/intel/soc/common/socfpga_topology.c		\
1027931d332SJit Loon Lim		plat/intel/soc/common/sip/socfpga_sip_ecc.c		\
1037931d332SJit Loon Lim		plat/intel/soc/common/sip/socfpga_sip_fcs.c		\
1047931d332SJit Loon Lim		plat/intel/soc/common/soc/socfpga_mailbox.c		\
105ea906b9bSSieu Mun Tang		plat/intel/soc/common/soc/socfpga_system_manager.c	\
1067931d332SJit Loon Lim		plat/intel/soc/common/soc/socfpga_reset_manager.c
1077931d332SJit Loon Lim
1087931d332SJit Loon Lim# Configs for A76 and A55
1097931d332SJit Loon LimHW_ASSISTED_COHERENCY := 1
1107931d332SJit Loon LimUSE_COHERENT_MEM := 0
1117931d332SJit Loon LimCTX_INCLUDE_AARCH32_REGS := 0
1127931d332SJit Loon LimERRATA_A55_1530923 := 1
1137931d332SJit Loon Lim
11432a87d44SJit Loon Lim# Don't have the Linux kernel as a BL33 image by default
11532a87d44SJit Loon LimARM_LINUX_KERNEL_AS_BL33	:=	0
11632a87d44SJit Loon Lim$(eval $(call assert_boolean,ARM_LINUX_KERNEL_AS_BL33))
11732a87d44SJit Loon Lim$(eval $(call add_define,ARM_LINUX_KERNEL_AS_BL33))
1187931d332SJit Loon Lim$(eval $(call add_define,ARM_PRELOADED_DTB_BASE))
1197931d332SJit Loon Lim
120ef8b05f5SSieu Mun Tang# Configs for Boot Source
121ef8b05f5SSieu Mun TangSOCFPGA_BOOT_SOURCE_SDMMC		?=	0
122ef8b05f5SSieu Mun TangSOCFPGA_BOOT_SOURCE_QSPI		?=	0
123ef8b05f5SSieu Mun TangSOCFPGA_BOOT_SOURCE_NAND		?=	0
124ef8b05f5SSieu Mun Tang
125ef8b05f5SSieu Mun Tang$(eval $(call assert_booleans,\
126ef8b05f5SSieu Mun Tang	$(sort \
127ef8b05f5SSieu Mun Tang		SOCFPGA_BOOT_SOURCE_SDMMC \
128ef8b05f5SSieu Mun Tang		SOCFPGA_BOOT_SOURCE_QSPI \
129ef8b05f5SSieu Mun Tang		SOCFPGA_BOOT_SOURCE_NAND \
130ef8b05f5SSieu Mun Tang)))
131ef8b05f5SSieu Mun Tang$(eval $(call add_defines,\
132ef8b05f5SSieu Mun Tang	$(sort \
133ef8b05f5SSieu Mun Tang		SOCFPGA_BOOT_SOURCE_SDMMC \
134ef8b05f5SSieu Mun Tang		SOCFPGA_BOOT_SOURCE_QSPI \
135ef8b05f5SSieu Mun Tang		SOCFPGA_BOOT_SOURCE_NAND \
136ef8b05f5SSieu Mun Tang)))
137ef8b05f5SSieu Mun Tang
1383eb5640aSSieu Mun Tang# Configs for VAB Authentication
1393eb5640aSSieu Mun TangSOCFPGA_SECURE_VAB_AUTH  := 	0
1403eb5640aSSieu Mun Tang$(eval $(call assert_boolean,SOCFPGA_SECURE_VAB_AUTH))
1413eb5640aSSieu Mun Tang$(eval $(call add_define,SOCFPGA_SECURE_VAB_AUTH))
1423eb5640aSSieu Mun Tang
1437931d332SJit Loon LimPROGRAMMABLE_RESET_ADDRESS	:= 0
1447931d332SJit Loon LimRESET_TO_BL2			:= 1
1457931d332SJit Loon LimBL2_INV_DCACHE			:= 0