1*91f16700Schasinglulu# Copyright (c) 2020-2021, ARM Limited and Contributors. All rights reserved. 2*91f16700Schasinglulu# 3*91f16700Schasinglulu# SPDX-License-Identifier: BSD-3-Clause 4*91f16700Schasinglulu# 5*91f16700Schasinglulu 6*91f16700Schasinglulu# Enable GICv4 extension with multichip driver 7*91f16700SchasingluluGIC_ENABLE_V4_EXTN := 1 8*91f16700SchasingluluGICV3_IMPL_GIC600_MULTICHIP := 1 9*91f16700Schasinglulu 10*91f16700Schasingluluinclude plat/arm/css/sgi/sgi-common.mk 11*91f16700Schasinglulu 12*91f16700SchasingluluRDV1MC_BASE = plat/arm/board/rdv1mc 13*91f16700Schasinglulu 14*91f16700SchasingluluPLAT_INCLUDES += -I${RDV1MC_BASE}/include/ 15*91f16700Schasinglulu 16*91f16700SchasingluluSGI_CPU_SOURCES := lib/cpus/aarch64/neoverse_v1.S 17*91f16700Schasinglulu 18*91f16700SchasingluluPLAT_BL_COMMON_SOURCES += ${CSS_ENT_BASE}/sgi_plat.c 19*91f16700Schasinglulu 20*91f16700SchasingluluBL1_SOURCES += ${SGI_CPU_SOURCES} \ 21*91f16700Schasinglulu ${RDV1MC_BASE}/rdv1mc_err.c 22*91f16700Schasinglulu 23*91f16700SchasingluluBL2_SOURCES += ${RDV1MC_BASE}/rdv1mc_plat.c \ 24*91f16700Schasinglulu ${RDV1MC_BASE}/rdv1mc_security.c \ 25*91f16700Schasinglulu ${RDV1MC_BASE}/rdv1mc_err.c \ 26*91f16700Schasinglulu drivers/arm/tzc/tzc400.c \ 27*91f16700Schasinglulu plat/arm/common/arm_tzc400.c \ 28*91f16700Schasinglulu lib/utils/mem_region.c \ 29*91f16700Schasinglulu plat/arm/common/arm_nor_psci_mem_protect.c 30*91f16700Schasinglulu 31*91f16700SchasingluluBL31_SOURCES += ${SGI_CPU_SOURCES} \ 32*91f16700Schasinglulu ${RDV1MC_BASE}/rdv1mc_plat.c \ 33*91f16700Schasinglulu ${RDV1MC_BASE}/rdv1mc_topology.c \ 34*91f16700Schasinglulu drivers/cfi/v2m/v2m_flash.c \ 35*91f16700Schasinglulu drivers/arm/gic/v3/gic600_multichip.c \ 36*91f16700Schasinglulu lib/utils/mem_region.c \ 37*91f16700Schasinglulu plat/arm/common/arm_nor_psci_mem_protect.c 38*91f16700Schasinglulu 39*91f16700Schasingluluifeq (${TRUSTED_BOARD_BOOT}, 1) 40*91f16700SchasingluluBL1_SOURCES += ${RDV1MC_BASE}/rdv1mc_trusted_boot.c 41*91f16700SchasingluluBL2_SOURCES += ${RDV1MC_BASE}/rdv1mc_trusted_boot.c 42*91f16700Schasingluluendif 43*91f16700Schasinglulu 44*91f16700Schasinglulu# Enable dynamic addition of MMAP regions in BL31 45*91f16700SchasingluluBL31_CFLAGS += -DPLAT_XLAT_TABLES_DYNAMIC 46*91f16700Schasinglulu 47*91f16700Schasinglulu# Add the FDT_SOURCES and options for Dynamic Config 48*91f16700SchasingluluFDT_SOURCES += ${RDV1MC_BASE}/fdts/${PLAT}_fw_config.dts \ 49*91f16700Schasinglulu ${RDV1MC_BASE}/fdts/${PLAT}_tb_fw_config.dts 50*91f16700SchasingluluFW_CONFIG := ${BUILD_PLAT}/fdts/${PLAT}_fw_config.dtb 51*91f16700SchasingluluTB_FW_CONFIG := ${BUILD_PLAT}/fdts/${PLAT}_tb_fw_config.dtb 52*91f16700Schasinglulu 53*91f16700Schasinglulu# Add the FW_CONFIG to FIP and specify the same to certtool 54*91f16700Schasinglulu$(eval $(call TOOL_ADD_PAYLOAD,${FW_CONFIG},--fw-config,${FW_CONFIG})) 55*91f16700Schasinglulu# Add the TB_FW_CONFIG to FIP and specify the same to certtool 56*91f16700Schasinglulu$(eval $(call TOOL_ADD_PAYLOAD,${TB_FW_CONFIG},--tb-fw-config,${TB_FW_CONFIG})) 57*91f16700Schasinglulu 58*91f16700Schasinglulu$(eval $(call CREATE_SEQ,SEQ,4)) 59*91f16700Schasingluluifneq ($(CSS_SGI_CHIP_COUNT),$(filter $(CSS_SGI_CHIP_COUNT),$(SEQ))) 60*91f16700Schasinglulu $(error "Chip count for RD-V1-MC should be either $(SEQ) \ 61*91f16700Schasinglulu currently it is set to ${CSS_SGI_CHIP_COUNT}.") 62*91f16700Schasingluluendif 63*91f16700Schasinglulu 64*91f16700SchasingluluFDT_SOURCES += ${RDV1MC_BASE}/fdts/${PLAT}_nt_fw_config.dts 65*91f16700SchasingluluNT_FW_CONFIG := ${BUILD_PLAT}/fdts/${PLAT}_nt_fw_config.dtb 66*91f16700Schasinglulu 67*91f16700Schasinglulu# Add the NT_FW_CONFIG to FIP and specify the same to certtool 68*91f16700Schasinglulu$(eval $(call TOOL_ADD_PAYLOAD,${NT_FW_CONFIG},--nt-fw-config,${NT_FW_CONFIG})) 69*91f16700Schasinglulu 70*91f16700Schasingluluoverride CTX_INCLUDE_AARCH32_REGS := 0 71*91f16700Schasingluluoverride ENABLE_FEAT_AMU := 1 72*91f16700Schasinglulu 73*91f16700Schasingluluifneq ($(CSS_SGI_PLATFORM_VARIANT),0) 74*91f16700Schasinglulu $(error "CSS_SGI_PLATFORM_VARIANT for RD-V1-MC should always be 0, \ 75*91f16700Schasinglulu currently set to ${CSS_SGI_PLATFORM_VARIANT}.") 76*91f16700Schasingluluendif 77