summaryrefslogtreecommitdiff
path: root/services/std_svc/spm/spm_main.c
diff options
context:
space:
mode:
Diffstat (limited to 'services/std_svc/spm/spm_main.c')
-rw-r--r--services/std_svc/spm/spm_main.c51
1 files changed, 0 insertions, 51 deletions
diff --git a/services/std_svc/spm/spm_main.c b/services/std_svc/spm/spm_main.c
index d80775fd..460d1fb3 100644
--- a/services/std_svc/spm/spm_main.c
+++ b/services/std_svc/spm/spm_main.c
@@ -18,7 +18,6 @@
#include <smccc_helpers.h>
#include <spinlock.h>
#include <string.h>
-#include <spm_svc.h>
#include <sprt_svc.h>
#include <utils.h>
#include <xlat_tables_v2.h>
@@ -356,53 +355,3 @@ int32_t spm_setup(void)
return 0;
}
-
-/*******************************************************************************
- * Secure Partition Manager SMC handler.
- ******************************************************************************/
-uint64_t spm_smc_handler(uint32_t smc_fid,
- uint64_t x1,
- uint64_t x2,
- uint64_t x3,
- uint64_t x4,
- void *cookie,
- void *handle,
- uint64_t flags)
-{
- unsigned int ns;
-
- /* Determine which security state this SMC originated from */
- ns = is_caller_non_secure(flags);
-
- if (ns == SMC_FROM_SECURE) {
-
- /* Handle SMCs from Secure world. */
-
- assert(handle == cm_get_context(SECURE));
-
- /* Make next ERET jump to S-EL0 instead of S-EL1. */
- cm_set_elr_spsr_el3(SECURE, read_elr_el1(), read_spsr_el1());
-
- switch (smc_fid) {
-
- case SPM_VERSION_AARCH32:
- SMC_RET1(handle, SPM_VERSION_COMPILED);
-
- default:
- break;
- }
- } else {
-
- /* Handle SMCs from Non-secure world. */
-
- assert(handle == cm_get_context(NON_SECURE));
-
- switch (smc_fid) {
-
- default:
- break;
- }
- }
-
- SMC_RET1(handle, SMC_UNK);
-}