1#
2# Arm SCP/MCP Software
3# Copyright (c) 2021-2022, Arm Limited and Contributors. All rights reserved.
4#
5# SPDX-License-Identifier: BSD-3-Clause
6#
7
8set(SCP_FIRMWARE "juno-bl2")
9set(SCP_FIRMWARE_TARGET "juno-bl2")
10
11set(SCP_TOOLCHAIN_INIT "GNU")
12
13set(SCP_FIRMWARE_SOURCE_DIR "${CMAKE_CURRENT_LIST_DIR}")
14
15set(SCP_GENERATE_FLAT_BINARY_INIT TRUE)
16
17set(SCP_ARCHITECTURE "arm-m")
18
19set(SCP_ENABLE_NOTIFICATIONS_INIT TRUE)
20
21set(SCP_ENABLE_SCMI_NOTIFICATIONS_INIT FALSE)
22
23set(SCP_ENABLE_SCMI_PERF_FAST_CHANNELS_INIT FALSE)
24
25set(SCP_ENABLE_RESOURCE_PERMISSIONS_INIT FALSE)
26
27set(SCP_ENABLE_DEBUG_UNIT_INIT FALSE)
28
29set(SCP_ENABLE_SCMI_RESET_INIT FALSE)
30
31set(SCP_ENABLE_STATISTICS_INIT FALSE)
32
33set(SCP_ENABLE_IPO_INIT FALSE)
34
35set(SCP_ENABLE_PMI_INIT FALSE)
36
37list(PREPEND SCP_MODULE_PATHS
38     "${CMAKE_CURRENT_LIST_DIR}/../module/juno_reset_domain")
39list(PREPEND SCP_MODULE_PATHS
40     "${CMAKE_CURRENT_LIST_DIR}/../module/juno_cdcel937")
41list(PREPEND SCP_MODULE_PATHS "${CMAKE_CURRENT_LIST_DIR}/../module/juno_rom")
42list(PREPEND SCP_MODULE_PATHS "${CMAKE_CURRENT_LIST_DIR}/../module/juno_ppu")
43list(PREPEND SCP_MODULE_PATHS
44     "${CMAKE_CURRENT_LIST_DIR}/../module/juno_soc_clock_ram")
45list(PREPEND SCP_MODULE_PATHS "${CMAKE_CURRENT_LIST_DIR}/../module/juno_adc")
46list(PREPEND SCP_MODULE_PATHS
47     "${CMAKE_CURRENT_LIST_DIR}/../module/juno_soc_clock")
48list(PREPEND SCP_MODULE_PATHS
49     "${CMAKE_CURRENT_LIST_DIR}/../module/juno_thermal")
50list(PREPEND SCP_MODULE_PATHS "${CMAKE_CURRENT_LIST_DIR}/../module/juno_ram")
51list(PREPEND SCP_MODULE_PATHS "${CMAKE_CURRENT_LIST_DIR}/../module/juno_pvt")
52list(PREPEND SCP_MODULE_PATHS
53     "${CMAKE_CURRENT_LIST_DIR}/../module/juno_ddr_phy400")
54list(PREPEND SCP_MODULE_PATHS
55     "${CMAKE_CURRENT_LIST_DIR}/../module/juno_dmc400")
56list(PREPEND SCP_MODULE_PATHS
57     "${CMAKE_CURRENT_LIST_DIR}/../module/juno_debug")
58list(PREPEND SCP_MODULE_PATHS
59     "${CMAKE_CURRENT_LIST_DIR}/../module/juno_system")
60list(PREPEND SCP_MODULE_PATHS
61     "${CMAKE_CURRENT_LIST_DIR}/../module/juno_xrp7724")
62list(PREPEND SCP_MODULE_PATHS
63     "${CMAKE_CURRENT_LIST_DIR}/../module/juno_hdlcd")
64list(PREPEND SCP_MODULE_PATHS
65     "${CMAKE_SOURCE_DIR}/module/dwt_pmi")
66list(PREPEND SCP_MODULE_PATHS
67     "${CMAKE_SOURCE_DIR}/module/pmi")
68
69# The order of the modules in the following list is the order in which the
70# modules are initialized, bound, started during the pre-runtime phase.
71# any change in the order will cause firmware initialization errors.
72
73list(APPEND SCP_MODULES "pl011")
74list(APPEND SCP_MODULES "juno-soc-clock-ram")
75list(APPEND SCP_MODULES "clock")
76list(APPEND SCP_MODULES "juno-cdcel937")
77list(APPEND SCP_MODULES "juno-hdlcd")
78list(APPEND SCP_MODULES "dvfs")
79list(APPEND SCP_MODULES "gtimer")
80list(APPEND SCP_MODULES "timer")
81list(APPEND SCP_MODULES "juno-ddr-phy400")
82list(APPEND SCP_MODULES "juno-dmc400")
83list(APPEND SCP_MODULES "juno-ram")
84list(APPEND SCP_MODULES "juno-ppu")
85list(APPEND SCP_MODULES "juno-system")
86list(APPEND SCP_MODULES "system-power")
87list(APPEND SCP_MODULES "power-domain")
88list(APPEND SCP_MODULES "mhu")
89list(APPEND SCP_MODULES "transport")
90list(APPEND SCP_MODULES "scmi")
91list(APPEND SCP_MODULES "scmi-clock")
92list(APPEND SCP_MODULES "scmi-perf")
93list(APPEND SCP_MODULES "scmi-power-domain")
94list(APPEND SCP_MODULES "sensor")
95list(APPEND SCP_MODULES "scmi-sensor")
96list(APPEND SCP_MODULES "scmi-system-power")
97list(APPEND SCP_MODULES "sds")
98list(APPEND SCP_MODULES "i2c")
99list(APPEND SCP_MODULES "dw-apb-i2c")
100list(APPEND SCP_MODULES "juno-adc")
101list(APPEND SCP_MODULES "juno-xrp7724")
102list(APPEND SCP_MODULES "reg-sensor")
103list(APPEND SCP_MODULES "psu")
104list(APPEND SCP_MODULES "mock-psu")
105list(APPEND SCP_MODULES "juno-pvt")
106list(APPEND SCP_MODULES "juno-thermal")
107list(APPEND SCP_MODULES "mock-clock")
108