xref: /rk3399_ARM-atf/plat/marvell/armada/common/marvell_common.mk (revision a28471722afb3ae784d7bce2118c2ea703f8444c)
1*a2847172SGrzegorz Jaszczyk# Copyright (C) 2018 Marvell International Ltd.
2*a2847172SGrzegorz Jaszczyk#
3*a2847172SGrzegorz Jaszczyk# SPDX-License-Identifier:     BSD-3-Clause
4*a2847172SGrzegorz Jaszczyk# https://spdx.org/licenses
5*a2847172SGrzegorz Jaszczyk
6*a2847172SGrzegorz JaszczykMARVELL_PLAT_BASE		:= plat/marvell/armada
7*a2847172SGrzegorz JaszczykMARVELL_PLAT_INCLUDE_BASE	:= include/plat/marvell/armada
8*a2847172SGrzegorz Jaszczyk
9*a2847172SGrzegorz Jaszczykinclude plat/marvell/version.mk
10*a2847172SGrzegorz Jaszczykinclude plat/marvell/marvell.mk
11*a2847172SGrzegorz Jaszczyk
12*a2847172SGrzegorz JaszczykVERSION_STRING			+=(Marvell-${SUBVERSION})
13*a2847172SGrzegorz Jaszczyk
14*a2847172SGrzegorz JaszczykSEPARATE_CODE_AND_RODATA	:= 1
15*a2847172SGrzegorz Jaszczyk
16*a2847172SGrzegorz Jaszczyk# flag to switch from PLL to ARO
17*a2847172SGrzegorz JaszczykARO_ENABLE			:= 0
18*a2847172SGrzegorz Jaszczyk$(eval $(call add_define,ARO_ENABLE))
19*a2847172SGrzegorz Jaszczyk# Enable/Disable LLC
20*a2847172SGrzegorz JaszczykLLC_ENABLE			:= 1
21*a2847172SGrzegorz Jaszczyk$(eval $(call add_define,LLC_ENABLE))
22*a2847172SGrzegorz Jaszczyk
23*a2847172SGrzegorz Jaszczykinclude lib/xlat_tables_v2/xlat_tables.mk
24*a2847172SGrzegorz Jaszczyk
25*a2847172SGrzegorz JaszczykPLAT_INCLUDES		+=	-I$(MARVELL_PLAT_INCLUDE_BASE)/common	\
26*a2847172SGrzegorz Jaszczyk				-I$(MARVELL_PLAT_INCLUDE_BASE)/common/aarch64
27*a2847172SGrzegorz Jaszczyk
28*a2847172SGrzegorz Jaszczyk
29*a2847172SGrzegorz JaszczykPLAT_BL_COMMON_SOURCES  += ${XLAT_TABLES_LIB_SRCS} \
30*a2847172SGrzegorz Jaszczyk				$(MARVELL_PLAT_BASE)/common/aarch64/marvell_common.c	\
31*a2847172SGrzegorz Jaszczyk				$(MARVELL_PLAT_BASE)/common/aarch64/marvell_helpers.S	\
32*a2847172SGrzegorz Jaszczyk				$(MARVELL_COMMON_BASE)/marvell_console.c
33*a2847172SGrzegorz Jaszczyk
34*a2847172SGrzegorz JaszczykBL1_SOURCES		+=	drivers/delay_timer/delay_timer.c			\
35*a2847172SGrzegorz Jaszczyk				drivers/io/io_fip.c					\
36*a2847172SGrzegorz Jaszczyk				drivers/io/io_memmap.c					\
37*a2847172SGrzegorz Jaszczyk				drivers/io/io_storage.c					\
38*a2847172SGrzegorz Jaszczyk				$(MARVELL_PLAT_BASE)/common/marvell_bl1_setup.c		\
39*a2847172SGrzegorz Jaszczyk				$(MARVELL_PLAT_BASE)/common/marvell_io_storage.c	\
40*a2847172SGrzegorz Jaszczyk				$(MARVELL_PLAT_BASE)/common/plat_delay_timer.c
41*a2847172SGrzegorz Jaszczyk
42*a2847172SGrzegorz Jaszczykifdef EL3_PAYLOAD_BASE
43*a2847172SGrzegorz Jaszczyk# Need the arm_program_trusted_mailbox() function to release secondary CPUs from
44*a2847172SGrzegorz Jaszczyk# their holding pen
45*a2847172SGrzegorz Jaszczykendif
46*a2847172SGrzegorz Jaszczyk
47*a2847172SGrzegorz JaszczykBL2_SOURCES		+=	drivers/io/io_fip.c					\
48*a2847172SGrzegorz Jaszczyk				drivers/io/io_memmap.c					\
49*a2847172SGrzegorz Jaszczyk				drivers/io/io_storage.c					\
50*a2847172SGrzegorz Jaszczyk				common/desc_image_load.c				\
51*a2847172SGrzegorz Jaszczyk				$(MARVELL_PLAT_BASE)/common/marvell_bl2_setup.c		\
52*a2847172SGrzegorz Jaszczyk				$(MARVELL_PLAT_BASE)/common/marvell_io_storage.c	\
53*a2847172SGrzegorz Jaszczyk				$(MARVELL_PLAT_BASE)/common/aarch64/marvell_bl2_mem_params_desc.c	\
54*a2847172SGrzegorz Jaszczyk				$(MARVELL_PLAT_BASE)/common/marvell_image_load.c
55*a2847172SGrzegorz Jaszczyk
56*a2847172SGrzegorz Jaszczyk
57*a2847172SGrzegorz JaszczykBL31_SOURCES		+=	$(MARVELL_PLAT_BASE)/common/marvell_bl31_setup.c	\
58*a2847172SGrzegorz Jaszczyk				$(MARVELL_PLAT_BASE)/common/marvell_pm.c		\
59*a2847172SGrzegorz Jaszczyk				$(MARVELL_PLAT_BASE)/common/marvell_topology.c		\
60*a2847172SGrzegorz Jaszczyk				plat/common/plat_psci_common.c				\
61*a2847172SGrzegorz Jaszczyk				$(MARVELL_PLAT_BASE)/common/plat_delay_timer.c		\
62*a2847172SGrzegorz Jaszczyk				drivers/delay_timer/delay_timer.c
63*a2847172SGrzegorz Jaszczyk
64*a2847172SGrzegorz Jaszczyk# PSCI functionality
65*a2847172SGrzegorz Jaszczyk$(eval $(call add_define,CONFIG_ARM64))
66*a2847172SGrzegorz Jaszczyk
67*a2847172SGrzegorz Jaszczyk# MSS (SCP) build
68*a2847172SGrzegorz Jaszczykifeq (${MSS_SUPPORT}, 1)
69*a2847172SGrzegorz Jaszczykinclude $(MARVELL_PLAT_BASE)/common/mss/mss_common.mk
70*a2847172SGrzegorz Jaszczykendif
71*a2847172SGrzegorz Jaszczyk
72*a2847172SGrzegorz Jaszczykfip: mrvl_flash
73