diff options
author | Jens Wiklander <jens.wiklander@linaro.org> | 2016-10-17 11:19:08 +0200 |
---|---|---|
committer | Jens Wiklander <jens.wiklander@linaro.org> | 2016-11-23 10:39:56 +0100 |
commit | 3f4d68499f9e6e59f14b85fd9b5b8c80a73be252 (patch) | |
tree | 747a2956c3b41f824a55f549d6251e73b5207414 /core/arch/arm/kernel/asm-defines.c | |
parent | 9dd11da508058ae182aa673fd7d7841d0f7168c2 (diff) |
core: redesign secure monitor
The secure monitor is redesigned to make it easier to register services.
Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Diffstat (limited to 'core/arch/arm/kernel/asm-defines.c')
-rw-r--r-- | core/arch/arm/kernel/asm-defines.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/core/arch/arm/kernel/asm-defines.c b/core/arch/arm/kernel/asm-defines.c index 44ca2059..99c0a634 100644 --- a/core/arch/arm/kernel/asm-defines.c +++ b/core/arch/arm/kernel/asm-defines.c @@ -25,8 +25,9 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include <types_ext.h> #include <kernel/thread.h> +#include <sm/sm.h> +#include <types_ext.h> #include "thread_private.h" #define DEFINES void __defines(void); void __defines(void) @@ -37,6 +38,17 @@ DEFINES { #ifdef ARM32 + DEFINE(SM_NSEC_CTX_R0, offsetof(struct sm_nsec_ctx, r0)); + DEFINE(SM_NSEC_CTX_R8, offsetof(struct sm_nsec_ctx, r8)); + DEFINE(SM_SEC_CTX_R0, offsetof(struct sm_sec_ctx, r0)); + DEFINE(SM_SEC_CTX_MON_LR, offsetof(struct sm_sec_ctx, mon_lr)); + DEFINE(SM_CTX_SIZE, sizeof(struct sm_ctx)); + DEFINE(SM_CTX_NSEC, offsetof(struct sm_ctx, nsec)); + DEFINE(SM_CTX_SEC, offsetof(struct sm_ctx, sec)); + + DEFINE(THREAD_VECTOR_TABLE_FIQ_ENTRY, + offsetof(struct thread_vector_table, fiq_entry)); + DEFINE(THREAD_SVC_REG_R0, offsetof(struct thread_svc_regs, r0)); DEFINE(THREAD_SVC_REG_R5, offsetof(struct thread_svc_regs, r5)); DEFINE(THREAD_SVC_REG_R6, offsetof(struct thread_svc_regs, r6)); |