1 /*
2  * Arm SCP/MCP Software
3  * Copyright (c) 2020-2021, Arm Limited and Contributors. All rights reserved.
4  *
5  * SPDX-License-Identifier: BSD-3-Clause
6  *
7  * Description:
8  *     Software defined memory map shared between SCP and AP cores.
9  */
10 
11 #ifndef MORELLO_SCP_SOFTWARE_MMAP_H
12 #define MORELLO_SCP_SOFTWARE_MMAP_H
13 
14 #include "morello_scp_mmap.h"
15 
16 #include <fwk_macros.h>
17 
18 /*
19  * Trusted shared SRAM region
20  */
21 #define SCP_AP_SHARED_SECURE_BASE (SCP_TRUSTED_RAM_BASE)
22 #define SCP_AP_SHARED_SECURE_SIZE (4 * FWK_KIB)
23 
24 /*
25  * Non-trusted shared SRAM region
26  */
27 #define SCP_AP_SHARED_NONSECURE_BASE (SCP_NONTRUSTED_RAM_BASE)
28 #define SCP_AP_SHARED_NONSECURE_SIZE (4 * FWK_KIB)
29 
30 /*
31  * SDS Memory Region
32  */
33 #define SCP_SDS_MEM_BASE (SCP_AP_SHARED_SECURE_BASE)
34 #define SCP_SDS_MEM_SIZE (3520)
35 #define SCP_SDS_SECURE_BASE (SCP_AP_SHARED_SECURE_BASE)
36 #define SCP_SDS_SECURE_SIZE (3520)
37 
38 /*
39  * AP Context Area
40  */
41 #define SCP_AP_CONTEXT_SIZE (64)
42 #define SCP_AP_CONTEXT_BASE \
43     (SCP_AP_SHARED_SECURE_BASE + SCP_AP_SHARED_SECURE_SIZE - \
44      SCP_AP_CONTEXT_SIZE)
45 
46 /*
47  * SCMI Secure Payload Areas
48  */
49 #define SCP_SCMI_PAYLOAD_SIZE (128)
50 #define SCP_SCMI_PAYLOAD_S_A2P_BASE (SCP_SDS_SECURE_BASE + SCP_SDS_SECURE_SIZE)
51 #define SCP_SCMI_PAYLOAD_S_P2A_BASE \
52     (SCP_SCMI_PAYLOAD_S_A2P_BASE + SCP_SCMI_PAYLOAD_SIZE)
53 
54 /*
55  * SCMI Non-Secure Payload Areas
56  */
57 #define SCP_SCMI_PAYLOAD_NS_A2P_BASE (SCP_AP_SHARED_NONSECURE_BASE)
58 #define SCP_SCMI_PAYLOAD_NS_P2A_BASE \
59     (SCP_SCMI_PAYLOAD_NS_A2P_BASE + SCP_SCMI_PAYLOAD_SIZE)
60 
61 /* SDS non secure region */
62 #define SCP_SDS_NONSECURE_BASE \
63     (SCP_SCMI_PAYLOAD_NS_P2A_BASE + SCP_SCMI_PAYLOAD_SIZE)
64 #define SCP_SDS_NONSECURE_SIZE (1024)
65 
66 #endif /* MORELLO_SCP_SOFTWARE_MMAP_H */
67