diff --git a/docs/plat/arm/arm-build-options.rst b/docs/plat/arm/arm-build-options.rst index 2aa973890af3b1192203a04e329e171797300259..79b40d166c86f11a3bbc75945b26b6993810afba 100644 --- a/docs/plat/arm/arm-build-options.rst +++ b/docs/plat/arm/arm-build-options.rst @@ -132,6 +132,12 @@ Arm CSS Platform-Specific Build Options valid value greater than 1, the platform code performs required configuration to support multi-chip operation. +- ``CSS_SGI_PLATFORM_VARIANT``: Selects the variant of a SGI/RD platform. A + particular SGI/RD platform may have multiple variants which may differ in + core count, cluster count or other peripherals. This build option is used + to select the appropriate platform variant for the build. The range of + valid values is platform specific. + -------------- *Copyright (c) 2019-2021, Arm Limited. All rights reserved.* diff --git a/plat/arm/board/rde1edge/platform.mk b/plat/arm/board/rde1edge/platform.mk index 53074f495e8d498a9a6b19cbaa014d2d7037fe15..0f9dd496a74018b814579933efb3e9cdb696a253 100644 --- a/plat/arm/board/rde1edge/platform.mk +++ b/plat/arm/board/rde1edge/platform.mk @@ -58,4 +58,9 @@ ifneq ($(CSS_SGI_CHIP_COUNT),1) ${CSS_SGI_CHIP_COUNT}.") endif +ifneq ($(CSS_SGI_PLATFORM_VARIANT),0) + $(error "CSS_SGI_PLATFORM_VARIANT for RD-E1-Edge should always be 0, \ + currently set to ${CSS_SGI_PLATFORM_VARIANT}.") +endif + override CTX_INCLUDE_AARCH32_REGS := 0 diff --git a/plat/arm/board/rdn1edge/platform.mk b/plat/arm/board/rdn1edge/platform.mk index d65854f8d05ccb91ad58092a65e5bed50f29e185..22ab312eefe25a1d7675ff1420c0d3100fc809c0 100644 --- a/plat/arm/board/rdn1edge/platform.mk +++ b/plat/arm/board/rdn1edge/platform.mk @@ -65,4 +65,9 @@ ifneq ($(CSS_SGI_CHIP_COUNT),$(filter $(CSS_SGI_CHIP_COUNT),$(SEQ))) set to ${CSS_SGI_CHIP_COUNT}.") endif +ifneq ($(CSS_SGI_PLATFORM_VARIANT),0) + $(error "CSS_SGI_PLATFORM_VARIANT for RD-N1-Edge should always be 0, \ + currently set to ${CSS_SGI_PLATFORM_VARIANT}.") +endif + override CTX_INCLUDE_AARCH32_REGS := 0 diff --git a/plat/arm/board/rdn2/platform.mk b/plat/arm/board/rdn2/platform.mk index 03771dc3d18146346f4c5d53c208c1d0ff284b5d..bd50fa29b2835d19615499c609cf6875cfe0c33d 100644 --- a/plat/arm/board/rdn2/platform.mk +++ b/plat/arm/board/rdn2/platform.mk @@ -58,3 +58,8 @@ $(eval $(call TOOL_ADD_PAYLOAD,${NT_FW_CONFIG},--nt-fw-config)) override CTX_INCLUDE_AARCH32_REGS := 0 override ENABLE_AMU := 1 + +ifneq ($(CSS_SGI_PLATFORM_VARIANT),0) + $(error "CSS_SGI_PLATFORM_VARIANT for RD-N2 should be 0, currently set to \ + ${CSS_SGI_PLATFORM_VARIANT}.") +endif diff --git a/plat/arm/board/rdv1/platform.mk b/plat/arm/board/rdv1/platform.mk index 2ffd139c96ac07a652b3c577315823171c7b7ae8..1ae85de7c74ae2b72203a8670be87a8bccedae12 100644 --- a/plat/arm/board/rdv1/platform.mk +++ b/plat/arm/board/rdv1/platform.mk @@ -58,3 +58,8 @@ $(eval $(call TOOL_ADD_PAYLOAD,${NT_FW_CONFIG},--nt-fw-config,${NT_FW_CONFIG})) override CTX_INCLUDE_AARCH32_REGS := 0 override ENABLE_AMU := 1 + +ifneq ($(CSS_SGI_PLATFORM_VARIANT),0) + $(error "CSS_SGI_PLATFORM_VARIANT for RD-V1 should always be 0, \ + currently set to ${CSS_SGI_PLATFORM_VARIANT}.") +endif diff --git a/plat/arm/board/rdv1mc/platform.mk b/plat/arm/board/rdv1mc/platform.mk index fb057936ad439643fa4ebded251d964b74f4260d..06a2047393033b912afb352d97861d81380e9985 100644 --- a/plat/arm/board/rdv1mc/platform.mk +++ b/plat/arm/board/rdv1mc/platform.mk @@ -68,3 +68,8 @@ NT_FW_CONFIG := ${BUILD_PLAT}/fdts/${PLAT}_nt_fw_config.dtb $(eval $(call TOOL_ADD_PAYLOAD,${NT_FW_CONFIG},--nt-fw-config,${NT_FW_CONFIG})) override CTX_INCLUDE_AARCH32_REGS := 0 + +ifneq ($(CSS_SGI_PLATFORM_VARIANT),0) + $(error "CSS_SGI_PLATFORM_VARIANT for RD-V1-MC should always be 0, \ + currently set to ${CSS_SGI_PLATFORM_VARIANT}.") +endif diff --git a/plat/arm/board/sgi575/platform.mk b/plat/arm/board/sgi575/platform.mk index 89abcfe8ee5c2627ed9c6dcc4303cfe8ceec6a0a..0761b77ef2886a9a0ec8a6c1d76e89a8be9baaf1 100644 --- a/plat/arm/board/sgi575/platform.mk +++ b/plat/arm/board/sgi575/platform.mk @@ -58,3 +58,8 @@ ifneq ($(CSS_SGI_CHIP_COUNT),1) $(error "Chip count for SGI575 should be 1, currently set to \ ${CSS_SGI_CHIP_COUNT}.") endif + +ifneq ($(CSS_SGI_PLATFORM_VARIANT),0) + $(error "CSS_SGI_PLATFORM_VARIANT for SGI575 should always be 0,\ + currently set to ${CSS_SGI_PLATFORM_VARIANT}.") +endif diff --git a/plat/arm/css/sgi/sgi-common.mk b/plat/arm/css/sgi/sgi-common.mk index 615f53dc97992b0600d6def2865527b64368d1a7..1e2054f84a7eb8ed04cb165108187289e5b6be97 100644 --- a/plat/arm/css/sgi/sgi-common.mk +++ b/plat/arm/css/sgi/sgi-common.mk @@ -18,6 +18,8 @@ HANDLE_EA_EL3_FIRST := 0 CSS_SGI_CHIP_COUNT := 1 +CSS_SGI_PLATFORM_VARIANT := 0 + INTERCONNECT_SOURCES := ${CSS_ENT_BASE}/sgi_interconnect.c PLAT_INCLUDES += -I${CSS_ENT_BASE}/include @@ -57,6 +59,8 @@ $(eval $(call add_define,SGI_PLAT)) $(eval $(call add_define,CSS_SGI_CHIP_COUNT)) +$(eval $(call add_define,CSS_SGI_PLATFORM_VARIANT)) + override CSS_LOAD_SCP_IMAGES := 0 override NEED_BL2U := no override ARM_BL31_IN_DRAM := 1