Platform: Split RSS into sub-platforms

Initially only tc

Change-Id: Ie948cd6a34f5e2caf62e87fc7dd3e88d24bd0d26
Signed-off-by: Raef Coles <raef.coles@arm.com>
diff --git a/docs/platform/arm/rss/readme.rst b/docs/platform/arm/rss/readme.rst
index 6cf7e1b..cbb2ca9 100644
--- a/docs/platform/arm/rss/readme.rst
+++ b/docs/platform/arm/rss/readme.rst
@@ -26,9 +26,10 @@
 -------------
 
 Follow the instructions in :doc:`Build instructions </building/tfm_build_instruction>`.
-Build TF-M with platform name: `arm/rss`
+Build TF-M with platform name: `arm/rss/<rss platform name>`
 
-``-DTFM_PLATFORM=arm/rss``
+For example for building RSS for Total Compute platforms:
+``-DTFM_PLATFORM=arm/rss/tc``
 
 Signing host images
 -------------------
diff --git a/platform/ext/target/arm/rss/CMakeLists.txt b/platform/ext/target/arm/rss/common/CMakeLists.txt
similarity index 98%
rename from platform/ext/target/arm/rss/CMakeLists.txt
rename to platform/ext/target/arm/rss/common/CMakeLists.txt
index d1347e2..8a32c97 100644
--- a/platform/ext/target/arm/rss/CMakeLists.txt
+++ b/platform/ext/target/arm/rss/common/CMakeLists.txt
@@ -82,7 +82,7 @@
 
 #========================= Platform Secure ====================================#
 
-add_subdirectory(rss_comms)
+add_subdirectory(${CMAKE_CURRENT_LIST_DIR}/rss_comms rss_comms)
 
 target_include_directories(platform_s
     PUBLIC
@@ -194,9 +194,7 @@
 target_sources(platform_bl2
     PRIVATE
         tfm_hal_platform_reset.c
-        bl2/flash_map_bl2.c
         bl2/provisioning.c
-        bl2/boot_hal_bl2.c
         cmsis_drivers/Driver_Flash.c
         cmsis_drivers/Driver_USART.c
         device/source/device_definition.c
diff --git a/platform/ext/target/arm/rss/attest_hal.c b/platform/ext/target/arm/rss/common/attest_hal.c
similarity index 100%
rename from platform/ext/target/arm/rss/attest_hal.c
rename to platform/ext/target/arm/rss/common/attest_hal.c
diff --git a/platform/ext/target/arm/rss/bl1/boot_hal_bl1.c b/platform/ext/target/arm/rss/common/bl1/boot_hal_bl1.c
similarity index 100%
rename from platform/ext/target/arm/rss/bl1/boot_hal_bl1.c
rename to platform/ext/target/arm/rss/common/bl1/boot_hal_bl1.c
diff --git a/platform/ext/target/arm/rss/bl2/provisioning.c b/platform/ext/target/arm/rss/common/bl2/provisioning.c
similarity index 100%
rename from platform/ext/target/arm/rss/bl2/provisioning.c
rename to platform/ext/target/arm/rss/common/bl2/provisioning.c
diff --git a/platform/ext/target/arm/rss/cc312/dx_reg_base_host.h b/platform/ext/target/arm/rss/common/cc312/dx_reg_base_host.h
similarity index 100%
rename from platform/ext/target/arm/rss/cc312/dx_reg_base_host.h
rename to platform/ext/target/arm/rss/common/cc312/dx_reg_base_host.h
diff --git a/platform/ext/target/arm/rss/check_config.cmake b/platform/ext/target/arm/rss/common/check_config.cmake
similarity index 100%
rename from platform/ext/target/arm/rss/check_config.cmake
rename to platform/ext/target/arm/rss/common/check_config.cmake
diff --git a/platform/ext/target/arm/rss/cmsis_drivers/Driver_Flash.c b/platform/ext/target/arm/rss/common/cmsis_drivers/Driver_Flash.c
similarity index 100%
rename from platform/ext/target/arm/rss/cmsis_drivers/Driver_Flash.c
rename to platform/ext/target/arm/rss/common/cmsis_drivers/Driver_Flash.c
diff --git a/platform/ext/target/arm/rss/cmsis_drivers/Driver_MPC.c b/platform/ext/target/arm/rss/common/cmsis_drivers/Driver_MPC.c
similarity index 100%
rename from platform/ext/target/arm/rss/cmsis_drivers/Driver_MPC.c
rename to platform/ext/target/arm/rss/common/cmsis_drivers/Driver_MPC.c
diff --git a/platform/ext/target/arm/rss/cmsis_drivers/Driver_PPC.c b/platform/ext/target/arm/rss/common/cmsis_drivers/Driver_PPC.c
similarity index 100%
rename from platform/ext/target/arm/rss/cmsis_drivers/Driver_PPC.c
rename to platform/ext/target/arm/rss/common/cmsis_drivers/Driver_PPC.c
diff --git a/platform/ext/target/arm/rss/cmsis_drivers/Driver_PPC.h b/platform/ext/target/arm/rss/common/cmsis_drivers/Driver_PPC.h
similarity index 100%
rename from platform/ext/target/arm/rss/cmsis_drivers/Driver_PPC.h
rename to platform/ext/target/arm/rss/common/cmsis_drivers/Driver_PPC.h
diff --git a/platform/ext/target/arm/rss/cmsis_drivers/Driver_USART.c b/platform/ext/target/arm/rss/common/cmsis_drivers/Driver_USART.c
similarity index 100%
rename from platform/ext/target/arm/rss/cmsis_drivers/Driver_USART.c
rename to platform/ext/target/arm/rss/common/cmsis_drivers/Driver_USART.c
diff --git a/platform/ext/target/arm/rss/cmsis_drivers/config/RTE_Device.h b/platform/ext/target/arm/rss/common/cmsis_drivers/config/RTE_Device.h
similarity index 100%
rename from platform/ext/target/arm/rss/cmsis_drivers/config/RTE_Device.h
rename to platform/ext/target/arm/rss/common/cmsis_drivers/config/RTE_Device.h
diff --git a/platform/ext/target/arm/rss/cmsis_drivers/config/cmsis_driver_config.h b/platform/ext/target/arm/rss/common/cmsis_drivers/config/cmsis_driver_config.h
similarity index 100%
rename from platform/ext/target/arm/rss/cmsis_drivers/config/cmsis_driver_config.h
rename to platform/ext/target/arm/rss/common/cmsis_drivers/config/cmsis_driver_config.h
diff --git a/platform/ext/target/arm/rss/config.cmake b/platform/ext/target/arm/rss/common/config.cmake
similarity index 100%
rename from platform/ext/target/arm/rss/config.cmake
rename to platform/ext/target/arm/rss/common/config.cmake
diff --git a/platform/ext/target/arm/rss/crypto_keys.c b/platform/ext/target/arm/rss/common/crypto_keys.c
similarity index 100%
rename from platform/ext/target/arm/rss/crypto_keys.c
rename to platform/ext/target/arm/rss/common/crypto_keys.c
diff --git a/platform/ext/target/arm/rss/device/config/device_cfg.h b/platform/ext/target/arm/rss/common/device/config/device_cfg.h
similarity index 100%
rename from platform/ext/target/arm/rss/device/config/device_cfg.h
rename to platform/ext/target/arm/rss/common/device/config/device_cfg.h
diff --git a/platform/ext/target/arm/rss/device/include/boot_measurement.h b/platform/ext/target/arm/rss/common/device/include/boot_measurement.h
similarity index 100%
rename from platform/ext/target/arm/rss/device/include/boot_measurement.h
rename to platform/ext/target/arm/rss/common/device/include/boot_measurement.h
diff --git a/platform/ext/target/arm/rss/device/include/cmsis.h b/platform/ext/target/arm/rss/common/device/include/cmsis.h
similarity index 100%
rename from platform/ext/target/arm/rss/device/include/cmsis.h
rename to platform/ext/target/arm/rss/common/device/include/cmsis.h
diff --git a/platform/ext/target/arm/rss/device/include/device_definition.h b/platform/ext/target/arm/rss/common/device/include/device_definition.h
similarity index 100%
rename from platform/ext/target/arm/rss/device/include/device_definition.h
rename to platform/ext/target/arm/rss/common/device/include/device_definition.h
diff --git a/platform/ext/target/arm/rss/device/include/platform_irq.h b/platform/ext/target/arm/rss/common/device/include/platform_irq.h
similarity index 100%
rename from platform/ext/target/arm/rss/device/include/platform_irq.h
rename to platform/ext/target/arm/rss/common/device/include/platform_irq.h
diff --git a/platform/ext/target/arm/rss/device/include/platform_pins.h b/platform/ext/target/arm/rss/common/device/include/platform_pins.h
similarity index 100%
rename from platform/ext/target/arm/rss/device/include/platform_pins.h
rename to platform/ext/target/arm/rss/common/device/include/platform_pins.h
diff --git a/platform/ext/target/arm/rss/device/include/platform_regs.h b/platform/ext/target/arm/rss/common/device/include/platform_regs.h
similarity index 100%
rename from platform/ext/target/arm/rss/device/include/platform_regs.h
rename to platform/ext/target/arm/rss/common/device/include/platform_regs.h
diff --git a/platform/ext/target/arm/rss/device/include/rss.h b/platform/ext/target/arm/rss/common/device/include/rss.h
similarity index 100%
rename from platform/ext/target/arm/rss/device/include/rss.h
rename to platform/ext/target/arm/rss/common/device/include/rss.h
diff --git a/platform/ext/target/arm/rss/device/include/system_core_init.h b/platform/ext/target/arm/rss/common/device/include/system_core_init.h
similarity index 100%
rename from platform/ext/target/arm/rss/device/include/system_core_init.h
rename to platform/ext/target/arm/rss/common/device/include/system_core_init.h
diff --git a/platform/ext/target/arm/rss/device/source/armclang/rss_bl1_1.sct b/platform/ext/target/arm/rss/common/device/source/armclang/rss_bl1_1.sct
similarity index 100%
rename from platform/ext/target/arm/rss/device/source/armclang/rss_bl1_1.sct
rename to platform/ext/target/arm/rss/common/device/source/armclang/rss_bl1_1.sct
diff --git a/platform/ext/target/arm/rss/device/source/armclang/rss_bl1_2.sct b/platform/ext/target/arm/rss/common/device/source/armclang/rss_bl1_2.sct
similarity index 100%
rename from platform/ext/target/arm/rss/device/source/armclang/rss_bl1_2.sct
rename to platform/ext/target/arm/rss/common/device/source/armclang/rss_bl1_2.sct
diff --git a/platform/ext/target/arm/rss/device/source/armclang/rss_bl2.sct b/platform/ext/target/arm/rss/common/device/source/armclang/rss_bl2.sct
similarity index 100%
rename from platform/ext/target/arm/rss/device/source/armclang/rss_bl2.sct
rename to platform/ext/target/arm/rss/common/device/source/armclang/rss_bl2.sct
diff --git a/platform/ext/target/arm/rss/device/source/armclang/rss_ns.sct b/platform/ext/target/arm/rss/common/device/source/armclang/rss_ns.sct
similarity index 100%
rename from platform/ext/target/arm/rss/device/source/armclang/rss_ns.sct
rename to platform/ext/target/arm/rss/common/device/source/armclang/rss_ns.sct
diff --git a/platform/ext/target/arm/rss/device/source/device_definition.c b/platform/ext/target/arm/rss/common/device/source/device_definition.c
similarity index 100%
rename from platform/ext/target/arm/rss/device/source/device_definition.c
rename to platform/ext/target/arm/rss/common/device/source/device_definition.c
diff --git a/platform/ext/target/arm/rss/device/source/gcc/rss_bl1_1.ld b/platform/ext/target/arm/rss/common/device/source/gcc/rss_bl1_1.ld
similarity index 100%
rename from platform/ext/target/arm/rss/device/source/gcc/rss_bl1_1.ld
rename to platform/ext/target/arm/rss/common/device/source/gcc/rss_bl1_1.ld
diff --git a/platform/ext/target/arm/rss/device/source/gcc/rss_bl1_2.ld b/platform/ext/target/arm/rss/common/device/source/gcc/rss_bl1_2.ld
similarity index 100%
rename from platform/ext/target/arm/rss/device/source/gcc/rss_bl1_2.ld
rename to platform/ext/target/arm/rss/common/device/source/gcc/rss_bl1_2.ld
diff --git a/platform/ext/target/arm/rss/device/source/gcc/rss_bl2.ld b/platform/ext/target/arm/rss/common/device/source/gcc/rss_bl2.ld
similarity index 100%
rename from platform/ext/target/arm/rss/device/source/gcc/rss_bl2.ld
rename to platform/ext/target/arm/rss/common/device/source/gcc/rss_bl2.ld
diff --git a/platform/ext/target/arm/rss/device/source/gcc/rss_ns.ld b/platform/ext/target/arm/rss/common/device/source/gcc/rss_ns.ld
similarity index 100%
rename from platform/ext/target/arm/rss/device/source/gcc/rss_ns.ld
rename to platform/ext/target/arm/rss/common/device/source/gcc/rss_ns.ld
diff --git a/platform/ext/target/arm/rss/device/source/startup_rss_bl2.c b/platform/ext/target/arm/rss/common/device/source/startup_rss_bl2.c
similarity index 100%
rename from platform/ext/target/arm/rss/device/source/startup_rss_bl2.c
rename to platform/ext/target/arm/rss/common/device/source/startup_rss_bl2.c
diff --git a/platform/ext/target/arm/rss/device/source/startup_rss_ns.c b/platform/ext/target/arm/rss/common/device/source/startup_rss_ns.c
similarity index 100%
rename from platform/ext/target/arm/rss/device/source/startup_rss_ns.c
rename to platform/ext/target/arm/rss/common/device/source/startup_rss_ns.c
diff --git a/platform/ext/target/arm/rss/device/source/startup_rss_s.c b/platform/ext/target/arm/rss/common/device/source/startup_rss_s.c
similarity index 100%
rename from platform/ext/target/arm/rss/device/source/startup_rss_s.c
rename to platform/ext/target/arm/rss/common/device/source/startup_rss_s.c
diff --git a/platform/ext/target/arm/rss/device/source/system_core_init.c b/platform/ext/target/arm/rss/common/device/source/system_core_init.c
similarity index 100%
rename from platform/ext/target/arm/rss/device/source/system_core_init.c
rename to platform/ext/target/arm/rss/common/device/source/system_core_init.c
diff --git a/platform/ext/target/arm/rss/faults.c b/platform/ext/target/arm/rss/common/faults.c
similarity index 100%
rename from platform/ext/target/arm/rss/faults.c
rename to platform/ext/target/arm/rss/common/faults.c
diff --git a/platform/ext/target/arm/rss/manifest/tfm_crypto.yaml b/platform/ext/target/arm/rss/common/manifest/tfm_crypto.yaml
similarity index 100%
rename from platform/ext/target/arm/rss/manifest/tfm_crypto.yaml
rename to platform/ext/target/arm/rss/common/manifest/tfm_crypto.yaml
diff --git a/platform/ext/target/arm/rss/manifest/tfm_initial_attestation.yaml b/platform/ext/target/arm/rss/common/manifest/tfm_initial_attestation.yaml
similarity index 100%
rename from platform/ext/target/arm/rss/manifest/tfm_initial_attestation.yaml
rename to platform/ext/target/arm/rss/common/manifest/tfm_initial_attestation.yaml
diff --git a/platform/ext/target/arm/rss/manifest/tfm_manifest_list.yaml b/platform/ext/target/arm/rss/common/manifest/tfm_manifest_list.yaml
similarity index 96%
rename from platform/ext/target/arm/rss/manifest/tfm_manifest_list.yaml
rename to platform/ext/target/arm/rss/common/manifest/tfm_manifest_list.yaml
index 7f4d02c..635ed02 100644
--- a/platform/ext/target/arm/rss/manifest/tfm_manifest_list.yaml
+++ b/platform/ext/target/arm/rss/common/manifest/tfm_manifest_list.yaml
@@ -38,7 +38,7 @@
     },
     {
       "description": "TFM Crypto Service",
-      "manifest": "${CMAKE_SOURCE_DIR}/platform/ext/target/arm/rss/manifest/tfm_crypto.yaml",
+      "manifest": "${CMAKE_SOURCE_DIR}/platform/ext/target/arm/rss/common/manifest/tfm_crypto.yaml",
       "output_path": "secure_fw/partitions/crypto",
       "conditional": "TFM_PARTITION_CRYPTO",
       "version_major": 0,
@@ -66,7 +66,7 @@
     },
     {
       "description": "TFM Initial Attestation Service",
-      "manifest": "${CMAKE_SOURCE_DIR}/platform/ext/target/arm/rss/manifest/tfm_initial_attestation.yaml",
+      "manifest": "${CMAKE_SOURCE_DIR}/platform/ext/target/arm/rss/common/manifest/tfm_initial_attestation.yaml",
       "output_path": "secure_fw/partitions/initial_attestation",
       "conditional": "TFM_PARTITION_INITIAL_ATTESTATION",
       "version_major": 0,
diff --git a/platform/ext/target/arm/rss/mbedtls_extra_config.h b/platform/ext/target/arm/rss/common/mbedtls_extra_config.h
similarity index 100%
rename from platform/ext/target/arm/rss/mbedtls_extra_config.h
rename to platform/ext/target/arm/rss/common/mbedtls_extra_config.h
diff --git a/platform/ext/target/arm/rss/mmio_defs.h b/platform/ext/target/arm/rss/common/mmio_defs.h
similarity index 100%
rename from platform/ext/target/arm/rss/mmio_defs.h
rename to platform/ext/target/arm/rss/common/mmio_defs.h
diff --git a/platform/ext/target/arm/rss/native_drivers/atu_rss_drv.c b/platform/ext/target/arm/rss/common/native_drivers/atu_rss_drv.c
similarity index 100%
rename from platform/ext/target/arm/rss/native_drivers/atu_rss_drv.c
rename to platform/ext/target/arm/rss/common/native_drivers/atu_rss_drv.c
diff --git a/platform/ext/target/arm/rss/native_drivers/atu_rss_drv.h b/platform/ext/target/arm/rss/common/native_drivers/atu_rss_drv.h
similarity index 100%
rename from platform/ext/target/arm/rss/native_drivers/atu_rss_drv.h
rename to platform/ext/target/arm/rss/common/native_drivers/atu_rss_drv.h
diff --git a/platform/ext/target/arm/rss/native_drivers/kmu_drv.c b/platform/ext/target/arm/rss/common/native_drivers/kmu_drv.c
similarity index 100%
rename from platform/ext/target/arm/rss/native_drivers/kmu_drv.c
rename to platform/ext/target/arm/rss/common/native_drivers/kmu_drv.c
diff --git a/platform/ext/target/arm/rss/native_drivers/kmu_drv.h b/platform/ext/target/arm/rss/common/native_drivers/kmu_drv.h
similarity index 100%
rename from platform/ext/target/arm/rss/native_drivers/kmu_drv.h
rename to platform/ext/target/arm/rss/common/native_drivers/kmu_drv.h
diff --git a/platform/ext/target/arm/rss/native_drivers/lcm_drv.c b/platform/ext/target/arm/rss/common/native_drivers/lcm_drv.c
similarity index 100%
rename from platform/ext/target/arm/rss/native_drivers/lcm_drv.c
rename to platform/ext/target/arm/rss/common/native_drivers/lcm_drv.c
diff --git a/platform/ext/target/arm/rss/native_drivers/lcm_drv.h b/platform/ext/target/arm/rss/common/native_drivers/lcm_drv.h
similarity index 100%
rename from platform/ext/target/arm/rss/native_drivers/lcm_drv.h
rename to platform/ext/target/arm/rss/common/native_drivers/lcm_drv.h
diff --git a/platform/ext/target/arm/rss/native_drivers/mhu.h b/platform/ext/target/arm/rss/common/native_drivers/mhu.h
similarity index 100%
rename from platform/ext/target/arm/rss/native_drivers/mhu.h
rename to platform/ext/target/arm/rss/common/native_drivers/mhu.h
diff --git a/platform/ext/target/arm/rss/native_drivers/mhu_v2_x.c b/platform/ext/target/arm/rss/common/native_drivers/mhu_v2_x.c
similarity index 100%
rename from platform/ext/target/arm/rss/native_drivers/mhu_v2_x.c
rename to platform/ext/target/arm/rss/common/native_drivers/mhu_v2_x.c
diff --git a/platform/ext/target/arm/rss/native_drivers/mhu_v2_x.h b/platform/ext/target/arm/rss/common/native_drivers/mhu_v2_x.h
similarity index 100%
rename from platform/ext/target/arm/rss/native_drivers/mhu_v2_x.h
rename to platform/ext/target/arm/rss/common/native_drivers/mhu_v2_x.h
diff --git a/platform/ext/target/arm/rss/native_drivers/mhu_wrapper_v2_x.c b/platform/ext/target/arm/rss/common/native_drivers/mhu_wrapper_v2_x.c
similarity index 100%
rename from platform/ext/target/arm/rss/native_drivers/mhu_wrapper_v2_x.c
rename to platform/ext/target/arm/rss/common/native_drivers/mhu_wrapper_v2_x.c
diff --git a/platform/ext/target/arm/rss/native_drivers/mpc_sie_drv.c b/platform/ext/target/arm/rss/common/native_drivers/mpc_sie_drv.c
similarity index 100%
rename from platform/ext/target/arm/rss/native_drivers/mpc_sie_drv.c
rename to platform/ext/target/arm/rss/common/native_drivers/mpc_sie_drv.c
diff --git a/platform/ext/target/arm/rss/native_drivers/mpc_sie_drv.h b/platform/ext/target/arm/rss/common/native_drivers/mpc_sie_drv.h
similarity index 100%
rename from platform/ext/target/arm/rss/native_drivers/mpc_sie_drv.h
rename to platform/ext/target/arm/rss/common/native_drivers/mpc_sie_drv.h
diff --git a/platform/ext/target/arm/rss/native_drivers/mpu_armv8m_drv.c b/platform/ext/target/arm/rss/common/native_drivers/mpu_armv8m_drv.c
similarity index 100%
rename from platform/ext/target/arm/rss/native_drivers/mpu_armv8m_drv.c
rename to platform/ext/target/arm/rss/common/native_drivers/mpu_armv8m_drv.c
diff --git a/platform/ext/target/arm/rss/native_drivers/mpu_armv8m_drv.h b/platform/ext/target/arm/rss/common/native_drivers/mpu_armv8m_drv.h
similarity index 100%
rename from platform/ext/target/arm/rss/native_drivers/mpu_armv8m_drv.h
rename to platform/ext/target/arm/rss/common/native_drivers/mpu_armv8m_drv.h
diff --git a/platform/ext/target/arm/rss/native_drivers/ppc_rss_drv.c b/platform/ext/target/arm/rss/common/native_drivers/ppc_rss_drv.c
similarity index 100%
rename from platform/ext/target/arm/rss/native_drivers/ppc_rss_drv.c
rename to platform/ext/target/arm/rss/common/native_drivers/ppc_rss_drv.c
diff --git a/platform/ext/target/arm/rss/native_drivers/ppc_rss_drv.h b/platform/ext/target/arm/rss/common/native_drivers/ppc_rss_drv.h
similarity index 100%
rename from platform/ext/target/arm/rss/native_drivers/ppc_rss_drv.h
rename to platform/ext/target/arm/rss/common/native_drivers/ppc_rss_drv.h
diff --git a/platform/ext/target/arm/rss/native_drivers/syscounter_armv8-m_cntrl_drv.c b/platform/ext/target/arm/rss/common/native_drivers/syscounter_armv8-m_cntrl_drv.c
similarity index 100%
rename from platform/ext/target/arm/rss/native_drivers/syscounter_armv8-m_cntrl_drv.c
rename to platform/ext/target/arm/rss/common/native_drivers/syscounter_armv8-m_cntrl_drv.c
diff --git a/platform/ext/target/arm/rss/native_drivers/syscounter_armv8-m_cntrl_drv.h b/platform/ext/target/arm/rss/common/native_drivers/syscounter_armv8-m_cntrl_drv.h
similarity index 100%
rename from platform/ext/target/arm/rss/native_drivers/syscounter_armv8-m_cntrl_drv.h
rename to platform/ext/target/arm/rss/common/native_drivers/syscounter_armv8-m_cntrl_drv.h
diff --git a/platform/ext/target/arm/rss/native_drivers/systimer_armv8-m_drv.c b/platform/ext/target/arm/rss/common/native_drivers/systimer_armv8-m_drv.c
similarity index 100%
rename from platform/ext/target/arm/rss/native_drivers/systimer_armv8-m_drv.c
rename to platform/ext/target/arm/rss/common/native_drivers/systimer_armv8-m_drv.c
diff --git a/platform/ext/target/arm/rss/native_drivers/systimer_armv8-m_drv.h b/platform/ext/target/arm/rss/common/native_drivers/systimer_armv8-m_drv.h
similarity index 100%
rename from platform/ext/target/arm/rss/native_drivers/systimer_armv8-m_drv.h
rename to platform/ext/target/arm/rss/common/native_drivers/systimer_armv8-m_drv.h
diff --git a/platform/ext/target/arm/rss/native_drivers/uart_pl011_drv.c b/platform/ext/target/arm/rss/common/native_drivers/uart_pl011_drv.c
similarity index 100%
rename from platform/ext/target/arm/rss/native_drivers/uart_pl011_drv.c
rename to platform/ext/target/arm/rss/common/native_drivers/uart_pl011_drv.c
diff --git a/platform/ext/target/arm/rss/native_drivers/uart_pl011_drv.h b/platform/ext/target/arm/rss/common/native_drivers/uart_pl011_drv.h
similarity index 100%
rename from platform/ext/target/arm/rss/native_drivers/uart_pl011_drv.h
rename to platform/ext/target/arm/rss/common/native_drivers/uart_pl011_drv.h
diff --git a/platform/ext/target/arm/rss/nv_counters.c b/platform/ext/target/arm/rss/common/nv_counters.c
similarity index 100%
rename from platform/ext/target/arm/rss/nv_counters.c
rename to platform/ext/target/arm/rss/common/nv_counters.c
diff --git a/platform/ext/target/arm/rss/otp_lcm.c b/platform/ext/target/arm/rss/common/otp_lcm.c
similarity index 100%
rename from platform/ext/target/arm/rss/otp_lcm.c
rename to platform/ext/target/arm/rss/common/otp_lcm.c
diff --git a/platform/ext/target/arm/rss/partition/flash_layout.h b/platform/ext/target/arm/rss/common/partition/flash_layout.h
similarity index 100%
rename from platform/ext/target/arm/rss/partition/flash_layout.h
rename to platform/ext/target/arm/rss/common/partition/flash_layout.h
diff --git a/platform/ext/target/arm/rss/partition/platform_base_address.h b/platform/ext/target/arm/rss/common/partition/platform_base_address.h
similarity index 100%
rename from platform/ext/target/arm/rss/partition/platform_base_address.h
rename to platform/ext/target/arm/rss/common/partition/platform_base_address.h
diff --git a/platform/ext/target/arm/rss/partition/region_defs.h b/platform/ext/target/arm/rss/common/partition/region_defs.h
similarity index 100%
rename from platform/ext/target/arm/rss/partition/region_defs.h
rename to platform/ext/target/arm/rss/common/partition/region_defs.h
diff --git a/platform/ext/target/arm/rss/plat_test.c b/platform/ext/target/arm/rss/common/plat_test.c
similarity index 100%
rename from platform/ext/target/arm/rss/plat_test.c
rename to platform/ext/target/arm/rss/common/plat_test.c
diff --git a/platform/ext/target/arm/rss/platform_builtin_key_ids.h b/platform/ext/target/arm/rss/common/platform_builtin_key_ids.h
similarity index 100%
rename from platform/ext/target/arm/rss/platform_builtin_key_ids.h
rename to platform/ext/target/arm/rss/common/platform_builtin_key_ids.h
diff --git a/platform/ext/target/arm/rss/platform_builtin_key_loader_ids.h b/platform/ext/target/arm/rss/common/platform_builtin_key_loader_ids.h
similarity index 100%
rename from platform/ext/target/arm/rss/platform_builtin_key_loader_ids.h
rename to platform/ext/target/arm/rss/common/platform_builtin_key_loader_ids.h
diff --git a/platform/ext/target/arm/rss/platform_ns_mailbox.c b/platform/ext/target/arm/rss/common/platform_ns_mailbox.c
similarity index 100%
rename from platform/ext/target/arm/rss/platform_ns_mailbox.c
rename to platform/ext/target/arm/rss/common/platform_ns_mailbox.c
diff --git a/platform/ext/target/arm/rss/platform_otp_ids.h b/platform/ext/target/arm/rss/common/platform_otp_ids.h
similarity index 100%
rename from platform/ext/target/arm/rss/platform_otp_ids.h
rename to platform/ext/target/arm/rss/common/platform_otp_ids.h
diff --git a/platform/ext/target/arm/rss/preload.cmake b/platform/ext/target/arm/rss/common/preload.cmake
similarity index 100%
rename from platform/ext/target/arm/rss/preload.cmake
rename to platform/ext/target/arm/rss/common/preload.cmake
diff --git a/platform/ext/target/arm/rss/provisioning.c b/platform/ext/target/arm/rss/common/provisioning.c
similarity index 100%
rename from platform/ext/target/arm/rss/provisioning.c
rename to platform/ext/target/arm/rss/common/provisioning.c
diff --git a/platform/ext/target/arm/rss/rss_comms/CMakeLists.txt b/platform/ext/target/arm/rss/common/rss_comms/CMakeLists.txt
similarity index 100%
rename from platform/ext/target/arm/rss/rss_comms/CMakeLists.txt
rename to platform/ext/target/arm/rss/common/rss_comms/CMakeLists.txt
diff --git a/platform/ext/target/arm/rss/rss_comms/rss_comms.c b/platform/ext/target/arm/rss/common/rss_comms/rss_comms.c
similarity index 100%
rename from platform/ext/target/arm/rss/rss_comms/rss_comms.c
rename to platform/ext/target/arm/rss/common/rss_comms/rss_comms.c
diff --git a/platform/ext/target/arm/rss/rss_comms/rss_comms.h b/platform/ext/target/arm/rss/common/rss_comms/rss_comms.h
similarity index 100%
rename from platform/ext/target/arm/rss/rss_comms/rss_comms.h
rename to platform/ext/target/arm/rss/common/rss_comms/rss_comms.h
diff --git a/platform/ext/target/arm/rss/rss_comms/rss_comms_atu.c b/platform/ext/target/arm/rss/common/rss_comms/rss_comms_atu.c
similarity index 100%
rename from platform/ext/target/arm/rss/rss_comms/rss_comms_atu.c
rename to platform/ext/target/arm/rss/common/rss_comms/rss_comms_atu.c
diff --git a/platform/ext/target/arm/rss/rss_comms/rss_comms_atu.h b/platform/ext/target/arm/rss/common/rss_comms/rss_comms_atu.h
similarity index 100%
rename from platform/ext/target/arm/rss/rss_comms/rss_comms_atu.h
rename to platform/ext/target/arm/rss/common/rss_comms/rss_comms_atu.h
diff --git a/platform/ext/target/arm/rss/rss_comms/rss_comms_atu_hal.h b/platform/ext/target/arm/rss/common/rss_comms/rss_comms_atu_hal.h
similarity index 100%
rename from platform/ext/target/arm/rss/rss_comms/rss_comms_atu_hal.h
rename to platform/ext/target/arm/rss/common/rss_comms/rss_comms_atu_hal.h
diff --git a/platform/ext/target/arm/rss/rss_comms/rss_comms_hal.c b/platform/ext/target/arm/rss/common/rss_comms/rss_comms_hal.c
similarity index 100%
rename from platform/ext/target/arm/rss/rss_comms/rss_comms_hal.c
rename to platform/ext/target/arm/rss/common/rss_comms/rss_comms_hal.c
diff --git a/platform/ext/target/arm/rss/rss_comms/rss_comms_hal.h b/platform/ext/target/arm/rss/common/rss_comms/rss_comms_hal.h
similarity index 100%
rename from platform/ext/target/arm/rss/rss_comms/rss_comms_hal.h
rename to platform/ext/target/arm/rss/common/rss_comms/rss_comms_hal.h
diff --git a/platform/ext/target/arm/rss/rss_comms/rss_comms_permissions_hal.c b/platform/ext/target/arm/rss/common/rss_comms/rss_comms_permissions_hal.c
similarity index 100%
rename from platform/ext/target/arm/rss/rss_comms/rss_comms_permissions_hal.c
rename to platform/ext/target/arm/rss/common/rss_comms/rss_comms_permissions_hal.c
diff --git a/platform/ext/target/arm/rss/rss_comms/rss_comms_permissions_hal.h b/platform/ext/target/arm/rss/common/rss_comms/rss_comms_permissions_hal.h
similarity index 100%
rename from platform/ext/target/arm/rss/rss_comms/rss_comms_permissions_hal.h
rename to platform/ext/target/arm/rss/common/rss_comms/rss_comms_permissions_hal.h
diff --git a/platform/ext/target/arm/rss/rss_comms/rss_comms_protocol.c b/platform/ext/target/arm/rss/common/rss_comms/rss_comms_protocol.c
similarity index 100%
rename from platform/ext/target/arm/rss/rss_comms/rss_comms_protocol.c
rename to platform/ext/target/arm/rss/common/rss_comms/rss_comms_protocol.c
diff --git a/platform/ext/target/arm/rss/rss_comms/rss_comms_protocol.h b/platform/ext/target/arm/rss/common/rss_comms/rss_comms_protocol.h
similarity index 100%
rename from platform/ext/target/arm/rss/rss_comms/rss_comms_protocol.h
rename to platform/ext/target/arm/rss/common/rss_comms/rss_comms_protocol.h
diff --git a/platform/ext/target/arm/rss/rss_comms/rss_comms_protocol_embed.c b/platform/ext/target/arm/rss/common/rss_comms/rss_comms_protocol_embed.c
similarity index 100%
rename from platform/ext/target/arm/rss/rss_comms/rss_comms_protocol_embed.c
rename to platform/ext/target/arm/rss/common/rss_comms/rss_comms_protocol_embed.c
diff --git a/platform/ext/target/arm/rss/rss_comms/rss_comms_protocol_embed.h b/platform/ext/target/arm/rss/common/rss_comms/rss_comms_protocol_embed.h
similarity index 100%
rename from platform/ext/target/arm/rss/rss_comms/rss_comms_protocol_embed.h
rename to platform/ext/target/arm/rss/common/rss_comms/rss_comms_protocol_embed.h
diff --git a/platform/ext/target/arm/rss/rss_comms/rss_comms_protocol_pointer_access.c b/platform/ext/target/arm/rss/common/rss_comms/rss_comms_protocol_pointer_access.c
similarity index 100%
rename from platform/ext/target/arm/rss/rss_comms/rss_comms_protocol_pointer_access.c
rename to platform/ext/target/arm/rss/common/rss_comms/rss_comms_protocol_pointer_access.c
diff --git a/platform/ext/target/arm/rss/rss_comms/rss_comms_protocol_pointer_access.h b/platform/ext/target/arm/rss/common/rss_comms/rss_comms_protocol_pointer_access.h
similarity index 100%
rename from platform/ext/target/arm/rss/rss_comms/rss_comms_protocol_pointer_access.h
rename to platform/ext/target/arm/rss/common/rss_comms/rss_comms_protocol_pointer_access.h
diff --git a/platform/ext/target/arm/rss/rss_comms/rss_comms_queue.c b/platform/ext/target/arm/rss/common/rss_comms/rss_comms_queue.c
similarity index 100%
rename from platform/ext/target/arm/rss/rss_comms/rss_comms_queue.c
rename to platform/ext/target/arm/rss/common/rss_comms/rss_comms_queue.c
diff --git a/platform/ext/target/arm/rss/rss_comms/rss_comms_queue.h b/platform/ext/target/arm/rss/common/rss_comms/rss_comms_queue.h
similarity index 100%
rename from platform/ext/target/arm/rss/rss_comms/rss_comms_queue.h
rename to platform/ext/target/arm/rss/common/rss_comms/rss_comms_queue.h
diff --git a/platform/ext/target/arm/rss/services/src/tfm_platform_system.c b/platform/ext/target/arm/rss/common/services/src/tfm_platform_system.c
similarity index 100%
rename from platform/ext/target/arm/rss/services/src/tfm_platform_system.c
rename to platform/ext/target/arm/rss/common/services/src/tfm_platform_system.c
diff --git a/platform/ext/target/arm/rss/target_cfg.c b/platform/ext/target/arm/rss/common/target_cfg.c
similarity index 100%
rename from platform/ext/target/arm/rss/target_cfg.c
rename to platform/ext/target/arm/rss/common/target_cfg.c
diff --git a/platform/ext/target/arm/rss/target_cfg.h b/platform/ext/target/arm/rss/common/target_cfg.h
similarity index 100%
rename from platform/ext/target/arm/rss/target_cfg.h
rename to platform/ext/target/arm/rss/common/target_cfg.h
diff --git a/platform/ext/target/arm/rss/tfm_builtin_key_ids.h b/platform/ext/target/arm/rss/common/tfm_builtin_key_ids.h
similarity index 100%
rename from platform/ext/target/arm/rss/tfm_builtin_key_ids.h
rename to platform/ext/target/arm/rss/common/tfm_builtin_key_ids.h
diff --git a/platform/ext/target/arm/rss/tfm_hal_isolation.c b/platform/ext/target/arm/rss/common/tfm_hal_isolation.c
similarity index 100%
rename from platform/ext/target/arm/rss/tfm_hal_isolation.c
rename to platform/ext/target/arm/rss/common/tfm_hal_isolation.c
diff --git a/platform/ext/target/arm/rss/tfm_hal_multi_core.c b/platform/ext/target/arm/rss/common/tfm_hal_multi_core.c
similarity index 100%
rename from platform/ext/target/arm/rss/tfm_hal_multi_core.c
rename to platform/ext/target/arm/rss/common/tfm_hal_multi_core.c
diff --git a/platform/ext/target/arm/rss/tfm_hal_platform.c b/platform/ext/target/arm/rss/common/tfm_hal_platform.c
similarity index 100%
rename from platform/ext/target/arm/rss/tfm_hal_platform.c
rename to platform/ext/target/arm/rss/common/tfm_hal_platform.c
diff --git a/platform/ext/target/arm/rss/tfm_hal_platform_reset.c b/platform/ext/target/arm/rss/common/tfm_hal_platform_reset.c
similarity index 100%
rename from platform/ext/target/arm/rss/tfm_hal_platform_reset.c
rename to platform/ext/target/arm/rss/common/tfm_hal_platform_reset.c
diff --git a/platform/ext/target/arm/rss/tfm_interrupts.c b/platform/ext/target/arm/rss/common/tfm_interrupts.c
similarity index 100%
rename from platform/ext/target/arm/rss/tfm_interrupts.c
rename to platform/ext/target/arm/rss/common/tfm_interrupts.c
diff --git a/platform/ext/target/arm/rss/tfm_peripherals_def.c b/platform/ext/target/arm/rss/common/tfm_peripherals_def.c
similarity index 100%
rename from platform/ext/target/arm/rss/tfm_peripherals_def.c
rename to platform/ext/target/arm/rss/common/tfm_peripherals_def.c
diff --git a/platform/ext/target/arm/rss/tfm_peripherals_def.h b/platform/ext/target/arm/rss/common/tfm_peripherals_def.h
similarity index 100%
rename from platform/ext/target/arm/rss/tfm_peripherals_def.h
rename to platform/ext/target/arm/rss/common/tfm_peripherals_def.h
diff --git a/platform/ext/target/arm/rss/tc/CMakeLists.txt b/platform/ext/target/arm/rss/tc/CMakeLists.txt
new file mode 100644
index 0000000..5244436
--- /dev/null
+++ b/platform/ext/target/arm/rss/tc/CMakeLists.txt
@@ -0,0 +1,26 @@
+#-------------------------------------------------------------------------------
+# Copyright (c) 2022, Arm Limited. All rights reserved.
+#
+# SPDX-License-Identifier: BSD-3-Clause
+#
+#-------------------------------------------------------------------------------
+
+cmake_policy(SET CMP0076 NEW)
+set(CMAKE_CURRENT_SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR})
+
+add_subdirectory(${CMAKE_CURRENT_LIST_DIR}/../common common)
+
+#========================= Platform region defs ===============================#
+
+target_include_directories(platform_region_defs
+    INTERFACE
+        .
+)
+
+#========================= Platform BL2 =======================================#
+
+target_sources(platform_bl2
+    PRIVATE
+        bl2/boot_hal_bl2.c
+        bl2/flash_map_bl2.c
+)
diff --git a/platform/ext/target/arm/rss/bl2/boot_hal_bl2.c b/platform/ext/target/arm/rss/tc/bl2/boot_hal_bl2.c
similarity index 100%
rename from platform/ext/target/arm/rss/bl2/boot_hal_bl2.c
rename to platform/ext/target/arm/rss/tc/bl2/boot_hal_bl2.c
diff --git a/platform/ext/target/arm/rss/bl2/flash_map_bl2.c b/platform/ext/target/arm/rss/tc/bl2/flash_map_bl2.c
similarity index 100%
rename from platform/ext/target/arm/rss/bl2/flash_map_bl2.c
rename to platform/ext/target/arm/rss/tc/bl2/flash_map_bl2.c
diff --git a/platform/ext/target/arm/rss/tc/config.cmake b/platform/ext/target/arm/rss/tc/config.cmake
new file mode 100644
index 0000000..f3e8b6e
--- /dev/null
+++ b/platform/ext/target/arm/rss/tc/config.cmake
@@ -0,0 +1,9 @@
+#-------------------------------------------------------------------------------
+# Copyright (c) 2022, Arm Limited. All rights reserved.
+#
+# SPDX-License-Identifier: BSD-3-Clause
+#
+#-------------------------------------------------------------------------------
+
+# Once all options are set, set common options as fallback
+include(${CMAKE_CURRENT_LIST_DIR}/../common/config.cmake)
diff --git a/platform/ext/target/arm/rss/partition/host_base_address.h b/platform/ext/target/arm/rss/tc/host_base_address.h
similarity index 100%
rename from platform/ext/target/arm/rss/partition/host_base_address.h
rename to platform/ext/target/arm/rss/tc/host_base_address.h
diff --git a/platform/ext/target/arm/rss/tc/preload.cmake b/platform/ext/target/arm/rss/tc/preload.cmake
new file mode 100644
index 0000000..8a944b0
--- /dev/null
+++ b/platform/ext/target/arm/rss/tc/preload.cmake
@@ -0,0 +1,9 @@
+#-------------------------------------------------------------------------------
+# Copyright (c) 2022, Arm Limited. All rights reserved.
+#
+# SPDX-License-Identifier: BSD-3-Clause
+#
+#-------------------------------------------------------------------------------
+
+# Use common preload.cmake
+include(${CMAKE_CURRENT_LIST_DIR}/../common/preload.cmake)