Refactor env-test deployment structure

Modifies the env_test deployment build and directory structure to
allow for different build configurations with different test suites.
Added a place-holder configuration for n1sdp to enable test cases
to be added for drivers reused from edk2-platforms.

Signed-off-by: Julian Hall <julian.hall@arm.com>
Change-Id: I7a7a7cf811ae224ec75a83ae200f897bef84e5ae
diff --git a/deployments/env-test/common/env_test_tests.h b/deployments/env-test/common/env_test_tests.h
deleted file mode 100644
index 305fc45..0000000
--- a/deployments/env-test/common/env_test_tests.h
+++ /dev/null
@@ -1,18 +0,0 @@
-/*
- * Copyright (c) 2021, Arm Limited and Contributors. All rights reserved.
- *
- * SPDX-License-Identifier: BSD-3-Clause
- */
-
-#ifndef ENV_TEST_TESTS_H
-#define ENV_TEST_TESTS_H
-
-struct test_runner_provider;
-
-/**
- * Registers test cases for this deployment
- */
-void env_test_register_tests(struct test_runner_provider *context);
-
-
-#endif /* ENV_TEST_TESTS_H */
diff --git a/deployments/env-test/opteesp/CMakeLists.txt b/deployments/env-test/config/baremetal-fvp_base_revc-opteesp/CMakeLists.txt
similarity index 78%
copy from deployments/env-test/opteesp/CMakeLists.txt
copy to deployments/env-test/config/baremetal-fvp_base_revc-opteesp/CMakeLists.txt
index 4b3a246..1273a2b 100644
--- a/deployments/env-test/opteesp/CMakeLists.txt
+++ b/deployments/env-test/config/baremetal-fvp_base_revc-opteesp/CMakeLists.txt
@@ -8,14 +8,13 @@
 
 # Set default platform.
 set(TS_PLATFORM "arm/fvp/fvp_base_revc-2xaemv8a" CACHE STRING "Target platform location.")
-include(../../deployment.cmake REQUIRED)
+include(../../../deployment.cmake REQUIRED)
 
 #-------------------------------------------------------------------------------
 #  The CMakeLists.txt for building the env-test deployment for opteesp
 #
-#  Builds the test_runner service provider for running in an SEL0 secure partition
-#  hosted by OPTEE in the role of SPM.  Environment tests are added and CppUnit
-#  test cases.
+#  Builds the test_runner service provider with a set of baremetal drivers
+#  and test cases for testing drivers from within an SEL0 SP.
 #-------------------------------------------------------------------------------
 include(${TS_ROOT}/environments/opteesp/env.cmake)
 project(trusted-services LANGUAGES C ASM)
@@ -30,29 +29,23 @@
 	SP_NAME "env-test"
 )
 
+target_include_directories(env-test PRIVATE
+	${CMAKE_CURRENT_LIST_DIR}
+)
+
 #-------------------------------------------------------------------------------
-#  Components that are env-test specific to deployment in the opteesp
-#  environment.
+#  Deployment specific components
+#
 #-------------------------------------------------------------------------------
 add_components(TARGET "env-test"
 	BASE_DIR ${TS_ROOT}
 	COMPONENTS
-		"components/common/fdt"
-		"components/common/trace"
-		"components/common/utils"
-		"components/config/loader/sp"
-		"components/messaging/ffa/libsp"
-		"components/rpc/ffarpc/endpoint"
-		"components/config/test/sp"
 		"environments/opteesp"
 )
 
-#-------------------------------------------------------------------------------
-#  Extend with components that are common across all deployments of
-#  env-test
-#
-#-------------------------------------------------------------------------------
-include(../env-test.cmake REQUIRED)
+include(../../env/commonsp/env_test_sp.cmake REQUIRED)
+include(../../env-test.cmake REQUIRED)
+include(../../suites/baremetal-tests.cmake REQUIRED)
 
 #-------------------------------------------------------------------------------
 #  Set target platform to provide drivers needed by the deployment
@@ -60,16 +53,13 @@
 #-------------------------------------------------------------------------------
 add_platform(TARGET env-test)
 
-#################################################################
-
+#-------------------------------------------------------------------------------
+#  Deployment specific build options
+#-------------------------------------------------------------------------------
 target_compile_definitions(env-test PRIVATE
 	ARM64=1
 )
 
-target_include_directories(env-test PRIVATE
-	${TS_ROOT}/deployments/env-test/opteesp
-)
-
 if(CMAKE_C_COMPILER_ID STREQUAL "GNU")
 	target_compile_options(env-test PRIVATE
 		-std=c99
@@ -78,7 +68,9 @@
 
 compiler_generate_stripped_elf(TARGET env-test NAME "${SP_UUID_CANON}.stripped.elf" RES STRIPPED_ELF)
 
-######################################## install
+#-------------------------------------------------------------------------------
+#  Deployment specific install options
+#-------------------------------------------------------------------------------
 if (CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
 	set(CMAKE_INSTALL_PREFIX ${CMAKE_BINARY_DIR}/install CACHE PATH "location to install build output to." FORCE)
 endif()
diff --git a/deployments/env-test/opteesp/default_env-test.dts.in b/deployments/env-test/config/baremetal-fvp_base_revc-opteesp/default_env-test.dts.in
similarity index 100%
copy from deployments/env-test/opteesp/default_env-test.dts.in
copy to deployments/env-test/config/baremetal-fvp_base_revc-opteesp/default_env-test.dts.in
diff --git a/deployments/env-test/opteesp/optee_sp_user_defines.h b/deployments/env-test/config/baremetal-fvp_base_revc-opteesp/optee_sp_user_defines.h
similarity index 100%
copy from deployments/env-test/opteesp/optee_sp_user_defines.h
copy to deployments/env-test/config/baremetal-fvp_base_revc-opteesp/optee_sp_user_defines.h
diff --git a/deployments/env-test/sp/CMakeLists.txt b/deployments/env-test/config/baremetal-fvp_base_revc-sp/CMakeLists.txt
similarity index 75%
rename from deployments/env-test/sp/CMakeLists.txt
rename to deployments/env-test/config/baremetal-fvp_base_revc-sp/CMakeLists.txt
index 99aa8f8..85e325f 100644
--- a/deployments/env-test/sp/CMakeLists.txt
+++ b/deployments/env-test/config/baremetal-fvp_base_revc-sp/CMakeLists.txt
@@ -8,15 +8,13 @@
 
 # Set default platform.
 set(TS_PLATFORM "arm/fvp/fvp_base_revc-2xaemv8a" CACHE STRING "Target platform location.")
-include(../../deployment.cmake REQUIRED)
+include(../../../deployment.cmake REQUIRED)
 
 #-------------------------------------------------------------------------------
-#  The CMakeLists.txt for building the env-test deployment for generic sp
-#  environment.
+#  The CMakeLists.txt for building the env-test deployment for sp
 #
-#  Builds the test_runner service provider for running in an SEL0 secure
-#  partition hosted by any SPM. Environment tests are added and CppUnit test
-#  cases.
+#  Builds the test_runner service provider with a set of baremetal drivers
+#  and test cases for testing drivers from within an SEL0 SP.
 #-------------------------------------------------------------------------------
 include(${TS_ROOT}/environments/sp/env.cmake)
 set(CMAKE_BUILD_TYPE "Debug" CACHE STRING "Build type")
@@ -30,33 +28,29 @@
 set(SP_STACK_SIZE "64 * 1024" CACHE STRING "Stack size")
 set(SP_HEAP_SIZE "32 * 1024" CACHE STRING "Heap size")
 
+#-------------------------------------------------------------------------------
+#  Components that are specific to deployment in the opteesp environment.
+#
+#-------------------------------------------------------------------------------
 add_components(TARGET "env-test"
 	BASE_DIR ${TS_ROOT}
 	COMPONENTS
-		"components/common/trace"
-		"components/common/utils"
-		"components/config/loader/sp"
-		"components/messaging/ffa/libsp"
-		"components/rpc/ffarpc/endpoint"
-		"components/config/test/sp"
-		"environments/sp"
+		environments/sp
 )
 
-#-------------------------------------------------------------------------------
-#  Extend with components that are common across all deployments of
-#  env-test
-#
-#-------------------------------------------------------------------------------
-include(../env-test.cmake REQUIRED)
+include(../../env/commonsp/env_test_sp.cmake REQUIRED)
+include(../../env-test.cmake REQUIRED)
+include(../../suites/baremetal-tests.cmake REQUIRED)
 
 #-------------------------------------------------------------------------------
 #  Set target platform to provide drivers needed by the deployment
 #
 #-------------------------------------------------------------------------------
-add_platform(TARGET env-test)
+add_platform(TARGET "env-test")
 
-#################################################################
-
+#-------------------------------------------------------------------------------
+#  Deployment specific build options
+#-------------------------------------------------------------------------------
 target_compile_definitions(env-test PRIVATE
 	ARM64=1
 )
@@ -74,7 +68,9 @@
 include(${TS_ROOT}/tools/cmake/common/ExportMemoryRegionsToManifest.cmake REQUIRED)
 export_memory_regions_to_manifest(TARGET env-test NAME "${SP_UUID_CANON}_memory_regions.dtsi" RES EXPORT_MEMORY_REGIONS_DTSI)
 
-######################################## install
+#-------------------------------------------------------------------------------
+#  Deployment specific install options
+#-------------------------------------------------------------------------------
 if (CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
 	set(CMAKE_INSTALL_PREFIX ${CMAKE_BINARY_DIR}/install CACHE PATH "location to install build output to." FORCE)
 endif()
diff --git a/deployments/env-test/sp/default_env-test.dts.in b/deployments/env-test/config/baremetal-fvp_base_revc-sp/default_env-test.dts.in
similarity index 98%
rename from deployments/env-test/sp/default_env-test.dts.in
rename to deployments/env-test/config/baremetal-fvp_base_revc-sp/default_env-test.dts.in
index 44a2dac..ced902c 100644
--- a/deployments/env-test/sp/default_env-test.dts.in
+++ b/deployments/env-test/config/baremetal-fvp_base_revc-sp/default_env-test.dts.in
@@ -3,9 +3,7 @@
  *
  * SPDX-License-Identifier: BSD-3-Clause
  */
-
 @DTS_TAG@
-
 @DTS_NODE@ {
 	compatible = "arm,ffa-manifest-1.0";
 	ffa-version = <0x00010000>; /* 31:16 - Major, 15:0 - Minor */
@@ -16,12 +14,9 @@
 	execution-state = <0>; /* AArch64 */
 	xlat-granule = <0>; /* 4KiB */
 	messaging-method = <3>; /* Direct messaging only */
-
 	memory-regions {
 		compatible = "arm,ffa-manifest-memory-regions";
-
 		#include "@EXPORT_DTS_MEM_REGIONS@"
-
 		/* Without optional base-address */
 		test-memory {
 			description = "test-memory";
@@ -29,10 +24,8 @@
 			attributes = <0x7>; /* read-write-execute */
 		};
 	};
-
 	device-regions {
 		compatible = "arm,ffa-manifest-device-regions";
-
 		trng {
 			/* Armv8 A Foundation Platform values */
 			base-address = <0x00000000 0x7fe60000>;
@@ -40,10 +33,8 @@
 			attributes = <0x3>; /* read-write */
 		};
 	};
-
 	boot-params {
 		compatible = "arm,ffa-manifest-boot-params";
-
 		event-log {
 			param = "EVENT_LOG";		/* The init parameter name */
 			tag = "arm,event-log";		/* Object identifier */
diff --git a/deployments/env-test/opteesp/CMakeLists.txt b/deployments/env-test/config/n1sdp-opteesp/CMakeLists.txt
similarity index 83%
rename from deployments/env-test/opteesp/CMakeLists.txt
rename to deployments/env-test/config/n1sdp-opteesp/CMakeLists.txt
index 4b3a246..68758e4 100644
--- a/deployments/env-test/opteesp/CMakeLists.txt
+++ b/deployments/env-test/config/n1sdp-opteesp/CMakeLists.txt
@@ -8,7 +8,7 @@
 
 # Set default platform.
 set(TS_PLATFORM "arm/fvp/fvp_base_revc-2xaemv8a" CACHE STRING "Target platform location.")
-include(../../deployment.cmake REQUIRED)
+include(../../../deployment.cmake REQUIRED)
 
 #-------------------------------------------------------------------------------
 #  The CMakeLists.txt for building the env-test deployment for opteesp
@@ -30,29 +30,23 @@
 	SP_NAME "env-test"
 )
 
+target_include_directories(env-test PRIVATE
+	${CMAKE_CURRENT_LIST_DIR}
+)
+
 #-------------------------------------------------------------------------------
-#  Components that are env-test specific to deployment in the opteesp
-#  environment.
+#  Deployment specific components
+#
 #-------------------------------------------------------------------------------
 add_components(TARGET "env-test"
 	BASE_DIR ${TS_ROOT}
 	COMPONENTS
-		"components/common/fdt"
-		"components/common/trace"
-		"components/common/utils"
-		"components/config/loader/sp"
-		"components/messaging/ffa/libsp"
-		"components/rpc/ffarpc/endpoint"
-		"components/config/test/sp"
 		"environments/opteesp"
 )
 
-#-------------------------------------------------------------------------------
-#  Extend with components that are common across all deployments of
-#  env-test
-#
-#-------------------------------------------------------------------------------
-include(../env-test.cmake REQUIRED)
+include(../../env/commonsp/env_test_sp.cmake REQUIRED)
+include(../../env-test.cmake REQUIRED)
+include(../../suites/edk2-platform-tests.cmake REQUIRED)
 
 #-------------------------------------------------------------------------------
 #  Set target platform to provide drivers needed by the deployment
@@ -60,16 +54,13 @@
 #-------------------------------------------------------------------------------
 add_platform(TARGET env-test)
 
-#################################################################
-
+#-------------------------------------------------------------------------------
+#  Deployment specific build options
+#-------------------------------------------------------------------------------
 target_compile_definitions(env-test PRIVATE
 	ARM64=1
 )
 
-target_include_directories(env-test PRIVATE
-	${TS_ROOT}/deployments/env-test/opteesp
-)
-
 if(CMAKE_C_COMPILER_ID STREQUAL "GNU")
 	target_compile_options(env-test PRIVATE
 		-std=c99
@@ -78,7 +69,9 @@
 
 compiler_generate_stripped_elf(TARGET env-test NAME "${SP_UUID_CANON}.stripped.elf" RES STRIPPED_ELF)
 
-######################################## install
+#-------------------------------------------------------------------------------
+#  Deployment specific install options
+#-------------------------------------------------------------------------------
 if (CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
 	set(CMAKE_INSTALL_PREFIX ${CMAKE_BINARY_DIR}/install CACHE PATH "location to install build output to." FORCE)
 endif()
diff --git a/deployments/env-test/opteesp/default_env-test.dts.in b/deployments/env-test/config/n1sdp-opteesp/default_env-test.dts.in
similarity index 100%
rename from deployments/env-test/opteesp/default_env-test.dts.in
rename to deployments/env-test/config/n1sdp-opteesp/default_env-test.dts.in
diff --git a/deployments/env-test/opteesp/optee_sp_user_defines.h b/deployments/env-test/config/n1sdp-opteesp/optee_sp_user_defines.h
similarity index 100%
rename from deployments/env-test/opteesp/optee_sp_user_defines.h
rename to deployments/env-test/config/n1sdp-opteesp/optee_sp_user_defines.h
diff --git a/deployments/env-test/env-test.cmake b/deployments/env-test/env-test.cmake
index cf75d90..c81810c 100644
--- a/deployments/env-test/env-test.cmake
+++ b/deployments/env-test/env-test.cmake
@@ -19,45 +19,19 @@
 	TARGET "env-test"
 	BASE_DIR ${TS_ROOT}
 	COMPONENTS
-	"components/common/fdt"
 	"components/common/tlv"
-	"components/config/ramstore"
 	"components/rpc/common/interface"
-	"components/rpc/common/caller"
 	"components/service/common/include"
-	"components/service/common/client"
 	"components/service/common/provider"
 	"components/service/test_runner/provider"
 	"components/service/test_runner/provider/serializer/packed-c"
 	"components/service/test_runner/provider/backend/null"
 	"components/service/test_runner/provider/backend/simple_c"
-	"components/service/crypto/backend/mbedcrypto"
-	"components/service/crypto/backend/mbedcrypto/trng_adapter/platform"
-	"components/service/crypto/backend/mbedcrypto/trng_adapter/test"
-	"components/service/secure_storage/include"
-	"components/service/secure_storage/frontend/psa/its"
-	"components/service/secure_storage/backend/secure_storage_client"
 	"protocols/rpc/common/packed-c"
 )
 
-#-------------------------------------------------------------------------------
-#  Deployment specific source files
-#-------------------------------------------------------------------------------
-target_sources(env-test PRIVATE
-	${CMAKE_CURRENT_LIST_DIR}/common/env_test.c
-	${CMAKE_CURRENT_LIST_DIR}/common/env_test_tests.c
-)
-
 target_include_directories(env-test PRIVATE
 	${TS_ROOT}
 	${TS_ROOT}/components
 )
 
-#-------------------------------------------------------------------------------
-#  Components used from external projects
-#
-#-------------------------------------------------------------------------------
-
-# Mbed TLS provides libmbedcrypto
-include(${TS_ROOT}/external/MbedTLS/MbedTLS.cmake)
-target_link_libraries(env-test PRIVATE mbedcrypto)
diff --git a/deployments/env-test/common/env_test.c b/deployments/env-test/env/commonsp/env_test_sp.c
similarity index 95%
rename from deployments/env-test/common/env_test.c
rename to deployments/env-test/env/commonsp/env_test_sp.c
index 2754ebf..3b1f472 100644
--- a/deployments/env-test/common/env_test.c
+++ b/deployments/env-test/env/commonsp/env_test_sp.c
@@ -3,7 +3,6 @@
  * Copyright (c) 2021-2022, Arm Limited and Contributors. All rights reserved.
  */
 
-#include "rpc/ffarpc/caller/sp/ffarpc_caller.h"
 #include "rpc/ffarpc/endpoint/ffarpc_call_ep.h"
 #include "service/test_runner/provider/test_runner_provider.h"
 #include "service/test_runner/provider/serializer/packed-c/packedc_test_runner_provider_serializer.h"
@@ -15,7 +14,7 @@
 #include "sp_discovery.h"
 #include "sp_rxtx.h"
 #include "trace.h"
-#include "env_test_tests.h"
+#include "deployments/env-test/suites/registration/env_test_register.h"
 
 static bool sp_init(uint16_t *own_sp_id);
 
@@ -24,7 +23,6 @@
 	struct test_runner_provider test_runner_provider = { 0 };
 	struct ffa_call_ep ffarpc_call_ep = { 0 };
 	struct rpc_interface *test_runner_iface = NULL;
-	struct ffarpc_caller ffarpc_caller = { 0 };
 	struct sp_msg req_msg = { 0 };
 	struct sp_msg resp_msg = { 0 };
 	uint16_t own_id = 0;
diff --git a/deployments/env-test/env/commonsp/env_test_sp.cmake b/deployments/env-test/env/commonsp/env_test_sp.cmake
new file mode 100644
index 0000000..df57ef2
--- /dev/null
+++ b/deployments/env-test/env/commonsp/env_test_sp.cmake
@@ -0,0 +1,29 @@
+#-------------------------------------------------------------------------------
+# Copyright (c) 2022, Arm Limited and Contributors. All rights reserved.
+#
+# SPDX-License-Identifier: BSD-3-Clause
+#
+# Includes components needed for deploying the env-test service provider
+# within a secure partition.
+#-------------------------------------------------------------------------------
+
+#-------------------------------------------------------------------------------
+# Common components for env-test sp deployments
+#
+#-------------------------------------------------------------------------------
+add_components(TARGET "env-test"
+	BASE_DIR ${TS_ROOT}
+	COMPONENTS
+		"components/common/fdt"
+		"components/common/trace"
+		"components/common/utils"
+		"components/config/ramstore"
+		"components/config/loader/sp"
+		"components/messaging/ffa/libsp"
+		"components/rpc/common/interface"
+		"components/rpc/ffarpc/endpoint"
+)
+
+target_sources(env-test PRIVATE
+	${CMAKE_CURRENT_LIST_DIR}/env_test_sp.c
+)
diff --git a/deployments/env-test/common/env_test.h b/deployments/env-test/env/commonsp/env_test_sp.h
similarity index 100%
rename from deployments/env-test/common/env_test.h
rename to deployments/env-test/env/commonsp/env_test_sp.h
diff --git a/deployments/env-test/opteesp/.gitignore b/deployments/env-test/opteesp/.gitignore
deleted file mode 100644
index 378eac2..0000000
--- a/deployments/env-test/opteesp/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-build
diff --git a/deployments/env-test/suites/baremetal-tests.cmake b/deployments/env-test/suites/baremetal-tests.cmake
new file mode 100644
index 0000000..6591719
--- /dev/null
+++ b/deployments/env-test/suites/baremetal-tests.cmake
@@ -0,0 +1,43 @@
+#-------------------------------------------------------------------------------
+# Copyright (c) 2022, Arm Limited and Contributors. All rights reserved.
+#
+# SPDX-License-Identifier: BSD-3-Clause
+#
+# Baremetal driver test cases to test paltform driver operation from within
+# a secure execution environment.
+#-------------------------------------------------------------------------------
+
+#-------------------------------------------------------------------------------
+#  Components-under-test and test cases baremetal platform tests.
+#
+#-------------------------------------------------------------------------------
+add_components(TARGET "env-test"
+	BASE_DIR ${TS_ROOT}
+	COMPONENTS
+		"components/service/crypto/backend/mbedcrypto"
+		"components/service/crypto/backend/mbedcrypto/trng_adapter/platform"
+		"components/service/crypto/backend/mbedcrypto/trng_adapter/test"
+		"components/service/secure_storage/include"
+		"components/service/secure_storage/frontend/psa/its"
+		"components/service/secure_storage/backend/secure_storage_client"
+		"components/config/test/sp"
+)
+
+target_sources(env-test PRIVATE
+	${CMAKE_CURRENT_LIST_DIR}/registration/baremetal_tests.c
+)
+
+#-------------------------------------------------------------------------------
+#  Components used from external projects
+#
+#-------------------------------------------------------------------------------
+
+# Mbed TLS provides libmbedcrypto
+include(${TS_ROOT}/external/MbedTLS/MbedTLS.cmake)
+target_link_libraries(env-test PRIVATE mbedcrypto)
+
+#-------------------------------------------------------------------------------
+#  This test suite depends on platform specific drivers
+#
+#-------------------------------------------------------------------------------
+add_platform(TARGET "env-test")
\ No newline at end of file
diff --git a/deployments/env-test/suites/edk2-platform-tests.cmake b/deployments/env-test/suites/edk2-platform-tests.cmake
new file mode 100644
index 0000000..dab56ed
--- /dev/null
+++ b/deployments/env-test/suites/edk2-platform-tests.cmake
@@ -0,0 +1,27 @@
+#-------------------------------------------------------------------------------
+# Copyright (c) 2022, Arm Limited and Contributors. All rights reserved.
+#
+# SPDX-License-Identifier: BSD-3-Clause
+#
+# Test for drivers reused from edk2-platforms
+#-------------------------------------------------------------------------------
+
+#-------------------------------------------------------------------------------
+#  Components-under-test and test cases edk2 platform tests.
+#
+#-------------------------------------------------------------------------------
+add_components(TARGET "env-test"
+	BASE_DIR ${TS_ROOT}
+	COMPONENTS
+		"components/config/test/sp"
+)
+
+target_sources(env-test PRIVATE
+	${CMAKE_CURRENT_LIST_DIR}/registration/edk2_platform_tests.c
+)
+
+#-------------------------------------------------------------------------------
+#  This test suite depends on platform specific drivers
+#
+#-------------------------------------------------------------------------------
+add_platform(TARGET "env-test")
\ No newline at end of file
diff --git a/deployments/env-test/common/env_test_tests.c b/deployments/env-test/suites/registration/baremetal_tests.c
similarity index 64%
rename from deployments/env-test/common/env_test_tests.c
rename to deployments/env-test/suites/registration/baremetal_tests.c
index 11c1f42..5c01999 100644
--- a/deployments/env-test/common/env_test_tests.c
+++ b/deployments/env-test/suites/registration/baremetal_tests.c
@@ -1,12 +1,16 @@
 // SPDX-License-Identifier: BSD-3-Clause
 /*
- * Copyright (c) 2021, Arm Limited and Contributors. All rights reserved.
+ * Copyright (c) 2021-2022, Arm Limited and Contributors. All rights reserved.
  */
 
 #include <service/test_runner/provider/backend/simple_c/simple_c_test_runner.h>
 #include <config/test/sp/sp_config_tests.h>
 #include <service/crypto/backend/mbedcrypto/trng_adapter/test/trng_env_tests.h>
 
+/**
+ * Register tests that constitute the 'baremetal-tests' suite. Used for testing
+ * platform drivers that conform to the 'baremetal' driver model.
+ */
 void env_test_register_tests(struct test_runner_provider *context)
 {
 	simple_c_test_runner_init(context);
diff --git a/deployments/env-test/suites/registration/edk2_platform_tests.c b/deployments/env-test/suites/registration/edk2_platform_tests.c
new file mode 100644
index 0000000..7b0fa44
--- /dev/null
+++ b/deployments/env-test/suites/registration/edk2_platform_tests.c
@@ -0,0 +1,18 @@
+// SPDX-License-Identifier: BSD-3-Clause
+/*
+ * Copyright (c) 2022, Arm Limited and Contributors. All rights reserved.
+ */
+
+#include <service/test_runner/provider/backend/simple_c/simple_c_test_runner.h>
+#include <config/test/sp/sp_config_tests.h>
+
+/**
+ * Register tests that constitute the 'edk2-platform-tests' suite. Used for testing
+ * platform drivers that conform to the 'edk2 (UEFI)' driver model.
+ */
+void env_test_register_tests(struct test_runner_provider *context)
+{
+	simple_c_test_runner_init(context);
+
+	sp_config_tests_register();
+}
diff --git a/deployments/env-test/suites/registration/env_test_register.h b/deployments/env-test/suites/registration/env_test_register.h
new file mode 100644
index 0000000..d455f5a
--- /dev/null
+++ b/deployments/env-test/suites/registration/env_test_register.h
@@ -0,0 +1,18 @@
+/*
+ * Copyright (c) 2021-2022, Arm Limited and Contributors. All rights reserved.
+ *
+ * SPDX-License-Identifier: BSD-3-Clause
+ */
+
+#ifndef ENV_TEST_REGISTER_H
+#define ENV_TEST_REGISTER_H
+
+struct test_runner_provider;
+
+/**
+ * Registers test cases for this deployment
+ */
+void env_test_register_tests(struct test_runner_provider *context);
+
+
+#endif /* ENV_TEST_REGISTER_H */