1# Copyright (c) 2020-2024, Arm Limited and Contributors. All rights reserved.
2#
3# SPDX-License-Identifier: BSD-3-Clause
4#
5
6# RD-V1 platform uses GIC-700 which is based on GICv4.1
7GIC_ENABLE_V4_EXTN	:=	1
8
9include plat/arm/board/neoverse_rd/common/nrd-common.mk
10
11RDV1_BASE		=	plat/arm/board/neoverse_rd/platform/rdv1
12
13PLAT_INCLUDES		+=	-I${NRD_COMMON_BASE}/include/nrd1/	\
14				-I${RDV1_BASE}/include/
15
16NRD_CPU_SOURCES		:=	lib/cpus/aarch64/neoverse_v1.S
17
18PLAT_BL_COMMON_SOURCES	+=	${NRD_COMMON_BASE}/nrd_plat1.c
19
20BL1_SOURCES		+=	${NRD_CPU_SOURCES}			\
21				${RDV1_BASE}/rdv1_err.c
22
23BL2_SOURCES		+=	${RDV1_BASE}/rdv1_plat.c	\
24				${RDV1_BASE}/rdv1_security.c	\
25				${RDV1_BASE}/rdv1_err.c		\
26				lib/utils/mem_region.c			\
27				drivers/arm/tzc/tzc400.c		\
28				plat/arm/common/arm_tzc400.c		\
29				plat/arm/common/arm_nor_psci_mem_protect.c
30
31BL31_SOURCES		+=	${NRD_CPU_SOURCES}			\
32				${RDV1_BASE}/rdv1_plat.c	\
33				${RDV1_BASE}/rdv1_topology.c	\
34				drivers/cfi/v2m/v2m_flash.c		\
35				lib/utils/mem_region.c			\
36				plat/arm/common/arm_nor_psci_mem_protect.c
37
38ifeq (${TRUSTED_BOARD_BOOT}, 1)
39BL1_SOURCES		+=	${RDV1_BASE}/rdv1_trusted_boot.c
40BL2_SOURCES		+=	${RDV1_BASE}/rdv1_trusted_boot.c
41endif
42
43# Add the FDT_SOURCES and options for Dynamic Config
44FDT_SOURCES		+=	${RDV1_BASE}/fdts/${PLAT}_fw_config.dts	\
45				${RDV1_BASE}/fdts/${PLAT}_tb_fw_config.dts
46FW_CONFIG		:=	${BUILD_PLAT}/fdts/${PLAT}_fw_config.dtb
47TB_FW_CONFIG		:=	${BUILD_PLAT}/fdts/${PLAT}_tb_fw_config.dtb
48
49# Add the FW_CONFIG to FIP and specify the same to certtool
50$(eval $(call TOOL_ADD_PAYLOAD,${FW_CONFIG},--fw-config,${FW_CONFIG}))
51# Add the TB_FW_CONFIG to FIP and specify the same to certtool
52$(eval $(call TOOL_ADD_PAYLOAD,${TB_FW_CONFIG},--tb-fw-config,${TB_FW_CONFIG}))
53
54FDT_SOURCES		+=	${RDV1_BASE}/fdts/${PLAT}_nt_fw_config.dts
55NT_FW_CONFIG		:=	${BUILD_PLAT}/fdts/${PLAT}_nt_fw_config.dtb
56
57# Add the NT_FW_CONFIG to FIP and specify the same to certtool
58$(eval $(call TOOL_ADD_PAYLOAD,${NT_FW_CONFIG},--nt-fw-config,${NT_FW_CONFIG}))
59
60override CTX_INCLUDE_AARCH32_REGS	:= 0
61override ENABLE_FEAT_AMU		:= 2
62override SPMD_SPM_AT_SEL2		:= 0
63
64ifneq ($(NRD_PLATFORM_VARIANT),0)
65 $(error "NRD_PLATFORM_VARIANT for RD-V1 should always be 0, \
66     currently set to ${NRD_PLATFORM_VARIANT}.")
67endif
68
69# Enable the flag since RD-V1 has a system level cache
70NEOVERSE_Nx_EXTERNAL_LLC		:=	1
71