diff options
author | Antonio Nino Diaz <antonio.ninodiaz@arm.com> | 2019-01-30 16:01:49 +0000 |
---|---|---|
committer | Antonio Nino Diaz <antonio.ninodiaz@arm.com> | 2019-01-30 16:01:49 +0000 |
commit | 0709055ed66330fe7709c77d2dfbcb87f0c94272 (patch) | |
tree | 31b5d3b7354ad9a8b1bb3e423762e5ea1235d05b /common | |
parent | 7e9b0c8eef2b90f51ed41bb8ddf15d7c47672ca9 (diff) |
Remove support for the SMC Calling Convention 2.0
This reverts commit 2f370465241c ("Add support for the SMC Calling
Convention 2.0").
SMCCC v2.0 is no longer required for SPM, and won't be needed in the
future. Removing it makes the SMC handling code less complicated.
The SPM implementation based on SPCI and SPRT was using it, but it has
been adapted to SMCCC v1.0.
Change-Id: I36795b91857b2b9c00437cfbfed04b3c1627f578
Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
Diffstat (limited to 'common')
-rw-r--r-- | common/runtime_svc.c | 16 |
1 files changed, 1 insertions, 15 deletions
diff --git a/common/runtime_svc.c b/common/runtime_svc.c index 09ce787d..a2c0c09e 100644 --- a/common/runtime_svc.c +++ b/common/runtime_svc.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2013-2018, ARM Limited and Contributors. All rights reserved. + * Copyright (c) 2013-2019, ARM Limited and Contributors. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ @@ -29,7 +29,6 @@ uint8_t rt_svc_descs_indices[MAX_RT_SVCS]; * Function to invoke the registered `handle` corresponding to the smc_fid in * AArch32 mode. ******************************************************************************/ -#if SMCCC_MAJOR_VERSION == 1 uintptr_t handle_runtime_svc(uint32_t smc_fid, void *cookie, void *handle, @@ -55,7 +54,6 @@ uintptr_t handle_runtime_svc(uint32_t smc_fid, return rt_svc_descs[index].handle(smc_fid, x1, x2, x3, x4, cookie, handle, flags); } -#endif /* SMCCC_MAJOR_VERSION */ /******************************************************************************* * Simple routine to sanity check a runtime service descriptor before using it @@ -71,14 +69,9 @@ static int32_t validate_rt_svc_desc(const rt_svc_desc_t *desc) if (desc->end_oen >= OEN_LIMIT) return -EINVAL; -#if SMCCC_MAJOR_VERSION == 1 if ((desc->call_type != SMC_TYPE_FAST) && (desc->call_type != SMC_TYPE_YIELD)) return -EINVAL; -#elif SMCCC_MAJOR_VERSION == 2 - if (desc->is_vendor > 1U) - return -EINVAL; -#endif /* SMCCC_MAJOR_VERSION */ /* A runtime service having no init or handle function doesn't make sense */ if ((desc->init == NULL) && (desc->handle == NULL)) @@ -149,17 +142,10 @@ void __init runtime_svc_init(void) * descriptor which will handle the SMCs for this owning * entity range. */ -#if SMCCC_MAJOR_VERSION == 1 start_idx = (uint8_t)get_unique_oen(service->start_oen, service->call_type); end_idx = (uint8_t)get_unique_oen(service->end_oen, service->call_type); -#elif SMCCC_MAJOR_VERSION == 2 - start_idx = (uint8_t)get_rt_desc_idx(service->start_oen, - service->is_vendor); - end_idx = (uint8_t)get_rt_desc_idx(service->end_oen, - service->is_vendor); -#endif assert(start_idx <= end_idx); assert(end_idx < MAX_RT_SVCS); for (; start_idx <= end_idx; start_idx++) |