summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authordavidcunado-arm <david.cunado@arm.com>2018-02-07 11:57:19 +0800
committerGitHub <noreply@github.com>2018-02-07 11:57:19 +0800
commit5b75b4a725d062bd593856a665bfda0e1b23a04b (patch)
treeafc86aa95f7073042803ed9f5938020d19ecb369 /include
parent9fd2f13bd608832260300640970f73c62357c684 (diff)
parent95ae5b00447da02695a653004b86e6b805e058a9 (diff)
Merge pull request #1173 from etienne-lms/armv7-qemu
support to boot OP-TEE on AArch32/Armv7+example with Cortex-A15/Qemu
Diffstat (limited to 'include')
-rw-r--r--include/common/ep_info.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/include/common/ep_info.h b/include/common/ep_info.h
index 3f6213f0..3c2fe444 100644
--- a/include/common/ep_info.h
+++ b/include/common/ep_info.h
@@ -20,7 +20,8 @@
******************************************************************************/
#define ENTRY_POINT_INFO_PC_OFFSET U(0x08)
#ifdef AARCH32
-#define ENTRY_POINT_INFO_ARGS_OFFSET U(0x10)
+#define ENTRY_POINT_INFO_LR_SVC_OFFSET U(0x10)
+#define ENTRY_POINT_INFO_ARGS_OFFSET U(0x14)
#else
#define ENTRY_POINT_INFO_ARGS_OFFSET U(0x18)
#endif
@@ -93,6 +94,7 @@ typedef struct entry_point_info {
uintptr_t pc;
uint32_t spsr;
#ifdef AARCH32
+ uintptr_t lr_svc;
aapcs32_params_t args;
#else
aapcs64_params_t args;
@@ -108,6 +110,12 @@ CASSERT(ENTRY_POINT_INFO_PC_OFFSET ==
__builtin_offsetof(entry_point_info_t, pc), \
assert_BL31_pc_offset_mismatch);
+#ifdef AARCH32
+CASSERT(ENTRY_POINT_INFO_LR_SVC_OFFSET ==
+ __builtin_offsetof(entry_point_info_t, lr_svc),
+ assert_entrypoint_lr_offset_error);
+#endif
+
CASSERT(ENTRY_POINT_INFO_ARGS_OFFSET == \
__builtin_offsetof(entry_point_info_t, args), \
assert_BL31_args_offset_mismatch);