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>
diff --git a/include/common/runtime_svc.h b/include/common/runtime_svc.h
index 59bf158..e5e36c7 100644
--- a/include/common/runtime_svc.h
+++ b/include/common/runtime_svc.h
@@ -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
  */
@@ -36,17 +36,8 @@
  * In SMCCC 1.X, the function identifier has 6 bits for the owning entity number
  * and a single bit for the type of smc call. When taken together, those values
  * limit the maximum number of runtime services to 128.
- *
- * In SMCCC 2.X the type bit is always 1 and there are only 4 OEN bits in the
- * compatibility namespace, so the total number of services is 16. The LSB of
- * namespace is also added to these 4 bits to make space for the vendor service
- * handler and so the total number of runtime services is 32.
  */
-#if SMCCC_MAJOR_VERSION == 1
 #define MAX_RT_SVCS		U(128)
-#elif SMCCC_MAJOR_VERSION == 2
-#define MAX_RT_SVCS		U(32)
-#endif
 
 #ifndef __ASSEMBLY__
 
@@ -70,11 +61,7 @@
 typedef struct rt_svc_desc {
 	uint8_t start_oen;
 	uint8_t end_oen;
-#if SMCCC_MAJOR_VERSION == 1
 	uint8_t call_type;
-#elif SMCCC_MAJOR_VERSION == 2
-	uint8_t is_vendor;
-#endif
 	const char *name;
 	rt_svc_init_t init;
 	rt_svc_handle_t handle;
@@ -83,8 +70,6 @@
 /*
  * Convenience macros to declare a service descriptor
  */
-#if SMCCC_MAJOR_VERSION == 1
-
 #define DECLARE_RT_SVC(_name, _start, _end, _type, _setup, _smch)	\
 	static const rt_svc_desc_t __svc_desc_ ## _name			\
 		__section("rt_svc_descs") __used = {			\
@@ -96,37 +81,6 @@
 			.handle = (_smch)				\
 		}
 
-#elif SMCCC_MAJOR_VERSION == 2
-
-#define DECLARE_RT_SVC(_name, _start, _end, _type, _setup, _smch)	\
-	static const rt_svc_desc_t __svc_desc_ ## _name			\
-		__section("rt_svc_descs") __used = {			\
-			.start_oen = (_start),				\
-			.end_oen = (_end),				\
-			.is_vendor = 0,					\
-			.name = #_name,					\
-			.init = (_setup),				\
-			.handle = (_smch),				\
-		};							\
-	CASSERT((_type) == SMC_TYPE_FAST, rt_svc_type_check_ ## _name)
-
-/*
- * The higher 16 entries of the runtime services are used for the vendor
- * specific descriptor.
- */
-#define DECLARE_RT_SVC_VENDOR(_setup, _smch)				\
-	static const rt_svc_desc_t __svc_desc_vendor			\
-		__section("rt_svc_descs") __used = {			\
-			.start_oen = 0,					\
-			.end_oen = 15,					\
-			.is_vendor = 1,					\
-			.name = "vendor_rt_svc",			\
-			.init = _setup,					\
-			.handle = _smch,				\
-		}
-
-#endif /* SMCCC_MAJOR_VERSION */
-
 /*
  * Compile time assertions related to the 'rt_svc_desc' structure to:
  * 1. ensure that the assembler and the compiler view of the size
@@ -144,7 +98,6 @@
 	assert_rt_svc_desc_handle_offset_mismatch);
 
 
-#if SMCCC_MAJOR_VERSION == 1
 /*
  * This function combines the call type and the owning entity number
  * corresponding to a runtime service to generate a unique owning entity number.
@@ -169,22 +122,6 @@
 	return get_unique_oen(GET_SMC_OEN(fid), GET_SMC_TYPE(fid));
 }
 
-#elif SMCCC_MAJOR_VERSION == 2
-
-/*
- * This function combines the owning entity number corresponding to a runtime
- * service with one extra bit for the vendor namespace to generate an index into
- * the 'rt_svc_descs_indices' array. The entry contains the index of the service
- * descriptor in the 'rt_svc_descs' array.
- */
-static inline uint32_t get_rt_desc_idx(uint32_t oen, uint32_t is_vendor)
-{
-	return ((is_vendor & 1U) << FUNCID_OEN_WIDTH) |
-		(oen & FUNCID_OEN_MASK);
-}
-
-#endif
-
 /*******************************************************************************
  * Function & variable prototypes
  ******************************************************************************/