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