Core: Use naked function for ns jumping
Jumping to non-secure using a naked function to avoid touching stack.
The reasons of keeping stack clean are:
- There is no chance to clean these contents.
- The stacked size can not being tracked, while the non-secure
reentrant checking identities stacked context by stacked size.
Change-Id: I5804aeb00db32f8d6b7b6da929c5c1b8ffa95755
Signed-off-by: Ken Liu <ken.liu@arm.com>
diff --git a/secure_fw/spm/spm_api_ipc.c b/secure_fw/spm/spm_api_ipc.c
index 9827e4d..1f14ced 100644
--- a/secure_fw/spm/spm_api_ipc.c
+++ b/secure_fw/spm/spm_api_ipc.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2018-2019, Arm Limited. All rights reserved.
+ * Copyright (c) 2018-2020, Arm Limited. All rights reserved.
*
* SPDX-License-Identifier: BSD-3-Clause
*
@@ -589,6 +589,7 @@
if (partition->static_data->partition_id == TFM_SP_NON_SECURE_ID) {
p_ns_entry_thread = pth;
+ pth->param = (void *)tfm_spm_hal_get_ns_entry_point();
}
/* Kick off */