xref: /rk3399_ARM-atf/plat/arm/css/common/css_common.mk (revision 6f249345e2aa2343ce67222e82dafc539e973ec5)
1b4315306SDan Handley#
27fb9a32dSVikram Kanigiri# Copyright (c) 2015-2016, ARM Limited and Contributors. All rights reserved.
3b4315306SDan Handley#
4b4315306SDan Handley# Redistribution and use in source and binary forms, with or without
5b4315306SDan Handley# modification, are permitted provided that the following conditions are met:
6b4315306SDan Handley#
7b4315306SDan Handley# Redistributions of source code must retain the above copyright notice, this
8b4315306SDan Handley# list of conditions and the following disclaimer.
9b4315306SDan Handley#
10b4315306SDan Handley# Redistributions in binary form must reproduce the above copyright notice,
11b4315306SDan Handley# this list of conditions and the following disclaimer in the documentation
12b4315306SDan Handley# and/or other materials provided with the distribution.
13b4315306SDan Handley#
14b4315306SDan Handley# Neither the name of ARM nor the names of its contributors may be used
15b4315306SDan Handley# to endorse or promote products derived from this software without specific
16b4315306SDan Handley# prior written permission.
17b4315306SDan Handley#
18b4315306SDan Handley# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
19b4315306SDan Handley# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20b4315306SDan Handley# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21b4315306SDan Handley# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
22b4315306SDan Handley# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
23b4315306SDan Handley# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
24b4315306SDan Handley# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25b4315306SDan Handley# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
26b4315306SDan Handley# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
27b4315306SDan Handley# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28b4315306SDan Handley# POSSIBILITY OF SUCH DAMAGE.
29b4315306SDan Handley#
30b4315306SDan Handley
317fb9a32dSVikram Kanigiri
327fb9a32dSVikram Kanigiri# By default, SCP images are needed by CSS platforms.
337fb9a32dSVikram KanigiriCSS_LOAD_SCP_IMAGES	?=	1
347fb9a32dSVikram Kanigiri
35b4315306SDan HandleyPLAT_INCLUDES		+=	-Iinclude/plat/arm/css/common			\
36b4315306SDan Handley				-Iinclude/plat/arm/css/common/aarch64
37b4315306SDan Handley
38b4315306SDan Handley
39*6f249345SYatharth KocharPLAT_BL_COMMON_SOURCES	+=	plat/arm/css/common/${ARCH}/css_helpers.S
40b4315306SDan Handley
41c76e0d13SYatharth KocharBL1_SOURCES		+=	plat/arm/css/common/css_bl1_setup.c
42b4315306SDan Handley
43b4315306SDan HandleyBL2_SOURCES		+=	plat/arm/css/common/css_bl2_setup.c		\
44b12a2b49SSoby Mathew				plat/arm/css/drivers/scpi/css_mhu.c		\
45b12a2b49SSoby Mathew				plat/arm/css/drivers/scpi/css_scpi.c
46b4315306SDan Handley
47dcda29f6SYatharth KocharBL2U_SOURCES		+=	plat/arm/css/common/css_bl2u_setup.c		\
48b12a2b49SSoby Mathew				plat/arm/css/drivers/scpi/css_mhu.c		\
49b12a2b49SSoby Mathew				plat/arm/css/drivers/scpi/css_scpi.c
50dcda29f6SYatharth Kochar
51b12a2b49SSoby MathewBL31_SOURCES		+=	plat/arm/css/common/css_pm.c			\
52b12a2b49SSoby Mathew				plat/arm/css/common/css_topology.c		\
53b12a2b49SSoby Mathew				plat/arm/css/drivers/scp/css_pm_scpi.c		\
54b12a2b49SSoby Mathew				plat/arm/css/drivers/scpi/css_mhu.c		\
55b12a2b49SSoby Mathew				plat/arm/css/drivers/scpi/css_scpi.c
56b4315306SDan Handley
57b4315306SDan Handleyifneq (${RESET_TO_BL31},0)
58d178637dSJuan Castillo  $(error "Using BL31 as the reset vector is not supported on CSS platforms. \
59b4315306SDan Handley  Please set RESET_TO_BL31 to 0.")
60b4315306SDan Handleyendif
61b4315306SDan Handley
627fb9a32dSVikram Kanigiri# Process CSS_LOAD_SCP_IMAGES flag
637fb9a32dSVikram Kanigiri$(eval $(call assert_boolean,CSS_LOAD_SCP_IMAGES))
647fb9a32dSVikram Kanigiri$(eval $(call add_define,CSS_LOAD_SCP_IMAGES))
657fb9a32dSVikram Kanigiri
667fb9a32dSVikram Kanigiriifeq (${CSS_LOAD_SCP_IMAGES},1)
674d045d0eSMasahiro Yamada  NEED_SCP_BL2 := yes
687fb9a32dSVikram Kanigiri  ifneq (${TRUSTED_BOARD_BOOT},0)
697fb9a32dSVikram Kanigiri    $(eval $(call FWU_FIP_ADD_IMG,SCP_BL2U,--scp-fwu-cfg))
707fb9a32dSVikram Kanigiri  endif
717fb9a32dSVikram Kanigiri
727fb9a32dSVikram Kanigiri  BL2U_SOURCES		+=	plat/arm/css/common/css_scp_bootloader.c
737fb9a32dSVikram Kanigiri  BL2_SOURCES		+=	plat/arm/css/common/css_scp_bootloader.c
747fb9a32dSVikram Kanigiriendif
75556b966fSSandrine Bailleux
76556b966fSSandrine Bailleux# Enable option to detect whether the SCP ROM firmware in use predates version
77556b966fSSandrine Bailleux# 1.7.0 and therefore, is incompatible.
78556b966fSSandrine BailleuxCSS_DETECT_PRE_1_7_0_SCP	:=	1
79556b966fSSandrine Bailleux
80556b966fSSandrine Bailleux# Process CSS_DETECT_PRE_1_7_0_SCP flag
81556b966fSSandrine Bailleux$(eval $(call assert_boolean,CSS_DETECT_PRE_1_7_0_SCP))
82556b966fSSandrine Bailleux$(eval $(call add_define,CSS_DETECT_PRE_1_7_0_SCP))
83