diff options
Diffstat (limited to 'spm/cactus/cactus.h')
-rw-r--r-- | spm/cactus/cactus.h | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/spm/cactus/cactus.h b/spm/cactus/cactus.h new file mode 100644 index 000000000..966b154d8 --- /dev/null +++ b/spm/cactus/cactus.h @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2017, Arm Limited. All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#ifndef __CACTUS_H__ +#define __CACTUS_H__ + +#include <secure_partition.h> +#include <types.h> + +/* Linker symbols used to figure out the memory layout of Cactus. */ +extern uintptr_t __TEXT_START__, __TEXT_END__; +#define CACTUS_TEXT_START ((uintptr_t)&__TEXT_START__) +#define CACTUS_TEXT_END ((uintptr_t)&__TEXT_END__) + +extern uintptr_t __RODATA_START__, __RODATA_END__; +#define CACTUS_RODATA_START ((uintptr_t)&__RODATA_START__) +#define CACTUS_RODATA_END ((uintptr_t)&__RODATA_END__) + +extern uintptr_t __RWDATA_START__, __RWDATA_END__; +#define CACTUS_RWDATA_START ((uintptr_t)&__RWDATA_START__) +#define CACTUS_RWDATA_END ((uintptr_t)&__RWDATA_END__) + +extern uintptr_t __BSS_START__, __BSS_END__; +#define CACTUS_BSS_START ((uintptr_t)&__BSS_START__) +#define CACTUS_BSS_END ((uintptr_t)&__BSS_END__) + +/* + * Once Cactus has finished its initialisation, this is the function it will + * jump to to handle runtime services for the rest of its lifetime. + */ +__dead2 void secure_services_loop(void); + +#endif /* __CACTUS_H__ */ |