blob: 13b5dac60422da317aa25ffda162885ff6917f9d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
|
/*
* Copyright (c) 2018, Arm Limited. All rights reserved.
*
* SPDX-License-Identifier: BSD-3-Clause
*/
#ifndef CACTUS_DEF_H
#define CACTUS_DEF_H
#include <utils_def.h>
/*
* Layout of the Secure Partition image.
*/
/* Up to 2 MiB at an arbitrary address that doesn't overlap the devices. */
#define CACTUS_IMAGE_BASE ULL(0x80000000)
#define CACTUS_IMAGE_SIZE ULL(0x200000)
/* Memory reserved for stacks */
#define CACTUS_STACKS_SIZE ULL(0x1000)
/* Memory shared between EL3 and S-EL0 (64 KiB). */
#define CACTUS_SPM_BUF_BASE (CACTUS_IMAGE_BASE + CACTUS_IMAGE_SIZE)
#define CACTUS_SPM_BUF_SIZE ULL(0x10000)
/* Memory shared between Normal world and S-EL0 (64 KiB). */
#define CACTUS_NS_BUF_BASE (CACTUS_SPM_BUF_BASE + CACTUS_SPM_BUF_SIZE)
#define CACTUS_NS_BUF_SIZE ULL(0x10000)
/* Memory area used by tests (128 KiB). */
#define CACTUS_TEST_MEM_BASE (CACTUS_NS_BUF_BASE + CACTUS_NS_BUF_SIZE)
#define CACTUS_TEST_MEM_SIZE ULL(0x20000)
/*
* UUIDs of Secure Services provided by Cactus
*/
#define CACTUS_SERVICE1_UUID U(0x01234567), U(0x89ABCDEF), U(0x76543210), U(0xFEDCBA98)
#define CACTUS_SERVICE2_UUID U(0x0A1B2C3D), U(0x4E5F6789), U(0x55AA00FF), U(0x0F1E2D3C)
#define CACTUS_INVALID_UUID U(0x1), U(0x2), U(0x3), U(0x4)
#define CACTUS_SERVICE1_UUID_RD U(0x01234567) U(0x89ABCDEF) U(0x76543210) U(0xFEDCBA98)
#define CACTUS_SERVICE2_UUID_RD U(0x0A1B2C3D) U(0x4E5F6789) U(0x55AA00FF) U(0x0F1E2D3C)
#define CACTUS_INVALID_UUID_RD U(0x1) U(0x2) U(0x3) U(0x4)
/*
* Service IDs
*/
/* Print a magic number unique to Cactus and return */
#define CACTUS_PRINT_MAGIC U(1)
/* Return a magic number unique to Cactus */
#define CACTUS_GET_MAGIC U(2)
/* Sleep for a number of milliseconds */
#define CACTUS_SLEEP_MS U(3)
#define CACTUS_MAGIC_NUMBER U(0x12481369)
#endif /* CACTUS_DEF_H */
|