From e8ce60aeb139a0f11bee83bd3ce904475d2bf460 Mon Sep 17 00:00:00 2001 From: Antonio Nino Diaz Date: Thu, 8 Nov 2018 14:12:40 +0000 Subject: SPM: Introduce SMC handlers for SPCI and SPRT Change-Id: I2ae9b3bb686c41b2e138132a7bed107925ac861e Signed-off-by: Antonio Nino Diaz --- bl31/aarch64/runtime_exceptions.S | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'bl31') diff --git a/bl31/aarch64/runtime_exceptions.S b/bl31/aarch64/runtime_exceptions.S index 77bd63ec0..ab61e8ccf 100644 --- a/bl31/aarch64/runtime_exceptions.S +++ b/bl31/aarch64/runtime_exceptions.S @@ -382,8 +382,16 @@ smc_handler64: */ tbz x0, #(FUNCID_NAMESPACE_SHIFT + 1), compat_or_vendor - /* Namespaces SPRT and SPCI currently unimplemented */ + /* Namespace is b'10 (SPRT) or b'11 (SPCI) */ +#if ENABLE_SPM + tst x0, #(1 << FUNCID_NAMESPACE_SHIFT) + adr x15, spci_smc_handler + adr x16, sprt_smc_handler + csel x15, x15, x16, ne + b prepare_enter_handler +#else b smc_unknown +#endif compat_or_vendor: @@ -401,6 +409,8 @@ compat_or_vendor: load_rt_svc_desc_pointer +prepare_enter_handler: + #endif /* SMCCC_MAJOR_VERSION */ /* -- cgit v1.2.1