1dfd5bfb0SChandni Cherukuri# 205533d99SBhupesh Sharma# Copyright (c) 2020-2025, Arm Limited. All rights reserved. 3dfd5bfb0SChandni Cherukuri# 4dfd5bfb0SChandni Cherukuri# SPDX-License-Identifier: BSD-3-Clause 5dfd5bfb0SChandni Cherukuri# 6dfd5bfb0SChandni Cherukuri 78840711fSManoj Kumar# Making sure the Morello platform type is specified 88840711fSManoj Kumarifeq ($(filter ${TARGET_PLATFORM}, fvp soc),) 98840711fSManoj Kumar $(error TARGET_PLATFORM must be fvp or soc) 108840711fSManoj Kumarendif 118840711fSManoj Kumar 12dfd5bfb0SChandni CherukuriMORELLO_BASE := plat/arm/board/morello 13dfd5bfb0SChandni Cherukuri 14dfd5bfb0SChandni CherukuriPLAT_INCLUDES := -I${MORELLO_BASE}/include 15dfd5bfb0SChandni Cherukuri 16dfd5bfb0SChandni CherukuriMORELLO_CPU_SOURCES := lib/cpus/aarch64/rainier.S 17dfd5bfb0SChandni Cherukuri 186c07a927SChandni Cherukuri# GIC-600 configuration 19*c5c54e20SBoyan KaratotevUSE_GIC_DRIVER := 3 206c07a927SChandni CherukuriGICV3_SUPPORT_GIC600 := 1 216c07a927SChandni Cherukuri 22dfd5bfb0SChandni CherukuriPLAT_BL_COMMON_SOURCES := ${MORELLO_BASE}/morello_plat.c \ 23dfd5bfb0SChandni Cherukuri ${MORELLO_BASE}/aarch64/morello_helper.S 24dfd5bfb0SChandni Cherukuri 254af53977SManoj KumarBL1_SOURCES := ${MORELLO_CPU_SOURCES} \ 264af53977SManoj Kumar ${MORELLO_BASE}/morello_err.c \ 274af53977SManoj Kumar ${MORELLO_BASE}/morello_trusted_boot.c \ 284af53977SManoj Kumar ${MORELLO_BASE}/morello_bl1_setup.c \ 294af53977SManoj Kumar drivers/arm/sbsa/sbsa.c 304af53977SManoj Kumar 314af53977SManoj KumarBL2_SOURCES := ${MORELLO_BASE}/morello_security.c \ 324af53977SManoj Kumar ${MORELLO_BASE}/morello_err.c \ 334af53977SManoj Kumar ${MORELLO_BASE}/morello_trusted_boot.c \ 346ad6465eSsah01 ${MORELLO_BASE}/morello_bl2_setup.c \ 356ad6465eSsah01 ${MORELLO_BASE}/morello_image_load.c \ 364af53977SManoj Kumar lib/utils/mem_region.c \ 376ad6465eSsah01 drivers/arm/css/sds/sds.c 384af53977SManoj Kumar 39dfd5bfb0SChandni CherukuriBL31_SOURCES := ${MORELLO_CPU_SOURCES} \ 40dfd5bfb0SChandni Cherukuri ${MORELLO_BASE}/morello_bl31_setup.c \ 4102a5bcb0SWerner Lewis ${MORELLO_BASE}/morello_pm.c \ 42dfd5bfb0SChandni Cherukuri ${MORELLO_BASE}/morello_topology.c \ 43dfd5bfb0SChandni Cherukuri ${MORELLO_BASE}/morello_security.c \ 44dfd5bfb0SChandni Cherukuri drivers/arm/css/sds/sds.c 45dfd5bfb0SChandni Cherukuri 464af53977SManoj KumarFDT_SOURCES += fdts/morello-${TARGET_PLATFORM}.dts \ 474af53977SManoj Kumar ${MORELLO_BASE}/fdts/morello_fw_config.dts \ 484af53977SManoj Kumar ${MORELLO_BASE}/fdts/morello_tb_fw_config.dts \ 496ad6465eSsah01 ${MORELLO_BASE}/fdts/morello_nt_fw_config.dts 504af53977SManoj Kumar 514af53977SManoj KumarFW_CONFIG := ${BUILD_PLAT}/fdts/morello_fw_config.dtb 52be79071eSPatrik BerglundHW_CONFIG := ${BUILD_PLAT}/fdts/morello-${TARGET_PLATFORM}.dtb 534af53977SManoj KumarTB_FW_CONFIG := ${BUILD_PLAT}/fdts/morello_tb_fw_config.dtb 546ad6465eSsah01NT_FW_CONFIG := ${BUILD_PLAT}/fdts/morello_nt_fw_config.dtb 554af53977SManoj Kumar 564af53977SManoj Kumar# Add the FW_CONFIG to FIP and specify the same to certtool 574af53977SManoj Kumar$(eval $(call TOOL_ADD_PAYLOAD,${FW_CONFIG},--fw-config,${FW_CONFIG})) 58be79071eSPatrik Berglund# Add the HW_CONFIG to FIP and specify the same to certtool 59be79071eSPatrik Berglund$(eval $(call TOOL_ADD_PAYLOAD,${HW_CONFIG},--hw-config,${HW_CONFIG})) 604af53977SManoj Kumar# Add the TB_FW_CONFIG to FIP and specify the same to certtool 614af53977SManoj Kumar$(eval $(call TOOL_ADD_PAYLOAD,${TB_FW_CONFIG},--tb-fw-config,${TB_FW_CONFIG})) 626ad6465eSsah01# Add the NT_FW_CONFIG to FIP and specify the same to certtool 636ad6465eSsah01$(eval $(call TOOL_ADD_PAYLOAD,${NT_FW_CONFIG},--nt-fw-config,${NT_FW_CONFIG})) 644af53977SManoj Kumar 654af53977SManoj KumarMORELLO_FW_NVCTR_VAL := 0 664af53977SManoj KumarTFW_NVCTR_VAL := ${MORELLO_FW_NVCTR_VAL} 674af53977SManoj KumarNTFW_NVCTR_VAL := ${MORELLO_FW_NVCTR_VAL} 68dfd5bfb0SChandni Cherukuri 69dfd5bfb0SChandni Cherukuri# TF-A not required to load the SCP Images 70dfd5bfb0SChandni Cherukurioverride CSS_LOAD_SCP_IMAGES := 0 71dfd5bfb0SChandni Cherukuri 72dfd5bfb0SChandni Cherukurioverride NEED_BL2U := no 73dfd5bfb0SChandni Cherukuri 74dfd5bfb0SChandni Cherukuri# 32 bit mode not supported 75dfd5bfb0SChandni Cherukurioverride CTX_INCLUDE_AARCH32_REGS := 0 76dfd5bfb0SChandni Cherukuri 77dfd5bfb0SChandni Cherukurioverride ARM_PLAT_MT := 1 78dfd5bfb0SChandni Cherukuri 7905330a49SManoj Kumaroverride ARM_BL31_IN_DRAM := 1 8005330a49SManoj Kumar 814f7330dcSsahiloverride PSCI_EXTENDED_STATE_ID := 1 824f7330dcSsahiloverride ARM_RECOM_STATE_ID_ENC := 1 834f7330dcSsahil 84f94c84baSManoj Kumar# Errata workarounds: 85f94c84baSManoj KumarERRATA_N1_1868343 := 1 86f94c84baSManoj Kumar 87dfd5bfb0SChandni Cherukuri# Select SCMI/SDS drivers instead of SCPI/BOM driver for communicating with the 88dfd5bfb0SChandni Cherukuri# SCP during power management operations and for SCP RAM Firmware transfer. 89dfd5bfb0SChandni CherukuriCSS_USE_SCMI_SDS_DRIVER := 1 90dfd5bfb0SChandni Cherukuri 91dfd5bfb0SChandni Cherukuri# System coherency is managed in hardware 92dfd5bfb0SChandni CherukuriHW_ASSISTED_COHERENCY := 1 93dfd5bfb0SChandni Cherukuri 94dfd5bfb0SChandni Cherukuri# When building for systems with hardware-assisted coherency, there's no need to 95dfd5bfb0SChandni Cherukuri# use USE_COHERENT_MEM. Require that USE_COHERENT_MEM must be set to 0 too. 96dfd5bfb0SChandni CherukuriUSE_COHERENT_MEM := 0 97dfd5bfb0SChandni Cherukuri 988840711fSManoj Kumar# Add TARGET_PLATFORM to differentiate between Morello FVP and Morello SoC platform 998840711fSManoj Kumar$(eval $(call add_define,TARGET_PLATFORM_$(call uppercase,${TARGET_PLATFORM}))) 1008840711fSManoj Kumar 1014af53977SManoj Kumar# Add MORELLO_FW_NVCTR_VAL 1024af53977SManoj Kumar$(eval $(call add_define,MORELLO_FW_NVCTR_VAL)) 1034af53977SManoj Kumar 104dfd5bfb0SChandni Cherukuriinclude plat/arm/common/arm_common.mk 105dfd5bfb0SChandni Cherukuriinclude plat/arm/css/common/css_common.mk 106dfd5bfb0SChandni Cherukuriinclude plat/arm/board/common/board_common.mk 107